To avoid the need to rebuild your pipeline, have you tried allowing both?
pco.traversableGraphFlags = OPTIX_TRAVERSABLE_GRAPH_FLAG_ALLOW_SINGLE_GAS | OPTIX_TRAVERSABLE_GRAPH_FLAG_ALLOW_SINGLE_LEVEL_INSTANCING;
It is intended behavior to need to specify which use cases you allow separately, the wording wasn’t meant to suggest that single gas is a subset of single level instancing. They need to be enabled separately. But they can both be enabled at the same time, if you want to support both in the same pipeline.
Is there any guidance anywhere on how to run the samples without installing Optix/CUDA toolkit?
You will only need the OptiX SDK and CUDA toolkit to compile OptiX programs. To run them on a different machine, the only requirement is that the machine has the required driver. You don’t need either the OptiX SDK or the CUDA toolkit to run an OptiX program – unless you are using nvcc or nvrtc to compile your shader programs at run time. To avoid that, you can configure your build process to pre-compile your OptiX programs, and bundle the PTX with your application before distributing it to non-dev machines.
–
David.