NVIDIA GameWorks Integration

will only work with multiple indirect bounces (at least 2 bounces).

It should be pretty straightforward to do . Just need to revoxelize the scene again after the first bounce.
In my opengl vctgi engine, I have an initial voxelization pass, that runs only for the first frame, to inject some light into the scene (even for only one object is enough). Then a second voxelization pass which runs once every frame where I perform a cone tracing feedback loop (i.e. cone trace the initial 3d texture; add direct light; then overwrite the original values in the 3d texture) to get recursive bounces (unlimited). Then in the third pass, I cone trace the 3d texture to composite with all other deferred .

[edit] So I just discovered that you only need a single voxelization pass to get unlimited bounces. There are two cone tracing passes, one in the forward shading voxelization pass to sample the 3D texture and the second pass in deferred shading to sample the same 3D texture for outputting to the screen (which is already used for the single bounce implementation).

I believe I can do for vxgi in ue4 but I just need to figure out how to access the voxel storage (which I am assuming is a bunch of cascaded 3D textures) then write the cone tracing code in the voxelization shader. The problem is I think these textures are hidden in the GameWorks library and I can’t find a way to access them.