Data visualisation and ray tracing in Python based on OptiX 7.7 framework.
Work distribution has moved to a camera property. It is now possible to setup cameras with different modes and switch easyli. Work distribution is now based on relative or absolute noise values. See this example.
Noise-balanced sampling is quite a nice feature. It took some more time to encode it, so the release is out not waiting for more features. Sample code is in this notebook.
NVIDIA driver r530 or above required
Code was moved to the new OptiX SDK and progresively new features should be covered. Also GPU-GPU transfers are evolving, now including CuPy arrays. In this release we have:
and more news is coming, check Patreon ;)
This release introduces fast and simplified ways to copy data straight to device:
set texture data from pytorch tensors
texture filter modes enabled, default is trilinear, optionally nearest
set geometry data directly from numpy array or pytorch tensor (no host copy is made on the way)
synchronization method to update host copy with data from gpu: NpOptiX.sync_raw_data()
convenience method to get a copy of geometry data (more simple than PinnedBuffer, though returns a copy): NpOptiX.get_data()
NOTE: NVIDIA driver r520 or above is required for this release.
Updates are:
Code is updated to work with recently released pythonnet 3.0, which enables using Python 3.10 and more recent linux distros. There are also a few internal packages updated.
Fix bug causing errors when geometry types where changing after ray tracing started.