v0.7.0
Changes since last release
Updates to synchronize with the latest changes in the v1.0 ANARI Specification
- Frame channels have their own individually associated extensions
- Instances are subtyped for motion blur
scivis
volume was renamed totransferFunction1D
- Strides have been removed from shared arrays
- Devices and applications wanting to use sparse arrays should implement them as vendor extensions, but lack of existing usage made their inclusion in v1.0 premature
- New API calls for directly setting array parameters (
anariSetParameterArray[1,2,3]D()
) - Object queries are now done primarily using
ANARIDevice
instead ofANARILibrary
, as it is possible to create devices without going through the standard library loading mechanism
Other SDK updates
- Major additions to
helide
, demonstrating many more ANARI extensions - New C++ class-based method for specifying
ANARILibrary
implementations.- See
helide
orsink
devices as an example of how to adapt to the new way of implementing libraries
- See
- Many CTS updates to improve API test coverage
anari_utilities
has been removed in favor of usinghelium
- Added new tutorials and updated existing ones to add clarity of concepts each one introduces to users
- New version of
anariViewer
to more easily showcase test scenes and other ANARI concepts- The components to create viewers like
anariViewer
are installable as an experimental component, see theanari_viewer
README for more details
- The components to create viewers like
- The
debug
device no longer requires custom debug objects to be created by devices, all debugging is done via the normal device/object queries - New experimental
remote
device implementation- This implements a server/client model of forwarding ANARI calls to a remote machine, see the device's README for details
- External dependencies downloaded by CMake are consolidated under the source tree, making builds without an internet connection possible
- Additional source archives will be created for each release which contain all downloaded dependencies
What's Changed
- Various maintenance commits by @progschj in #85
- helium + helide fixes by @jeffamstutz in #86
- nvcc compile fixes + regen CTS by @jeffamstutz in #87
- fix C tutorial by @jeffamstutz in #88
- Fix channel names in debug tracer and add cylinder scene by @progschj in #89
- fix warnings, fix incorrect static_assert() in AnariAny::getObject() by @jeffamstutz in #90
- Add conversion function to type_utility by @progschj in #91
- Fix AnariAny dereferencing ANARI_VOID_POINTER by @progschj in #93
- Add PBR material by @progschj in #92
- Various maintenance commits by @progschj in #94
- Helide bug fix + helium getParam alternative by @jeffamstutz in #95
- Prevent apple builds from attempting to use GLES/EGL in the viewer by @progschj in #99
- Add new camera and renderer features to json and debug device by @progschj in #97
- Helide: initial volume rendering support by @jeffamstutz in #100
- Fix windows build by @progschj in #101
- Helide updates by @jeffamstutz in #104
- Add experimental dir and experimental volume sample rate feature by @progschj in #103
- Viewer updates by @jeffamstutz in #105
- encapsulate debug object and info query generation into cmake functions by @jeffamstutz in #107
- Fix array mapping pointer name in traces by @progschj in #106
- viewer revamp by @jeffamstutz in #109
- Fix when building without examples by @kvankooten in #110
- support ANARI_STRING_LIST for viewer UI by @jeffamstutz in #111
- Add dummy conversion functions for non numeric types by @progschj in #112
- viewer tweaks by @jeffamstutz in #113
- Add spot lights to viewer ui by @progschj in #114
- Add "use" info to queries and regenerate by @progschj in #115
- Separate out viewer components into standalone library by @jeffamstutz in #116
- CMake fixes by @jeffamstutz in #117
- Implement various samplers to helide by @jeffamstutz in #119
- Fix API coverage + occasional crashes during async frames by @jeffamstutz in #121
- Add device params and readme by @szellmann in #122
- Implement (un)mapArray for remote device by @szellmann in #123
- helide: add device option to permit rendering surfaces with invalid materials by @jeffamstutz in #125
- various breaking SDK updates from the spec by @progschj in #126
- Fix swapped parameters in anariTutorial.c by @progschj in #127
- Additional post api update maintenance by @progschj in #128
- misc. cleanups by @jeffamstutz in #129
- Only use compression if this is supported by server and client by @szellmann in #131
- Adding environment variables for remote device's server.hostname and server.port by @szellmann in #130
- viewer improvements by @jeffamstutz in #132
- Implement mapParameterArrayN() functions by @szellmann in #133
- Some smaller usability and compile fixes to the remote server app by @szellmann in #134
- implement anariUnsetAllParameters by @jeffamstutz in #135
- Allow writing zero-length array through remote pass-through device by @szellmann in #136
- CTS phase 2 by @UX3D-haertl in #118
- implement in/out offsets for samplers, add opacityHeatmap render method by @jeffamstutz in #137
- convert to using class-based approach to implementing libraries by @jeffamstutz in #138
- Release maintenance by @jeffamstutz in #139
- [docs] Updated
anari_viewer::README.md
- added mention ofDear ImGUi
by @inobelar in #143 - Release SDK maintenance by @progschj in #141
- updates for release 0.7.0 by @jeffamstutz in #146
New Contributors
Full Changelog: v0.3.0...v0.7.0