You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Improved Binary BVH builder by ~15%
Improved CWBVH builder by ~20%
Improved light BVH builder by ~40%
Improved misc BVH conversion perf
Reduced peak memory use of CWBVH
Improved quality of sky adding to radcache
Small fix to restir under very specific conditions with mesh normals
Small performance improvement to BVH refitting
Updated ReadMe
@@ -106,7 +106,7 @@ for bringing bindless textures to unity!
106
106
<li>The green/red rectangle shows when the acceleration structure is done building, and thus ready to render, red means that its not done, and green means its done building, a ding will sound when it completes if it takes longer than 15 seconds(Turn on Truetrace Settings -> Functionality Settings</li>
107
107
<li>Objects can be added and removed at will simply by toggling the associated GameObject with a ParentObject script on/off in the hierarchy(clicking on parent objects with complex objects for children will lag), but they will take time to appear as the acceleration structure needs to be rebuilt for them</li>
108
108
<li>Emissive meshes need to be have a non-zero emissive value when they are built or rebuilt to work with NEE, but after that can have their emissiveness changed at will</li>
109
-
<li>To set up PBR with the DEFAULT material, all textures go into their proper names, but Roughness goes into the Occlusion texture(This can be changed in the MaterialPairing menu)</li>
109
+
<li>To set up PBR with the DEFAULT BIRP material, all textures go into their proper names, but Roughness goes into the Occlusion texture(This can be changed in the MaterialPairing menu)</li>
110
110
<li>If you are using blendshapes to change geometry of a skinned mesh, you may need to go to the import settings of it(in the inspector), turn off Legacy Blendshape Normals, and make sure all normals are imported, not calculated, otherwise the normals for blendshapes might be wrong</li>
111
111
<li>If you use HDRIs, or CubeMaps for the skybox, you need to format as the texture to a Texture2D in the inspector of the image, unity will convert it automatically, then put it in the slot in "Scene Settings" in the TrueTrace settings menu</li>
112
112
</ul>
@@ -125,23 +125,28 @@ for bringing bindless textures to unity!
125
125
126
126
## Linking Shader Textures to TrueTrace
127
127
<ul>
128
+
<li>You only need to do this once per SHADER, not once per material. Unconfigured shaders will just appear white in truetrace</li>
128
129
<li>In the PathTracingSettings, click the tab called "Material Pair Options"</li>
129
130
<li>Drag any material that has the shader you want to pair into the material slot that appears</li>
130
-
<li>From here, you will see 4 buttons, click those to add the input type and connect it to the output tab. Do this with the default material for an example</li>
131
+
<li>From here, you will see 3 buttons, click those to add the input type and connect it to the output tab. Do this with the any material using the default shader for an example</li>
131
132
<li>Once this is done, click "Apply Material Links" and rebuild the BVH in the "Main Options" tab to update the objects in the scene</li>
132
133
</ul>
133
134
134
135
## Functionality Settings Contents
135
136
<ul>
137
+
<li>NOTE FIRST: MOST OF THESE IN THIS TABLE NOW HAVE TOOLTIPS THAT APPEAR IF YOU HOVER OVER THEM!</li>
136
138
<li>Enable RT Cores - (DX12 Only, REQUIRES UNITY 2023 OR HIGHER)Enables Hardware RT for cards that support it.</li>
137
-
<li>Disable Bindless Textures - DX12 Only, Disables bindless texturing, and uses the atlas fallback(Limits resolution).</li>
139
+
<li>Disable Bindless Textures - DX11(/vulkan/metal) compatability, Disables bindless texturing, and uses the atlas fallback(Limits resolution).</li>
138
140
<li>Use Old Light BVH Instead of Gaussian Tree - Disables the Gaussian Tree for higher performance but worse light sampling on metallics.</li>
139
-
<li>Use DX11 - Disables DX12 only toggles, but allows truetrace to run in DX11.</li>
141
+
<li>Use DX11 - Disables DX12 only toggles, but allows truetrace to run in DX11(/vulkan/metal).</li>
140
142
<li>Enable OIDN - (DX12 Only) Adds the OIDN denoiser to the Denoiser list in "Main Options"</li>
141
143
<li>FULLY Disable Radiance Cache - Will free the memory usually used by the Radiance Cache</li>
142
144
<li>Remove Rasterization Requirement - Truetrace stops using rasterization for anything(other than upscaling with TAAU), so you can turn off rasterization rendering in your cameras for extra performance</li>
143
145
<li>Enable Emissive Texture Aware Light BVH - Allows for smarter/better sampling of emissive meshes by considering their emissive masks/textures; Can use lots of RAM.</li>
144
-
<li>Use Light BVH - Toggles the use of EITHER the Light BVH or Gaussian Tree on/off; uses the RIS count of NEE if off. Turn off for maximum speed.</li>
146
+
<li>Enable Verbose Logging - Truetrace will yell more information into the console.</li>
147
+
<li>Fade Mapping - Not super compatable with realtime denoisers, but allows for surfaces with variable transparency, based on alpha texture.</li>
148
+
<li>Stained Glass - Whether or not to color shadow rays that pass through colored glass, dictated by material parameters: Thin, Albedo, Scatter Distance.</li>
149
+
<li>Use Light BVH - Toggles the use of EITHER the Light BVH or Gaussian Tree on/off; uses the RIS count of NEE if off. Turn off for maximum speed, but poor emissive mesh sampling quality.</li>
145
150
<li>Quick Radcache Toggle - Toggles the radcache on/off. Useful for comparing to ground truth pathtracing.</li>
<li>Use ReSTIR GI - Enables ReSTIR GI which is usually much higher quality(Works with Recur and SVGF denoisers)</li>
169
174
<ul>
170
175
<li>Do Sample Connection Validation - Confirms that two samples are mutually visable and throws it away if they are not</li>
171
-
<li>Update Rate - How many pixels per frame get re-traced to ensure they are still valid paths(7 or 33 is a good number to aim for here at 1080p)</li>]
172
-
<li>Enable Temporal - Enables the Temporal pass of ReSTIR GI(allows samples to travel across time</li>
176
+
<li>Enable Temporal - Enables the Temporal pass of ReSTIR GI(allows samples to travel across time, current useless)</li>
173
177
<li>Temporal M Cap - How long a sample may live for, lower means lighting updates faster(until 0 which is the opposite) but more noise(recommended either 0 or around 12, but can be played with)</li>
174
178
<li>Enable Spatial - Enables the Spatial pass of ReSTIR GI(Allows pixels to choose to use the neighboring pixels sample instead)</li>
<li>Anti-Firefly Frame Interval - Anti-Firefly will run once every X frames, this is X</li>
182
186
</ul>
183
187
<li>RR Ignores Primary Hit - Allows for an extra bounce basically, makes it so that dark objects arent noisier, but at the cost of performance</li>
184
-
<li>Atmospheric Scatter Samples - Lower this to 1 if you keep crashing on entering play mode(controls how many atmospheric samples are precomputed)</li>
188
+
<li>Atmospheric Scatter Samples - controls how many multiscatter atmospheric samples are precomputed</li>
185
189
<li>Current Samples - Shows how many samples have currently been accumulated</li>
186
190
<li>Enable Tonemapping - Turns on tonemapping, and allows you to select a specific tonemapper</li>
0 commit comments