[VXGI] 4.18 Testing Subsurface Profile with Studio setup

hi guys some tests vxgi 4.18 branch. subsurface profile shader and studio setup.
what do u think?

GPU : GTX 970

try your own pc: just compare Frame rate . i got 9 fps all lights on at begining.
test package :…WNmq36R3bXIUB3

key mapping: - 1/2/3/4 toggle lights - 5 for toggle emissive cubes - r reload level - alt+f4 exit

this is quite beautiful Noc :smiley: im getting 14.8 fps with my 980ti.
iv been playing around with VXGI for a medium sized forest scene, results are very nice, nothing as good as this though. well done.

thx for trying. how about toggle lights? (press 5 or 1 / 2 / 3 / 4 ) are you still getting ~14 fps?

Here are some console commands you can try out in the demo (from this link NVIDIA VXGI Integration - Unreal Engine Forums):

I found that setting stacklevels to 1 and then changing range to 600 gave me a good base to go from. Reducing map size to 64 or 32 got me up to over 60fps on a 1080. Playable frame rates with a map size of 64 or 128 is definitely possible.

Console commands:
r.VXGI.MapSize 32/64/128/256
Changes the size of the voxels. Lower (meaning bigger voxels) is better, but increases leaking and inaccuracies. 256 is unusable in most GPUs today. Although Nvidia recommends 64 for better performance, you’re likely better of setting this to 32.

r.VXGI.Range 400
As it says, changes the range. This has a side effect however. If you increase this range, it also scales the voxel size, it tries to keep voxel count constant so that you don’t get bogged down by too many voxels.

r.VXGI.StackLevels 1/2/3/4/5
As mentioned by Blakbit in this post, this setting has large impact on performance. VXGI reduces voxel resolution for geometry farther than VXGI Anchor (by default attached to camera). Default setting has 5 levels of different voxel sizes. By reducing stacklevel count, you can increase (or decrease) performance. I recommend reading the linked post for more detailed info. Gist of it is you need to use this setting in-conjunction with mapsize and range settings to find a sweetspot that works for your scene.

r.VXGI.MultiBounceEnable 0/1
Enables multibouncing as the name suggests. According to Nvidia overview, it works by using previous frame’s irradiance map in the current frame. Nvidia overview here (requires github access) says disabling it increases voxelization performance.

r.VXGI.HighQualityEmittanceDownsamplingEnable 0/1
Mentioned in Daniel.Wenograd’s post here and the overview above.

r.VXGI.StoreEmittanceInHdrFormat 0/1
Mentioned in Daniel.Wenograd’s post here. This affects the multibounce. As he states few posts below, this is related to VRAM usage, more info here.

great! thx.

@Crinity thanks so much for the post. Unfortunately some of these settings do not seem to be available anymore in 4.21.