userSam Pavloviccancel

2,009 Commits over 1,581 Days - 0.05cph!

Today
multi-res cubemap test scene
Today
Cubemapper can accept multiple resolutions Use a single scratch texture for cubemapper staging texture and use rects to copy to/from
Today
Update area lights scene
Today
Hammer area lights Capsule desc for lightmapper takes half length Baked lighting for area lights + some falloff, LTC was taking reverse units compared to previous implementation Update shaders Remove point light size and adjust area light hammer values
Today
Logic for light size was swizzled, correcting it
Yesterday
Fix line light being darkened and warnings update shaders Directional lights was using the logic to null transform directions, putting it back
Yesterday
Gizmos for capsule light https://files.facepunch.com/sampavlovic/1b2611b1/RJex7WOFyE.png Line Renderer Light subcomponent https://files.facepunch.com/sampavlovic/1b2611b1/b20gTMwYSi.png
Yesterday
Replace fuckload of if statement from LTC::ClipQuadToHorizon with a lookup table, fast analytic line/capsule light implementation Pass light rotations to point lightbinned lights Cleanup LTC
4 Days Ago
Clean up fb copy logic Don't do threaded fullsorting if we have a framebuffer copy, we want to capture the first copy when the object is ready to draw and there's no good way for us to do synchronization from these threads before they're joined If we want multiple fb copies per layer, don't try to batch primitives, draw themindividually https://files.facepunch.com/sampavlovic/1b2511b1/5lQrZuR0X3.png
4 Days Ago
Test sorting with rough glass too https://files.facepunch.com/sampavlovic/1b2411b1/CK6yyKAShR.png Remove bloom2 since it's on master
4 Days Ago
Do a fbcopy when needed when we issue the drawcall instead of start of layer https://files.facepunch.com/sampavlovic/1b2411b1/TelPfAoEb1.png Fix wrong blending modes being set on glass wtf
4 Days Ago
Fix goback
7 Days Ago
Readd disable backface culling
7 Days Ago
Remove exposure bias entirely from colorgrading, uses exposure compensation value from ToneMapLinear instead
7 Days Ago
Make shared postprocess not write to depth; we corrected a behavior that postprocess was using wrong depth buffer ( things like DoF are meant to use it even on PP layer ), but this caused some user PP effects to only be written to skybox when correcting it
7 Days Ago
Do autoexposure before we do postprocessing and use HDR color for it, adjust rate for HDR compensation, adjust autoexposure adaptation scale, fixes autoexposure wobbliness & gives a much better range to it Every tonemap type has exposure bias Remove bullshit RenderState initialization, we get these from the renderer already Clear alpha if we're rendering directly to screen, same behavior as before native postprocess removal Remove Exposure Bias from tonemapper, this doesn't make much sense since it's tied to only HableFilmic and does the same thing as ExposureCompensation
9 Days Ago
Fix GrabFrameTexture sending fixed, wrong number of mipmap levels, fixes validation error
9 Days Ago
Remove Native Postprocessing Squashed commit of the following: commit 477246d2ae28cf22d43eb62f99698bee6cec99c6 Author: Sam Pavlovic <sam@sampavlovic.com> Date: Tue Mar 18 00:08:02 2025 -0300 [pick] Bind all mips for QuarterResEffectsBloomInputTexture, fix bug with lighting on bloom layer commit d8b713b705c54e861056bc6998ee6a92bec82a11 Author: Sam Pavlovic <sam@sampavlovic.com> Date: Mon Mar 17 23:59:49 2025 -0300 Explicit clear flags for ResolveHDRToFinalSDR commit bd47d1cf188196ada6a28019ca50a77d764f2629 Author: Sam Pavlovic <sam@sampavlovic.com> Date: Mon Mar 17 23:44:21 2025 -0300 Remove postprocess methods from toolscene commit 7c543731baadea6be40054d9b930e439de700b28 Author: Sam Pavlovic <sam@sampavlovic.com> Date: Mon Mar 3 13:35:58 2025 -0300 Remove deprecated gaussian bloom blur material commit 6d727c4e7ad5cb2ac00c59ba36b75ddfcfb95409 Author: Sam Pavlovic <sam@sampavlovic.com> Date: Sat Mar 1 11:43:41 2025 -0300 Add Tonemap and VOlumetricFogManifest in RenderingPipeline commit dd050aeb240d66e0d9abef0600145a1a0e5b7f72 Author: Sam Pavlovic <sam@sampavlovic.com> Date: Fri Feb 28 11:26:24 2025 -0300 Resolve to SDR in correct color space commit ecaaf6c6c985bf8b4e524a616b29e8b9fb71f6d8 Author: Sam Pavlovic <sam@sampavlovic.com> Date: Tue Feb 25 23:07:12 2025 -0300 Removed unused stuff from pipeline commit 85576d476f52f5a282ebec85134708760fce5fa9 Author: Sam Pavlovic <sam@sampavlovic.com> Date: Tue Feb 25 23:02:06 2025 -0300 Remove msaa_resolve tonemap_resolve too, not used commit 39e1de4d2b060dfbced2870c0ea9919b2e62cf0a Author: Sam Pavlovic <sam@sampavlovic.com> Date: Tue Feb 25 22:57:59 2025 -0300 Remove Valve's post_process and gaussian blur shader commit 55ad9e65d8ec43ae3dc9be071004fe5cff3d19f0 Author: Sam Pavlovic <sam@sampavlovic.com> Date: Tue Feb 25 22:36:01 2025 -0300 Remove all mentions of stage1/stage2, copy HDR intermediary texture back to SDR if formats are different commit 36bc46cfb53d8e649d856240b2c888c21a90bc2d Author: Sam Pavlovic <sam@sampavlovic.com> Date: Tue Feb 25 22:13:16 2025 -0300 Get rid of native PostProcessSystem entirely, current components need reimplementation now commit 22707f8ac9566878e659637624e31d733ff3ebc6 Author: Sam Pavlovic <sam@sampavlovic.com> Date: Tue Feb 25 21:42:52 2025 -0300 Start removing PostProcessingSystem commit 379b55356523496911969018d581b273f1d799d8 Author: Sam Pavlovic <sam@sampavlovic.com> Date: Tue Feb 25 21:30:25 2025 -0300 Remove RenderingPipelinePostprocess commit 11f6d48c4a584340faab8640924d8f6e3242610b Author: Sam Pavlovic <sam@sampavlovic.com> Date: Tue Feb 25 21:28:03 2025 -0300 Remove stage2 rts from camerarenderer, pointless now, remove parts of postprocess pipeline from it commit 176cedbfd96dec157725fe76662e6bb93cccd7ff Author: Sam Pavlovic <sam@sampavlovic.com> Date: Tue Feb 25 14:23:16 2025 -0300 Remove native postprocessing from renderpipeline UI Overlay comes before AfterUI
9 Days Ago
This should be proper uav barriers for native mipmapgen, fixes another validation error Bloom2 Upgrader for bloom threshold Some RTs do need to be initialized with clear when running from managed code, investigating Downsampler ignores negative values
9 Days Ago
Add -vulkan_validation_error_exit_failure to quit the game with a non-zero error code when a vulkan validation fails for CI
9 Days Ago
ClearUnorderedAccessViewUint handles depth textures properly, fixes validation error when clearing depth textures Don't clear initialize texture if this is a rendertarget, scenesystem already handles it Use RGBA1010102 instead of RGBA8888 for bloom rt, same storage size
11 Days Ago
Bloom2
11 Days Ago
Bind all mips for QuarterResEffectsBloomInputTexture, fix bug with lighting on bloom layer
11 Days Ago
Remove postprocess methods from toolscene Explicit clear flags for ResolveHDRToFinalSDR [pick] Bind all mips for QuarterResEffectsBloomInputTexture, fix bug with lighting on bloom layer
11 Days Ago
👻 Bloom layer 👻 in Bloom2 https://files.facepunch.com/sampavlovic/1b1711b1/i4f9f6CpGL.png
11 Days Ago
Remove native postprocessing from renderpipeline Remove stage2 rts from camerarenderer, pointless now, remove parts of postprocess pipeline from it Remove RenderingPipelinePostprocess Start removing PostProcessingSystem Get rid of native PostProcessSystem entirely, current components need reimplementation now Remove all mentions of stage1/stage2, copy HDR intermediary texture back to SDR if formats are different Remove Valve's post_process and gaussian blur shader Remove msaa_resolve tonemap_resolve too, not used Removed unused stuff from pipeline Resolve to SDR in correct color space Add Tonemap and VOlumetricFogManifest in RenderingPipeline Remove deprecated gaussian bloom blur material
11 Days Ago
DistanceFieldGPU PoC
11 Days Ago
Bloom layer from managed SetGlobal for all command list methods Use ToColorHandle in DepthNormalPrepassLayer Gaussian downsample this bloom layer
11 Days Ago
Use explicit SampleLevel with Mip 0 for LTC lookup, fixes sampling on vertex shaders
14 Days Ago
Little more adjustments to area lights scene
14 Days Ago
Use generated gradients for area lights cookies, good example for texture generators too, looks way better for smoothing things out https://files.facepunch.com/sampavlovic/1b1511b1/UUFm7KN04h.png
14 Days Ago
Use normal to calculate normal direction of capsule light, makes it non-bendy
14 Days Ago
Update area lights scene and test sphere and capsule lights
14 Days Ago
Capsule and Sphere lights Staging https://files.facepunch.com/sampavlovic/1b1411b1/KSdcCVtuz8.png
15 Days Ago
Rectangle Lights (staging) https://files.facepunch.com/sampavlovic/1b1311b1/eSJokK8WWN.png
15 Days Ago
Arealights2 Staging Update shaders
15 Days Ago
Clean up, get API ready, use light shape rect
17 Days Ago
Iterate LTC https://files.facepunch.com/sampavlovic/1b1111b1/7jNhtlWwWu.png
18 Days Ago
Rename legacy tonemapper to linear, upgrade existing ones using legacy to HableFilmic
18 Days Ago
LTC Area Lights experiment Iterate area lights https://files.facepunch.com/sampavlovic/1b1111b1/sbox-dev_hPxsPa4Lmq.mp4
19 Days Ago
Bloom adjustments, use biquadratic for smoother lobe, add bloom test scene https://files.facepunch.com/sampavlovic/1b0911b1/fqAchPQkKt.png
19 Days Ago
Use linear tonemapping curve instead of hable if none of our managed ones are applied, same behavior we'll have on IPostProcessSystem removal
20 Days Ago
Don't do atmospherics on toolsvis wtf Make sure LPVs and lightmaps are resident with highest priority for bindless rendering, same behavior as valve's doing, should solve the texture corruption in hammer maps
21 Days Ago
Ensure depth fast path is using same material similarity for batching, should fix hammer crashes, re-enable depth fast path for prepass
21 Days Ago
Temp revert depth pass optimizations for depthnormal layers to fix hammer crash, looking into it
22 Days Ago
Flag DepthNormal prepass as a depth pass ( scenesystem optimization ) but don't override it's material since we output to color
22 Days Ago
We're putting fullsort on small prepass which isn't what we want, should be only on large prepass
22 Days Ago
Bring back two-pass depth prepass with big/small sorting
23 Days Ago
Iterate from Bloom2 from SceneStaging
23 Days Ago
Can't always imply pView->GetMainViewport() matches swapchain, make it calculate size of swapchain for passing to managed pipeline