in my OptiX7.6-based pathtracer (using the OptiX Apps architecture) I again got validation error OPTIX_EXCEPTION_CODE_TRAVERSAL_INVALID_HIT_SBT, but this time only on some materials, while most opaque and MDL materials work fine. Tested with separate settings on different launches.
To me it seems to be a problem somewhere in a volume material, but when I remove another material, the volume material at least does not cause the validation error.
I tried to increase MaxTraversalDepth (from 3 to 5) and pipeline_link_options.maxTraceDepth (from 3 to 5) without any success. In all cases I use 3 ray types: radiance, occlusion and scattering
The object uses in-built triangles, no motion-blur, no re-fitting, no cutout.
From the API Reference I found optixGetExceptionInvalidSbtOffset() and added it into the exception program but no output from there shows up. There is only one global “Exception program record”. Or do I need to add another exception program for the hit groups? I found no example wihtin the SDK.
I’ve seen SBT problem when using multiple GAS objects. - #2 by droettger and I use the index as described there:
sbt_idx=0 sbt_idx_occlusion=1 sbt_idx_scatter=2 sbt_idx=3 sbt_idx_occlusion=4 sbt_idx_scatter=5 sbt_idx=6 sbt_idx_occlusion=7 sbt_idx_scatter=8 sbt_idx=9 sbt_idx_occlusion=10 sbt_idx_scatter=11 count_hitgroup_records=12
while for test I even use pg_null for scattering. pg_null is built using optixProgramGroupCreate with all parameters zero.
In another (closed) case I got this validation error, when a pipeline setting related to curves was invalid. In the current test there are no curves; All objects are out of inbuilt-triangles.
OptiX 7.6.0 SDK
GTX 1050 2GB
Win10PRO 64bit (version 22H2; build 19045.2846)
device driver: 531.79
MDL SDK 2020.1.2
Windows SDK 10.0.19041.0