1,728 Commits over 1,491 Days - 0.05cph!
[Pick] Proper support for blitting MSAA textures, also fixes blitted framebuffer textures on Vulkan
Much more accurate and faster way to calculate max depth on tiled light building by using depth hierarchy, increase tile size to
[Pick] add MinMax downsample operator for Hi-Z depth buffer, this will help us do some GPU occlusion tests and trace what's between SSR geometry
Fix atmospherics not showing up on editor for shadingmodel shaders
Compiled shaders
[Pick] add MinMax downsample operator for Hi-Z depth buffer, this will help us do some GPU occlusion tests and trace what's between SSR geometry
Backport simple water from SSR branch
Water fog and refraction
Iterate, make WaterRipple a custom sceneobject so we can fetch depth from it and only render when visible
Fix water ripple collision
Fix SSR issues, just do PS > VS converstion to be faster, composite it directly to water
Be more lenient on light direction validation mask for directional AO, make sure that aoproxies don't clip through citizen's arms
Directional AO can use more steps now that it's cheaper
Do finer steps on soft shadowing of directional AO
https://i.imgur.com/VDwm44j.png
[ pick ] Pick reprojection transform constants from SSR branch
[ Pick ] let reflections api be more generic to use
Fix water ripple collision
[ Pick ] let reflections api be more generic to use
[ pick ] Pick reprojection transform constants from SSR branch
Backport simple water from SSR branch
Water fog and refraction
Iterate, make WaterRipple a custom sceneobject so we can fetch depth from it and only render when visible
Add ffx_sssr shader headers from SSR branch
Fix AddBlitTextureToTargetLayer not blitting correctly if dimensions are different
Backport Hierarchical Z Downsample and FindOrCreateFrameBufferTexture from SSR branch, clean it up
Use multiview variant for calculating camera direction
Shader objects for VR and high precision lighting fixes
Iterate, make WaterRipple a custom sceneobject so we can fetch depth from it and only render when visible
Fix glass behaviour being transparent when writing screenshots, flags to shadingmodel to fill alpha
Reenable multiview instancing on PS code for now, fixes reflections and lights projecting incorrectly in VR
Fix mixed lights having incorrect behavior when disabing high precision lighting offset, same behavior as before with it enabled
Fix warnings on rendering transparents, LAYERFLAGS_READONLY_DEPTH_STENCIL disables depth access?? Just really needs LAYERFLAGS_DOESNT_MODIFY_DEPTH_STENCIL_BUFFER, remove vr_readonly_depth_stencil_enable since it's pretty redundant
Vulkan compile for wireframe shaders
Set wireframe color as an attribute rather thaan dedicating a whole cbuffer to it, fixes hammer wireframe being dark as well since that data was not being set correctly
Backport simple water from SSR branch
Update citizen aoproxies
Merge branch 'water-backport'
Water fog and refraction
Fix shadows and area lights on vulkan removing unused parameters that were fucking cbuffer alignment
Remove more unused shit from shaders, separate lighting constants between legacy and non legacy in shader code, initialize light code in DoLightShape
Fix errors on light.static.hlsl
Fix mixed shadows blinking black on activation, make them fade properly
Better Viewmodel Shadows (#1119)
Fix stuff from lightbinner cleanup that wasn't carried over and adjust viewmodel shadow offset
update shaders
Cache PVS on scope and do UpdateMixedShadowsComputations as a job, ~10x speed increase, do calculations every 200ms rather than 100
Add Tiled Rendering Quads to debug view list
Fix foliage in VR, let's rethink how we do multiview API later..
Remove all hacks we had for a second shadow atlas for viewmodel shadows
Sharp viewmodel shadows prototype, remove last references to viewmodel atlas
Mixed lights support viewmodel shadows, recalculate frustum to always focus on the best alignment for the viewmodel bbox so it always stays sharp
https://cdn.discordapp.com/attachments/1118902360970899456/1119228713591132230/sbox_0031.mp4
SSAO test for viewmodel
Fix dynamic ambient occlusion not being applied for CalculateDiffuseAmbientOcclusion
Try a few more AO techniques
Composite viewmodel AO, and this should be the right way to do HBAO
Remove nonsense resolution scale stuff in common.fxc that's unreferenced in code and causing problems (defined before system.fxc wtf)
Allow compute on renderpipeline to do multiple dispatches, HBAO as compute,HBAO bilateral blur
Use hammersley rather than bluenoise, looks a ton better
Cleanup, controls for ambient occlusion, do indexed light viewmodel shadows sequentially, cast world shadows on viewmodel
Assign what shadow index a baked light shall read from rather than iterating through the entire buffer and figuring it out, much faster way to do baked light shadows
Proper way to do light indexed on ShadingModel Light API too
Sanity checks, remove debug views and some minor adjustments for viewmodel shadows
Remove last traits of g_flResolutionScale
[pick] remove shaders that don't exist anymore from CI building
Method for getting shadow index for baked light compatible with vulkan
Fix stupid typo, GetShadowIndexForBakedLight compiles fine on vulkan now
Fix another typo and compile core shaders
Fix another typo and compile core shaders
Lightbinner Separation between VK/D3D11 (#1133)
* Add LightBinnerLegacy so we don't kludge our lightbinner with stuff we can't change on d3d, rename our main lightbinner to LightBinnerStandard
* Remove deprecated cbuffers
* Add lightbinner_legacy, separate both lightbinners based on the rendering system we use
Compile glass on vulkan, have proper curve for albedo color absoption for shadows
Add LightBinnerLegacy so we don't kludge our lightbinner with stuff we can't change on d3d, rename our main lightbinner to LightBinnerStandard
Remove deprecated cbuffers
Add ligthbinner_legacy, separate both lightbinners based on the rendering system we use
Fix stupid typo, GetShadowIndexForBakedLight compiles fine on vulkan now
Recompile glass with support for world mapping
Remove msdfgen, been there forever and we never used it for anything, better to implement it in C# if we ever need it
[pick] remove shaders that don't exist anymore from CI building
Method for getting shadow index for baked light compatible with vulkan
Proper way to do light indexed on ShadingModel Light API too
Sanity checks, remove debug views and some minor adjustments for viewmodel shadows
Remove last traits of g_flResolutionScale
Assign what shadow index a baked light shall read from rather than iterating through the entire buffer and figuring it out, much faster way to do baked light shadows
Cleanup, controls for ambient occlusion, do indexed light viewmodel shadows sequentially, cast world shadows on viewmodel
Remove ExtraShaderDataFormat, just have everything uniform
Remove EXTRA_SHADERDATA_FORMAT from shaders too