userSam Pavloviccancel
reposboxcancel

1,728 Commits over 1,491 Days - 0.05cph!

3 Months Ago
Partial backport of ISceneObjectDesc::OnSceneObjectVisibleInView Add lights to lightbinner through CLightObjectDesc::OnSceneObjectVisibleInView instead of LightBinnerStandard::AddLights
3 Months Ago
Update compiled shaders with relative cubemap luminance
3 Months Ago
Fog Fix (#1661) * Some lightbinner cleanup, allow it to be used directly without the complex system that scenesystem wants * VolumetricFogRenderer has it's own lightbinner outside of lightbinner pool, does lightbinning to fetch fog lights for the fog context only, fixes fog light settings not doing anything, deprecate LAYERFLAGS_NEEDS_FOG_CONTRIBUTING_LIGHTS since we don't need special code for that anymore * Share dynamic shadow atlas if we have more than one lightbinner per view ( for example, fog ), fix volume fog no shadows option, cleanup unused shit * Put fog mode in it's own category and add nice icons to them https://files.facepunch.com/sam/1b0611b1/zwd8qAJFu7.png * These convars don't do anything or are redundant, some notes for tiled rendering in the future * Remove deprecated VR stuff for volumetric fog on rendering pipeline, note for Alex that we can just reproject the frame for eye 2 for cheap volumetric fog rendering, any crumbs will be stripped more when I remove clipmaps * One lightbinner per volumetric fog rather than creating it every frame * Start removing fog clipmap rendering, there are better ways to do this and it's massive * Disable clipmaps on managed code, clean up shader code * Remove VR-specific frustum stuff from volumetric fog * Get rid of redundant data * Separate two passes cleanly, remove accumulation TAA, we'll do a proper big pants one * TAA stub * Fancy volumetric fog taa, move what was on integration step to previous pass, so this has pretty much the same cost and memory footprint as previously but much higher quality * Proper fog TAA with ping-ponging accumulation textures * Iterate fog denoising * Do soft TAA jitter and encode non-final texture to a softer color space so that TAA bbox is also softer * Final cleanup, fix fog density, fix obsolete error
3 Months Ago
Some lightbinner cleanup, allow it to be used directly without the complex system that scenesystem wants VolumetricFogRenderer has it's own lightbinner outside of lightbinner pool, does lightbinning to fetch fog lights for the fog context only, fixes fog light settings not doing anything, deprecate LAYERFLAGS_NEEDS_FOG_CONTRIBUTING_LIGHTS since we don't need special code for that anymore Share dynamic shadow atlas if we have more than one lightbinner per view ( for example, fog ), fix volume fog no shadows option, cleanup unused shit Put fog mode in it's own category and add nice icons to them https://files.facepunch.com/sam/1b0611b1/zwd8qAJFu7.png These convars don't do anything or are redundant, some notes for tiled rendering in the future Remove deprecated VR stuff for volumetric fog on rendering pipeline, note for Alex that we can just reproject the frame for eye 2 for cheap volumetric fog rendering, any crumbs will be stripped more when I remove clipmaps One lightbinner per volumetric fog rather than creating it every frame Start removing fog clipmap rendering, there are better ways to do this and it's massive Disable clipmaps on managed code, clean up shader code Remove VR-specific frustum stuff from volumetric fog Get rid of redundant data Separate two passes cleanly, remove accumulation TAA, we'll do a proper big pants one TAA stub Fancy volumetric fog taa, move what was on integration step to previous pass, so this has pretty much the same cost and memory footprint as previously but much higher quality Proper fog TAA with ping-ponging accumulation textures Iterate fog denoising Do soft TAA jitter and encode non-final texture to a softer color space so that TAA bbox is also softer Final cleanup, fix fog density, fix obsolete error
3 Months Ago
Do soft TAA jitter and encode non-final texture to a softer color space so that TAA bbox is also softer Final cleanup, fix fog density, fix obsolete error
4 Months Ago
Iterate fog denoising
4 Months Ago
Proper fog TAA with ping-ponging accumulation textures
4 Months Ago
Fancy volumetric fog taa, move what was on integration step to previous pass, so this has pretty much the same cost and memory footprint as previously but much higher quality
4 Months Ago
TAA stub
4 Months Ago
Separate two passes cleanly, remove accumulation TAA, we'll do a proper big pants one
4 Months Ago
Remove VR-specific frustum stuff from volumetric fog Get rid of redundant data
4 Months Ago
Disable clipmaps on managed code, clean up shader code
4 Months Ago
Remove deprecated VR stuff for volumetric fog on rendering pipeline, note for Alex that we can just reproject the frame for eye 2 for cheap volumetric fog rendering, any crumbs will be stripped more when I remove clipmaps One lightbinner per volumetric fog rather than creating it every frame Start removing fog clipmap rendering, there are better ways to do this and it's massive
4 Months Ago
Some lightbinner cleanup, allow it to be used directly without the complex system that scenesystem wants VolumetricFogRenderer has it's own lightbinner outside of lightbinner pool, does lightbinning to fetch fog lights for the fog context only, fixes fog light settings not doing anything, deprecate LAYERFLAGS_NEEDS_FOG_CONTRIBUTING_LIGHTS since we don't need special code for that anymore Share dynamic shadow atlas if we have more than one lightbinner per view ( for example, fog ), fix volume fog no shadows option, cleanup unused shit Put fog mode in it's own category and add nice icons to them https://files.facepunch.com/sam/1b0611b1/zwd8qAJFu7.png These convars don't do anything or are redundant, some notes for tiled rendering in the future
4 Months Ago
Fix Depth::GetLinear, be expressive about it for correctness before all, precompute these values later Start fixing up dof https://files.facepunch.com/sam/1b2211b1/ombChoX97P.png Iterate DoF Smooth fade DoF from composite shader Iterate dof, needs cleanup, almost perfect Wave intrinsics to do early out for far dof DoF2 Downsample with bias based on depth, cleanup https://files.facepunch.com/sam/1b0211b1/sbox-dev_rXaN2wxsmC.mp4 Front blur, tweaks Final tweaks, add depth gap for adding an area where u might want more focus https://files.facepunch.com/sam/1b0211b1/sbox-dev_VBIoPeaBWP.mp4 Depth Resolve writes to both channels correctly Final cleanups for dof2
4 Months Ago
Fix perfomance validation warning on depth_only shader, it never produces output from PS, any operations from ps for translucents are clip or discard, D_WRITE_DEPTH_MASKS is never used Strip D_WRITE_DEPTH_MASKS from the rest
4 Months Ago
Fix shadows not showing up on non-scenecamera views like Hammer
4 Months Ago
Allow for multi-bounce reflections on EnvmapProbe
4 Months Ago
Make sure all cubemaps are up to date when loading/unloading mapinstances, cubemaps placed on scene weren't getting updated
4 Months Ago
GPU Shadow Culling light list is stored on camera where it should belong rather than on lightbinner, a lightbinner can be shared across multiple views causing issues, this also guarantees proper lifetime of list since lightbinner pool is only flushed on shutdown https://files.facepunch.com/sam/1b0411b1/sbox-dev_Esvot2kDTb.mp4
4 Months Ago
Depth Resolve writes to both channels correctly Final cleanups for dof2
4 Months Ago
Final tweaks, add depth gap for adding an area where u might want more focus https://files.facepunch.com/sam/1b0211b1/sbox-dev_VBIoPeaBWP.mp4
4 Months Ago
Front blur, tweaks
4 Months Ago
DoF2 Downsample with bias based on depth, cleanup https://files.facepunch.com/sam/1b0211b1/sbox-dev_rXaN2wxsmC.mp4
4 Months Ago
Disable volumetric fog clipmaps by default, they're fucked right now with massive frame drops and they feel overengineered
4 Months Ago
Wave intrinsics to do early out for far dof
4 Months Ago
Smooth fade DoF from composite shader Iterate dof, needs cleanup, almost perfect
4 Months Ago
Fix Depth::GetLinear, be expressive about it for correctness before all, precompute these values later Start fixing up dof https://files.facepunch.com/sam/1b2211b1/ombChoX97P.png Iterate DoF
4 Months Ago
Internal AfterDepthPrepass hooks CSM doesn't suck anymore Texel snap cascade shadow map matrix so lights never shimmer when you're moving Cleanup Use the frustum from the previous shadow map to cull the current shadow map, m_pLightObject neverr used
4 Months Ago
Pass rotation to cubemapper so rotated envmap probes captures are rotated the correct way Fix Cubemap Brightness Normalization, uses prefiltered envmap instead of spherical harmonics, fixes overbrightened envmaps in dark areas, and increases overall contrast of envmaps Update transform for skybox envmap
4 Months Ago
Shadow maps were stripped out for testing, readded
4 Months Ago
Expose Screen Space Shadows as a parameter for Directional Light SSR uses our generic ScreenSpaceTrace methods 🙏
4 Months Ago
Correct curve for static_overlay custom fog blending for fog HDR values above 1.0f https://files.facepunch.com/sam/1b1611b1/pl0WF6eu5Q.png
4 Months Ago
Move albedo chart to bottom right corner, make it scale more aggresively to not take away screen space Add button to toggle albedo chart https://files.facepunch.com/sampavlovic/1b1611b1/CkUDe1JWMc.png
4 Months Ago
Compile shaders with SSR fixes
4 Months Ago
SampleLevel so the two shaders that use lighting.fxc on VS can read it proper, let's also start getting rid of these texture macros Complex Reflections as Devshader
4 Months Ago
Stub for shadow class, enumize lightflags Move pixel.raytrace.ssr.hlsl to ScreenSpaceTrace and make it a class, move crap from it to be all shared More adjustments for screenspace shadowing, fix valid hit test always returning true Iteration on screenspace shadows, make screenspace tracing work half res again Rebase fixes Fix screen trace depth function for reverse-z Multi-sampled shadow trace, apply free antialiasing using derivatives of dFdx and dFdy Dont need bend_sss anymore Use bayer directions rather than blue noise for screenspace shadows Use QuadRead to blur value acrosss waves, proper ordering for parameters of ScreenSpace::Trace https://files.facepunch.com/sam/1b1411b1/8ljWk6LsYF.png [Pick] Compile shaders with Vulkan 1.2 ( wave intrinsics support ) Microsoft/DirectXShaderCompiler/wiki/Wave-Intrinsics [Pick] Target Vulkan 1.1 instead, certain it won't be an issue unless you have drivers from 2016 3D Bayer Sequence, use perceptual penumbra so it always looks relatively soft and nice instead of aiming for just accuract
4 Months Ago
[Pick] Target Vulkan 1.1 instead, certain it won't be an issue unless you have drivers from 2016
4 Months Ago
Fix truncation warning on shadingmodel.hlsl Fix complex_reflections, remove any dependencies to valve code Use inline reflections for complex Composite SSR always, might create some artifacts but will be dealt with Detangle reflections api and document it Adjustments, fix normals on complex reflections
4 Months Ago
Update shaders
4 Months Ago
Use bayer directions rather than blue noise for screenspace shadows Use QuadRead to blur value acrosss waves, proper ordering for parameters of ScreenSpace::Trace https://files.facepunch.com/sam/1b1411b1/8ljWk6LsYF.png [Pick] Compile shaders with Vulkan 1.2 ( wave intrinsics support ) Microsoft/DirectXShaderCompiler/wiki/Wave-Intrinsics
4 Months Ago
Fix screen trace depth function for reverse-z Multi-sampled shadow trace, apply free antialiasing using derivatives of dFdx and dFdy Dont need bend_sss anymore
4 Months Ago
[Pick] Bind RenderAttributes.SetParent, this is a method to pass arguments around that doesn't involve overriding/copying, this fixes not being able to set render attributes properly in child cameras like editor viewport, needs wide testing but should be fine, also fix looking for parent attributes on the attribute chain used on the pipeline Remove SSAOEnabled, just needs a ref if DynamicAmbientOcclusionPP is initialized
4 Months Ago
Update shaders with AO on lighting pass
4 Months Ago
Check for SSAOEnabled
4 Months Ago
Stub for shadow class, enumize lightflags Move pixel.raytrace.ssr.hlsl to ScreenSpaceTrace and make it a class, move crap from it to be all shared More adjustments for screenspace shadowing, fix valid hit test always returning true Iteration on screenspace shadows, make screenspace tracing work half res again Rebase fixes
4 Months Ago
Internal HookAfterDepthPrepass Darken AO texture since we're compositing to ambient lighting properly now
4 Months Ago
[Pick] Add SceneCamera.InternalAttributes for things that should never be overriden [Pick] Add RenderAttributes.Remove [Pick] Child cameras in UpdateSceneCamera also gets parent camera attributes Remove renderhook hack on AmbientOcclusion, just pass attributes directly
4 Months Ago
Volumetric shader stub
4 Months Ago
Fuck any bridging code, let's handle VDB files all on managed, allow loading nvdb files too Iterate NanoVDB file handling and dependencies Use BaseFileSystem for reading NanoVDB files Parse NanoVDB files properly