userSam Pavloviccancel

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

5 Months Ago
Change dynamic envmapprobe to use 7 mips which is the calibrated value for Cubemapper, change default feathering value to a tighter .25f Use parallax for ambient envmap lighting https://files.facepunch.com/sam/1b1511b1/sbox-dev_a6lt3mNtWW.mp4
6 Months Ago
Detangle all this from Cubemapper, make it able to render inline rather than on a render block Redo update strategies from envmapprobe, much simpler, works everywhere now
6 Months Ago
Fix Depth::GetWorldPosition dividing by zero on skyboxes, pass epsilon to it use Depth::GetWorldPosition on Motion Blur, fix darkening/overbrightening of it based on sample count
6 Months Ago
Don't try to compile shaders that have missing source files
6 Months Ago
Process particles in a GameSystem, all at the same time, to benefit from multithreading DynamicSceneObject can take vertex span instead of one at a time Fix NRE in Collider.RebuildImmediately Fix SoundEvent.GetNextSound random not using the full range of sounds GameObjectSystem metrics Look for eligible types in ResourceControlWidget, so it works with inherited types (resolves Facepunch/sbox-issues#5609) https://files.facepunch.com/tony/1b0211b1/sbox-dev_YJS6hP69DC.png Start pending components before physics step - fixes physics step running before joints are created ByteStream Rewrite (#1610) * Added failing ByteStream stress test * Rewrite ByteStream to use Span / ReadOnlySpan where possible Add basic support for using right CTRL/SHIFT keys for input actions, I didn't include RALT because my keyboard doesn't seem to work with it (resolves Facepunch/sbox-issues#5506) Update Facepunch.ActionGraphs * Optimization when cloning * Nicer error messages with invalid pure methods (Facepunch/sbox-issues#5743) Fixed Facepunch/sbox-issues#5752 Fix OnComponentUpdate / OnComponentFixedUpdate not running Allow model inspector to preview animations https://files.facepunch.com/layla/1b0211b1/sbox-dev_fdrQka7PNG.mp4 Dictionary control widgets can't be edited when readonly Hotload: Skip some System.Text.Json types Fix some files (.razor) not opening in code editor from compile status window Simplify scene ref gizmos, fix leak when closing scene Terrain can import splatmap from png, tga, jpg, psd Remove SceneFile.LastSaved, use existing hash check to check for external changes for scenes, much cleaner Add algorithmVersion to vtex crc if GGXCubeMapBlur Increment sky shader version, forces material rebuild, which forces a texture rebuild Restore Toggle Gizmos shortcut (not sure if this was done on purpose) Fix incorrect min max for int AnimParam Add option names to enum AnimParam Package.Type.Gamemode becomes Package.Type.Game Can publish any asset, scene + prefab previewers Published assets can optionally include source files Fix Warnings Fix GetParameterInt and GetParameterFloat not working for ANIMPARAM_ENUM Preview animgraph parameters on model preview https://files.facepunch.com/layla/1b0311b1/sbox-dev_orVYPmENxI.mp4 Make sure any scene light properties ask native for their value so they can never go out of sync Add binds we'll need for sceneobject serialization Bind light desc so we can create a light directly from desc Merge branch 'master' into reverse-z
6 Months Ago
Revert changes to sky.shader now that g_flFarPlane has the correct value in reverse-z
6 Months Ago
Fix shadow bias with new Reverse-Z shadow compatibility
6 Months Ago
Fix SSAO with Reverse-Z Update shaders with new Reverse-Z shadow compatibility Fix shadow bias with new Reverse-Z shadow compatibility
6 Months Ago
Do Reverse-Z worldtoshadow in lightbinner rather than in shader code, makes existing old shaders have proper shadows with just our compatibility mode https://files.facepunch.com/sam/1b0211b1/kzfuxUK73z.png
6 Months Ago
renderdevicevulkan: enable reverse depth Reverse the DepthFunc on all shaders GREATER <-> LESS gizmo_grid: reverse manual depth bias We need to change the depth clear value from 1->0 (in 3 different places of course) Recompiled core shaders Fix r_depth_debug Default RenderState DepthFunc to RS_CMP_GREATER_EQUAL, makes shaders without a RenderState set default to it https://files.facepunch.com/sam/1b0711b1/tt3.png Readjust depth bias on debug shaders for reverse depth Fix shadow in reversed depth https://files.facepunch.com/sam/1b0711b1/tt2.png Adjust depth bias for gizmo shaders for the increased depth precision Tiled light culling with reverse-z SSR with inverted z ( Way more stable ) Fix (3D) Skybox with inverse depth range Fix SSR backtracing on reverse depth Remove shadow depth bias from shader, it should be controlled by shadow matrix on lightbinner DoF with reverse depth Shaders for reverse depth Fix glass and decal overlays depth bias Shaders with depth bias fixes Add shadow depth bias on matrix Compile UI shaders for inverse depth Reverse depth comparison on the sampler rather than on the shader for shadows, makes this more lean Fix SSR backtracing and confidence check ( and Depth::GetLinear() ) https://files.facepunch.com/sam/1b1111b1/cxXjDfQ2g5.png Update shaders Reverse-Z Compatibility: Serialize depth stencil state version and reverse the depth comparison of old shaders Update shaders with stencil state versioning https://files.facepunch.com/sam/1b2111b1/ZCuq7swn9v.png Shaders with reverse-z and IBL
6 Months Ago
Do draw opaque objects flagged with no depth prepass, also set correct behaviour for SCENEOBJECTFLAG_NO_Z_PREPASS on actual depth prepass layer
6 Months Ago
Use conservative alphatest discard for depth prepass in goback_material instead of opaquefade, fixes blue stripes in overlays
6 Months Ago
Envmap Ambient Lighting + Sky Envmaps (#1568)
6 Months Ago
Envmap Ambient Lighting + Sky Envmaps (#1568)
6 Months Ago
Update shaders with legacy ambient lighting padding
6 Months Ago
Add padding for LegacyAmbientLightColor, let's not make our lovely existing community games have red ambient color https://files.facepunch.com/sam/1b2811b1/FLkIjvjdgH.png
6 Months Ago
Remove AmbientLightSH from lightbinner, Directional Light doesn't control ambient color anymore, this is a visually breaking change, I'll see to put a better replacement to existing things Set skybox as global cubemap Be able to sample cubemaps from any resolution, use diffuse cubemap as diffuse indirect illumination if no GI in scene [Pick] Implement "GGXCubeMapBlur" filter on CPU, previously it did not work at all in CI since require RenderSystem which isn't ideal since it's the only thing that did so and is completely different from our Cubemapper GGX filter, this makes all filters consistent and much cleaner, remove Convolve Envmap shader I want to start using GGX filtering on skyboxes but this wouldn't work on CI because of that requirement Skyboxes compile wid GGXCubeMapBlur instead of Box filter, adjustments for GGXCubemapBlurHelper Cubemap fog just takes material from current skybox https://files.facepunch.com/sam/1b1511b1/sbox-dev_k6CScBsqcF.mp4 Make CubemapFog material still be configurable, take it straight from the skybox if it's null Separate Ambient Light into it's own component from Directional Light, add upgrader for it Use black cube if texture passed to lightbinner is invalid (eg non-sky material from SceneSkybox ) Fix World.AmbientLight, make flat ambient light lerp between IBL and what we have, make it artist accessible with ambientlight component Delete these skybox vtexes Remove convolve_environment_map.shader from shader ci Don't change flTargetLuminanceOfCubemap, it's bullshit Skybox envmap has lowest priority https://files.facepunch.com/sam/1b1911b1/yipICq2VMI.jpg Swap tools stuff that uses DirectionalLight.SkyColor to either IBL or AmbientLight Better description of obsolecence update shaders with IBL Default ambient color on SceneThumbnails Add padding to buffer Fix IBL not applying to transmissive Use faster Scene.GetAllComponents<SkyBox2D>() for fetching skybox texture on CubemapFog to not iterate over all gameobjects Revert SkyColor to control ambient light on DirectionalLight again, but pipe it to scene's ambient light color Sun prefab now comes with no skycolor ( Takes from IBL )
6 Months Ago
Revert SkyColor to control ambient light on DirectionalLight again, but pipe it to scene's ambient light color
6 Months Ago
renderdevicevulkan: enable reverse depth Reverse the DepthFunc on all shaders GREATER <-> LESS gizmo_grid: reverse manual depth bias We need to change the depth clear value from 1->0 (in 3 different places of course) Recompiled core shaders Fix r_depth_debug Default RenderState DepthFunc to RS_CMP_GREATER_EQUAL, makes shaders without a RenderState set default to it https://files.facepunch.com/sam/1b0711b1/tt3.png Readjust depth bias on debug shaders for reverse depth Fix shadow in reversed depth https://files.facepunch.com/sam/1b0711b1/tt2.png Adjust depth bias for gizmo shaders for the increased depth precision Tiled light culling with reverse-z SSR with inverted z ( Way more stable ) Fix (3D) Skybox with inverse depth range Fix SSR backtracing on reverse depth Remove shadow depth bias from shader, it should be controlled by shadow matrix on lightbinner DoF with reverse depth Shaders for reverse depth Fix glass and decal overlays depth bias Shaders with depth bias fixes Add shadow depth bias on matrix Compile UI shaders for inverse depth Reverse depth comparison on the sampler rather than on the shader for shadows, makes this more lean Fix SSR backtracing and confidence check ( and Depth::GetLinear() ) https://files.facepunch.com/sam/1b1111b1/cxXjDfQ2g5.png Update shaders Reverse-Z Compatibility: Serialize depth stencil state version and reverse the depth comparison of old shaders Update shaders with stencil state versioning https://files.facepunch.com/sam/1b2111b1/ZCuq7swn9v.png
6 Months Ago
Remove alphatest layers and unused attributes, all done in opaque pass Depth Fast Path was fucked up with material overrides, disable depth fast path on that batch if we're using material overrides then, this whole system seems complicated to begin with too, additionally material flags were not being updated when you did a SetMaterialOverride This fixes translucent material overrides rendering as if they were opaque https://files.facepunch.com/sam/1b2811b1/UNobtq1Qnd.png Handle translucency flags for material overrides in renderingpipeline Nullcheck bMaterialOverride
6 Months Ago
Use faster Scene.GetAllComponents<SkyBox2D>() for fetching skybox texture on CubemapFog to not iterate over all gameobjects
6 Months Ago
Update shaders with stencil state versioning https://files.facepunch.com/sam/1b2111b1/ZCuq7swn9v.png
6 Months Ago
Reverse-Z Compatibility: Serialize depth stencil state version and reverse the depth comparison of old shaders
6 Months Ago
Default ambient color on SceneThumbnails Add padding to buffer Fix IBL not applying to transmissive
6 Months Ago
renderdevicevulkan: enable reverse depth Reverse the DepthFunc on all shaders GREATER <-> LESS gizmo_grid: reverse manual depth bias We need to change the depth clear value from 1->0 (in 3 different places of course) Recompiled core shaders Fix r_depth_debug Default RenderState DepthFunc to RS_CMP_GREATER_EQUAL, makes shaders without a RenderState set default to it https://files.facepunch.com/sam/1b0711b1/tt3.png Readjust depth bias on debug shaders for reverse depth Fix shadow in reversed depth https://files.facepunch.com/sam/1b0711b1/tt2.png Adjust depth bias for gizmo shaders for the increased depth precision Tiled light culling with reverse-z SSR with inverted z ( Way more stable ) Fix (3D) Skybox with inverse depth range Fix SSR backtracing on reverse depth Remove shadow depth bias from shader, it should be controlled by shadow matrix on lightbinner DoF with reverse depth Shaders for reverse depth Fix glass and decal overlays depth bias Shaders with depth bias fixes Add shadow depth bias on matrix Compile UI shaders for inverse depth Reverse depth comparison on the sampler rather than on the shader for shadows, makes this more lean Fix SSR backtracing and confidence check ( and Depth::GetLinear() ) https://files.facepunch.com/sam/1b1111b1/cxXjDfQ2g5.png Update shaders
6 Months Ago
Default ambient color on SceneThumbnails Null checks on Scene.AmbientLightColor AmbientLight component is killed, update Obsolete documentation Add padding to buffer Fix IBL not applying to transmissive
6 Months Ago
Remove AmbientLight component, just pass to scene, make it a property
6 Months Ago
Update Fog.Cubemap test scene https://files.facepunch.com/sam/1b1911b1/sbox-dev_ktnlWsCs24.mp4
6 Months Ago
Readd Skyballs an ambient light test scene https://files.facepunch.com/sam/1b1911b1/JYx0E9JbyL.jpg
6 Months Ago
update shaders with IBL
6 Months Ago
Remove AmbientLightSH from lightbinner, Directional Light doesn't control ambient color anymore, this is a visually breaking change, I'll see to put a better replacement to existing things Set skybox as global cubemap Be able to sample cubemaps from any resolution, use diffuse cubemap as diffuse indirect illumination if no GI in scene [Pick] Implement "GGXCubeMapBlur" filter on CPU, previously it did not work at all in CI since require RenderSystem which isn't ideal since it's the only thing that did so and is completely different from our Cubemapper GGX filter, this makes all filters consistent and much cleaner, remove Convolve Envmap shader I want to start using GGX filtering on skyboxes but this wouldn't work on CI because of that requirement Skyboxes compile wid GGXCubeMapBlur instead of Box filter, adjustments for GGXCubemapBlurHelper Cubemap fog just takes material from current skybox https://files.facepunch.com/sam/1b1511b1/sbox-dev_k6CScBsqcF.mp4 Make CubemapFog material still be configurable, take it straight from the skybox if it's null Separate Ambient Light into it's own component from Directional Light, add upgrader for it Use black cube if texture passed to lightbinner is invalid (eg non-sky material from SceneSkybox ) Fix World.AmbientLight, make flat ambient light lerp between IBL and what we have, make it artist accessible with ambientlight component Delete these skybox vtexes Remove convolve_environment_map.shader from shader ci Don't change flTargetLuminanceOfCubemap, it's bullshit Skybox envmap has lowest priority https://files.facepunch.com/sam/1b1911b1/yipICq2VMI.jpg Swap tools stuff that uses DirectionalLight.SkyColor to either IBL or AmbientLight Better description of obsolecence
6 Months Ago
Swap tools stuff that uses DirectionalLight.SkyColor to either IBL or AmbientLight
6 Months Ago
Skybox envmap has lowest priority https://files.facepunch.com/sam/1b1911b1/yipICq2VMI.jpg
6 Months Ago
Don't change flTargetLuminanceOfCubemap, it's bullshit
6 Months Ago
Remove convolve_environment_map.shader from shader ci
6 Months Ago
Fix World.AmbientLight, make flat ambient light lerp between IBL and what we have, make it artist accessible with ambientlight component Delete these skybox vtexes
6 Months Ago
Separate Ambient Light into it's own component from Directional Light, add upgrader for it Use black cube if texture passed to lightbinner is invalid (eg non-sky material from SceneSkybox )
6 Months Ago
Make CubemapFog material still be configurable, take it straight from the skybox if it's null
6 Months Ago
Cubemap fog just takes material from current skybox https://files.facepunch.com/sam/1b1511b1/sbox-dev_k6CScBsqcF.mp4
6 Months Ago
Skyboxes compile wid GGXCubeMapBlur instead of Box filter, adjustments for GGXCubemapBlurHelper
6 Months Ago
[Pick] Implement "GGXCubeMapBlur" filter on CPU, previously it did not work at all in CI since require RenderSystem which isn't ideal since it's the only thing that did so and is completely different from our Cubemapper GGX filter, this makes all filters consistent and much cleaner, remove Convolve Envmap shader I want to start using GGX filtering on skyboxes but this wouldn't work on CI because of that requirement
7 Months Ago
Remove AmbientLightSH from lightbinner, Directional Light doesn't control ambient color anymore, this is a visually breaking change, I'll see to put a better replacement to existing things Set skybox as global cubemap Be able to sample cubemaps from any resolution, use diffuse cubemap as diffuse indirect illumination if no GI in scene
7 Months Ago
Update shaders
7 Months Ago
Reverse depth comparison on the sampler rather than on the shader for shadows, makes this more lean Fix SSR backtracing and confidence check ( and Depth::GetLinear() ) https://files.facepunch.com/sam/1b1111b1/cxXjDfQ2g5.png
7 Months Ago
Add shadow depth bias on matrix Compile UI shaders for inverse depth
7 Months Ago
renderdevicevulkan: enable reverse depth Reverse the DepthFunc on all shaders GREATER <-> LESS gizmo_grid: reverse manual depth bias We need to change the depth clear value from 1->0 (in 3 different places of course) Recompiled core shaders Fix r_depth_debug Default RenderState DepthFunc to RS_CMP_GREATER_EQUAL, makes shaders without a RenderState set default to it https://files.facepunch.com/sam/1b0711b1/tt3.png Readjust depth bias on debug shaders for reverse depth Fix shadow in reversed depth https://files.facepunch.com/sam/1b0711b1/tt2.png Adjust depth bias for gizmo shaders for the increased depth precision Tiled light culling with reverse-z SSR with inverted z ( Way more stable ) Fix (3D) Skybox with inverse depth range Fix SSR backtracing on reverse depth Remove shadow depth bias from shader, it should be controlled by shadow matrix on lightbinner DoF with reverse depth Shaders for reverse depth Fix glass and decal overlays depth bias Shaders with depth bias fixes
7 Months Ago
Fix glass and decal overlays depth bias
7 Months Ago
DoF with reverse depth Shaders for reverse depth
7 Months Ago
Remove shadow depth bias from shader, it should be controlled by shadow matrix on lightbinner
7 Months Ago
Fix (3D) Skybox with inverse depth range Fix SSR backtracing on reverse depth