branchsbox/depthnormalcancel

18 Commits over 31 Days - 0.02cph!

16 Days Ago
Apply offset when sampling Prepass Normals https://files.facepunch.com/sampavlovic/1b0411b1/dfC5VELlYw.png
17 Days Ago
Pass screen size to managed texture we create for depthnormal gbuffer, dimensions must match the swapchain, which resized viewports don't match
17 Days Ago
DepthNormals mode fallback if shader doesn't have it
17 Days Ago
Update shaders
17 Days Ago
DepthNormalPrepassLayer stub, DepthNormal shader class consumes from S_MODE_DEPTH DepthNormals mode, uses values directly instead of Material, attach it to ShadingModels Ignore and don't compile combo if it's not referenced by a mode or feature instead of erroring out, e.g. We want to reference DepthNormal.hlsl everywhere in Class.hlsl, but we want to only have combos for it if we're using a DepthNormal mode without complicating the codebase, this way when adding a new mode that references that combo, it's added to the shader without convoluting the source, argue with me if you think this is shit behavior Temp bind FindOrCreateRenderTarget and use managed rendertarget for depthnormalprepasslayer Should be continue rather than break, fix undefined identifier if S_MODE_DEPTH_NORMAL is not set Pass MSAA value from pipeline, make DepthNormals a dynamic combo instead of a mode, conditional Add Normals.hlsl, with fallback if no depthnormals are available, add Bindless::GetTexture2DMS Adjustments, Depth Prepass Depth Only under a convar, do depthnormals without size cull threshold GTAO uses Normals::Sample() instead of recalculating normals from depth https://files.facepunch.com/sampavlovic/1b1711b1/sbox-dev_e5dHGELNmU.mp4 Bind ClearFlags, this should probably be implicit Just use DepthNormalPrepassLayer, use depthnormal mode again Add DepthNormal() mode to lit shaders, this seem the most straightforward way to do this, shaders with just Depth() usually have a shared shader with no-color no-material output, legacy shaders rebuild normals from depth, not rendered in depthnormals mode https://files.facepunch.com/sampavlovic/1b2711b1/hSVL6jr1Rx.png Remove old no-normals depth prepass, keeps things simple, effects that we use will need to rely on depthnormals, doesn't add too much cost Fix typo on gtao Reconstruct Normals::Sample from depth if underlying texel doesn't use DepthNormal mode https://files.facepunch.com/sampavlovic/1b2711b1/DdYOdR9WrI.png
24 Days Ago
Reconstruct Normals::Sample from depth if underlying texel doesn't use DepthNormal mode https://files.facepunch.com/sampavlovic/1b2711b1/DdYOdR9WrI.png
24 Days Ago
Add DepthNormal() mode to lit shaders, this seem the most straightforward way to do this, shaders with just Depth() usually have a shared shader with no-color no-material output, legacy shaders rebuild normals from depth, not rendered in depthnormals mode https://files.facepunch.com/sampavlovic/1b2711b1/hSVL6jr1Rx.png Remove old no-normals depth prepass, keeps things simple, effects that we use will need to rely on depthnormals, doesn't add too much cost Fix typo on gtao
24 Days Ago
Bind ClearFlags, this should probably be implicit [Pick] Add Mode fallback, used for both using Depth() as a fallback if shader doesn't have DepthNormal() and to move VrForward() to just Forward() Just use DepthNormalPrepassLayer, use depthnormal mode again [Pick] VrForward > Forward, reverse fallback so that old shaders with VrForward use that still
27 Days Ago
DepthNormalPrepassLayer stub, DepthNormal shader class consumes from S_MODE_DEPTH DepthNormals mode, uses values directly instead of Material, attach it to ShadingModels Ignore and don't compile combo if it's not referenced by a mode or feature instead of erroring out, e.g. We want to reference DepthNormal.hlsl everywhere in Class.hlsl, but we want to only have combos for it if we're using a DepthNormal mode without complicating the codebase, this way when adding a new mode that references that combo, it's added to the shader without convoluting the source, argue with me if you think this is shit behavior Temp bind FindOrCreateRenderTarget and use managed rendertarget for depthnormalprepasslayer Should be continue rather than break, fix undefined identifier if S_MODE_DEPTH_NORMAL is not set Pass MSAA value from pipeline, make DepthNormals a dynamic combo instead of a mode, conditional Add Normals.hlsl, with fallback if no depthnormals are available, add Bindless::GetTexture2DMS Adjustments, Depth Prepass Depth Only under a convar, do depthnormals without size cull threshold GTAO uses Normals::Sample() instead of recalculating normals from depth https://files.facepunch.com/sampavlovic/1b1711b1/sbox-dev_e5dHGELNmU.mp4
34 Days Ago
Should be continue rather than break, fix undefined identifier if S_MODE_DEPTH_NORMAL is not set Pass MSAA value from pipeline, make DepthNormals a dynamic combo instead of a mode, conditional Add Normals.hlsl, with fallback if no depthnormals are available, add Bindless::GetTexture2DMS Adjustments, Depth Prepass Depth Only under a convar, do depthnormals without size cull threshold GTAO uses Normals::Sample() instead of recalculating normals from depth https://files.facepunch.com/sampavlovic/1b1711b1/sbox-dev_e5dHGELNmU.mp4
34 Days Ago
Adjustments, Depth Prepass Depth Only under a convar, do depthnormals without size cull threshold GTAO uses Normals::Sample() instead of recalculating normals from depth https://files.facepunch.com/sampavlovic/1b1711b1/sbox-dev_e5dHGELNmU.mp4
36 Days Ago
Add Normals.hlsl, with fallback if no depthnormals are available, add Bindless::GetTexture2DMS
36 Days Ago
Pass MSAA value from pipeline, make DepthNormals a dynamic combo instead of a mode, conditional
37 Days Ago
Should be continue rather than break, fix undefined identifier if S_MODE_DEPTH_NORMAL is not set
37 Days Ago
Ignore and don't compile combo if it's not referenced by a mode or feature instead of erroring out, e.g. We want to reference DepthNormal.hlsl everywhere in Class.hlsl, but we want to only have combos for it if we're using a DepthNormal mode without complicating the codebase, this way when adding a new mode that references that combo, it's added to the shader without convoluting the source, argue with me if you think this is shit behavior Temp bind FindOrCreateRenderTarget and use managed rendertarget for depthnormalprepasslayer [pick] Use current msaa type when creating a new swapchain for tool widgets instead of using msaa 16X, currently doesn't change when changing settings though
37 Days Ago
DepthNormals mode, uses values directly instead of Material, attach it to ShadingModels
37 Days Ago
DepthNormalPrepassLayer stub, DepthNormal shader class consumes from S_MODE_DEPTH
42 Days Ago
DepthNormalPrepassLayer stub, DepthNormal shader class consumes from S_MODE_DEPTH