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
<pclass="media-caption">The clouds with tweakable parameters</p>
80
79
81
80
</div>
@@ -89,27 +88,16 @@ The 2nd pass raymarches through every slice of the noise texture and samples the
89
88
90
89
## Optimizations
91
90
92
-
After profiling I concluded that our project was memory bound and took a lot of time rendering objects that were not visible on screen.
93
-
94
-
### Implementation Details
95
-
96
-
I used ray marching through the froxel grid with the following optimizations:
97
-
98
-
-**Temporal reprojection**: Reduces noise by blending current and previous frames
99
-
-**Exponential depth distribution**: More detail near camera, better performance overall
100
-
-**Hardware interpolation**: Leveraging 3D texture sampling for smooth results
101
-
-**Adaptive step size**: Fewer samples in empty space
91
+
After profiling I concluded that our project was memory bound and took a lot of time rendering objects that were not visible on screen. To solve this I added frustum culling which allowed the forward pass to go from 2.30ms to 0.74ms. I also reduced the resolutions used for bloom and fog which led the fog renderpass go from 3.32ms to 0.93ms.
102
92
103
-
The shader performs 32 ray marching steps per pixel, with temporal accumulation bringing effective sample count much higher.
93
+
I will go more into detail on how I achieved this in my blog. (linked once it's online)
104
94
105
95
</div>
106
96
<divclass="project-media"markdown="1">
107
97
108
-

109
-
<pclass="media-caption">God rays streaming through trees in a forest environment</p>
110
98
111
-

0 commit comments