- The version 1.0 release marks long term API stability (until v2.0)
- Open VKL can now be built for ARM CPUs that support Neon
- Iterator API updates:
- Introducing interval and hit iterator contexts, which hold iterator-specific configuration (eliminates value selector objects)
- Interval and hit iteration is now supported on any volume attribute
- Interval iterators now include a
timeparameter - Interval iterators now support the
intervalResolutionHintparameter, replacingmaxIteratorDepthandelementaryCellIteration
- Supporting configurable background values; default is now
VKL_BACKGROUND_UNDEFINED(NaN) for all volume types vklGetValueRange()now supports all volume attributes- Added ISPC-side API bindings for
vklGetNumAttributes()andvklGetValueRange() - Structured regular volumes:
- Added support for tricubic filtering
- More accurate gradient computations respecting filter mode
- Hit iteration robustness improvements
- VDB volumes:
- Interval and hit iteration robustness improvements
- Corrected interval iterator
nominalDeltaTcomputation for non-normalized ray directions and non-uniform object-space grid spacings - Fixed bug which could cause incorrect value range computations for temporally varying volumes
- vklExamples additions demonstrating:
- Multi-attribute interval / hit iteration
- Configurable background values
- Temporally varying volumes
- Superbuild updates to latest versions of dependencies
- Now requiring minimum versions:
- Embree 3.13.1
- rkcommon 1.7.0
- ISPC 1.16.0