Skip to content

Commit 2ff8d9b

Browse files
committed
Merge branch 'Dev'
2 parents 85ab8ba + efd02a6 commit 2ff8d9b

File tree

4 files changed

+10
-23
lines changed

4 files changed

+10
-23
lines changed

README.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -156,25 +156,27 @@ for bringing bindless textures to unity!
156156
<li>FULLY Disable Radiance Cache - Will free the memory(RAM/VRAM) usually used by the Radiance Cache</li>
157157
<li>Use Rasterized Lighting For Direct - Experimental, only known to work in BIRP, Forces truetrace to only render indirect</li>
158158
<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>
159+
<li>Load TT Settings From Global File - Normally, each scene has its own TTSettings file, but activating this allows you to put any TTSettings file into the RayTracingMaster script(attached to the Scene gameobject), and it will be used instead.</li>
159160
<li>Enable Verbose Logging - Truetrace will yell more information into the console.</li>
160161
<li>Enable Triangle Splitting - Optimization for SWRT that splits triangles to improve tracing performance.</li>
161-
<li>Enable Strict Memory Reduction - Shrinks compute buffers when objects are removed, which reduces performance but saves VRAM.</li>
162+
<li>Enable Strict Memory Reduction - Shrinks compute buffers when objects are removed, which causes stuttering on object add/remove but saves VRAM.</li>
162163
<li>Save Multiple Maps On Screenshot - Any sort of image saved by truetrace will also generate images of the corrosponding material and mesh IDs.</li>
163-
<li>Enable Photon Mapping - Enables the experimental photon mapping pass for caustic generation. Materials will need to have their flag enabled to generate caustics.</li>
164+
<li>Enable Photon Mapped Caustics - Enables the photon mapping pass for caustic generation. Materials/RayTracingObject scripts(attached to each Mesh) will need to have their flag enabled to generate caustics.</li>
164165
<li>Remove TT Scripts During Save - Will delete all unmodified raytracingobject and parentobject scripts when the scene is saved, then add them back. This helps with version control.</li>
165166
<li>Fade Mapping - Not super compatable with realtime denoisers, but allows for surfaces with variable transparency, based on alpha texture.</li>
166167
<li>Stained Glass - Whether or not to color shadow rays that pass through colored glass, dictated by material parameters: Thin, Albedo, Scatter Distance.</li>
167168
<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>
168169
<li>Quick Radcache Toggle - Toggles the radcache on/off. Useful for comparing to ground truth pathtracing.</li>
169-
<li>Use Texture LOD - Samples LOD of textures based on bounce number, can improve performance.</li>
170-
<li>Double Buffer Light Tree - Enables double buffering of the light tree, allowing for stable moving emissive objects with ASVGF, but hurts performance with ASVGF.</li>
170+
<li>Use Texture LOD - Samples LOD of textures based on bounce number, can improve performance(DX12 only).</li>
171+
<li>Double Buffer Light Tree - Enables double buffering of the light tree, allowing for stable moving emissive objects with ASVGF, but slightly hurts performance with ASVGF.</li>
172+
<li>Use BSDF Lights - Allows naive sampling of emissive triangles using MIS. Turn off if your having some issues with fireflies to rely entirely on the light BVH.</li>
171173
</ul>
172174

173175

174176
## Editor Window Guide
175177
TrueTrace Options Description -
176178
<ul>
177-
<li>Build Aggregated BVH(Recommended to do any time you change objects in edit mode)- Allows you to pre-build objects BVH's before running so you dont have to wait every time you go into play mode for it to build.</li>
179+
<li>Build Aggregated BVH(Recommended to do any time you add/remove objects in edit mode)- Allows you to pre-build objects BVH's before running so you dont have to wait every time you go into play mode for it to build.</li>
178180
<li>Take Screenshot - Takes a screenshot to the path under "Functionality Settings" in the TrueTrace options</li>
179181
<li>Clear Parent Data - Clears the data stored in parent GameObjects, allowing you to actually click them without lagging</li>
180182
<li>Auto Assign Scripts - Assigns all required scripts to all objects under the Scene GameObject, best way to add objects</li>

TrueTrace.unitypackage

17.4 KB
Binary file not shown.

TrueTrace/GettingStarted.txt

Lines changed: 2 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@ For more in depth/full details, go to the Readme on the Truetrace Github(at leas
55
To get started:
66
1. After importing the unity package, for a new scene you want to open the PathTracer tab on the top bar, and click "Arrange Hierarchy"
77
2. After doing this, your scene should now be in the format required by the path tracer
8-
3. Now you can click "Build Aggregated BVH" to build the acceleration structure for all objects, and just wait for the "All Objects Built" to turn green before entering play mode
8+
3. Now you can click "Build Aggregated BVH" to build the acceleration structure for all objects, and just wait for the "Remaining Objects" to turn green before entering play mode(this can be ignored if wanted)
99
4. After that is done, you can just enter play mode and play as normal
1010

1111

1212
Adding new objects
1313
Automatic methods
14-
Global setup: Press "Auto Assign Scripts" in the TrueTrace settings menu.
14+
Global setup: Press "Auto Assign Scripts" in the TrueTrace settings menu -> Main Options.
1515
Local setup: Go to "Hierarchy Options" in the TrueTrace settings menu.
1616
Drag the root gameobject that you added to the "Selective Auto Assign Scripts" section.
1717
Click "Selective Auto Assign".
@@ -32,18 +32,3 @@ General Use/Notes
3232
The camera you want to render from, you attach the RenderHandler script to(if you have a camera tagged MainCamera, this will be done automatically)
3333

3434

35-
Changeable Defines:
36-
To access the in script settings, go to the "GlobalDefines.cginc" under the TrueTrace/Resources folder
37-
This will allow you to toggle some low level settings:
38-
1. AdvancedAlphaMapping - Enables or Disables the support of cutout objects(performance penalty)
39-
2. ExtraSampleValidation - Shoots an additional ray(2 instead of 1) in ReSTIR GI ray validation for sharper shadows
40-
3. IgnoreGlassShadow - Shadow Rays can pass through glass
41-
4. IgnoreGlassMain - Main Rays can pass through glass
42-
5. FadeMapping - Enables experimental Fade material type
43-
6. PointFiltering - Switch between point and linear filtering for albedo textures
44-
7. StainedGlassShadows - Shadow rays passing through glass will be tinted to the glass color
45-
8. IgnoreBackFacing - Culls backfacing triangles
46-
9. LBVH - Enable/Disable the light BVH
47-
10. AccurateEmissionTex - Turn on/off emission textures
48-
11. RadianceCache - Turn on/off the Radiance Cache
49-
12. UseTextureLOD - (Only works with Bindless)Enables Texture LOD"

TrueTrace/Resources/MainCompute/CommonData.cginc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -243,7 +243,7 @@ inline float2 AlignUV(float2 BaseUV, float4 TexScale, int2 TexDim2, float Rotati
243243
}
244244

245245

246-
#ifdef UseTextureLOD
246+
#if defined(UseTextureLOD) && !defined(DX11)
247247
#define BindlessLOD CurBounce
248248
#else
249249
#define BindlessLOD 0

0 commit comments

Comments
 (0)