5 Commits

Author SHA1 Message Date
Sam Pavlovic
f3d860a340 Bloom 3 (#5384)
* Re-do Bloom based how Jimenez, SIGGRAPH 2014 did, remove gamma shit, biquadratic shit, add bloom tint

* Compile shaders

* Format

* Adjust bloom tests, these are no longer relevant

* Mark obsolete properties for Gamma and Filter in Bloom effect

* Blend with rgb only
2026-07-30 17:12:33 +00:00
Matt Stevens
c8e838d05d Revert "Depth of Field 3 (#5086)"
This reverts commit 27d012d833.
2026-06-24 10:07:19 +01:00
Sam Pavlovic
27d012d833 Depth of Field 3 (#5086)
* Depth of field rewrite with tile classification, indirect dispatches, remove focal range (bullshit)

* Clear Vertical/Diagonal DoF blurs across passes so we dont have artifacts from previous one across tile boundaries

* Dont waste more memory than we need for tiles

* Command list texture clears were being deferred to it's own context, do it on the same context immediately

* Do DoF after viewmodel & AfterViewmodel hook actually runs after viewmodel

* Since we precalculate the DoF max range per tile we dont really need this weird logic for optimization

* Fix shitty 1px line for dof when it intersects geometry
https://files.facepunch.com/sampavlovic/1b1411b1/sbox-dev_3p4zfSfTDx.mp4

* update shaders

* Readd focus range but make it almost as far as FarZ by default

* format

* Adjust tests for new behaviour for DoF, reset buffer data on command list
2026-06-24 05:41:22 +02:00
Antoine Pilote
842203fb27 GTAO optimization (#4979)
* gtao atrous optimisation  - cache texture taps into groupshare tile buffer. before: https://files.facepunch.com/antopilo/1b0111b1/ngfx-ui_HB5GFcF66Z.png  after: https://files.facepunch.com/antopilo/1b0111b1/ngfx-ui_AeqfjvzQSr.png

* make working edge texture A8 instead of R16F

* sample texture closer together to limit staling

* remove third pass of denoising

* depth chain is now R16F instead of R32

* add safety

* move early out

* make number of atrous pass configurable

* Remove temporal denoise from AO, our spatial denoiser already kicks ass

* Early out was fucking grouopread on Spatial Denoise & remove unused Working Edges

* Denoise Normal is invariant of coordinate system

* Denoise passes in quality profiles

Co-authored-by: Sam Pavlovic <sam@sampavlovic.com>
2026-06-17 06:17:06 -07:00
Garry Newman
d95169d8fa Unit Test Cleanup (#5064)
* Move all unit tests to Engine/Tests
* Fix Margin.EdgeSubtract
* Fix Capsule.Contains
* EnvironmentVariables.Remove if it's null
* Fixed ray trace never returning startedsolid
* Fix HistoryList.Navigate on empty list
* Fix GameObject.WorldPosition accepting NaNs
* Fix flex: initial expanding to the wrong grow/shrink
* Translation.TryConvert shouldn't throw on invalid enum strings
* Skip sound file tests on machines with no audio device
2026-06-12 13:23:50 +01:00