userSam Pavloviccancel

1,860 Commits over 1,522 Days - 0.05cph!

5 Hours Ago
Remove baked lighting ToolsVis, they're nigh useless for us now, the one we actually use is a near duplicate of Diffuse toolsvis Remove all references to lightmapping combos, they're still available on vertex shader for lightmapping uv input though, PS stubs it out on specialization Start bindless lightmaps & light probe volume Bindless Lightmaps use cbuffer directly for indices instead of setting texture parameters, lightmapping conditionals use constants instead of combos now Bindless Light Probe Volumes Actually bind bindless lightmaps Final adjustments, vertex shaders still use lightmapping combo, take out rest of lightingTerms.vDBG_BakedLighting Spritecard tries to sample lightmaps from vertex shader which isnt what we want, remove dynamic combo rules for lightmaps Bakeresourcehelper which is used on tools has duplicated LPV constants code, make it use same path that's used for bindless Remove BATCH_FLAGS_HAS_BAKED_LIGHTING_FROM_VERTEX_STREAM ( unused ) and BATCH_FLAGS_CONTROLLING_COMBO_CHANGES (bullshit now) Mark bindless lightmaps and LPVs as used, might not be needed but making sure Update shaders with bindless lightmaps
5 Hours Ago
Remove BATCH_FLAGS_HAS_BAKED_LIGHTING_FROM_VERTEX_STREAM ( unused ) and BATCH_FLAGS_CONTROLLING_COMBO_CHANGES (bullshit now) Mark bindless lightmaps and LPVs as used, might not be needed but making sure
6 Hours Ago
Bakeresourcehelper which is used on tools has duplicated LPV constants code, make it use same path that's used for bindless
Yesterday
Update Viewmodel scene with ssao also showcasing proper prepass
Yesterday
Overlay is considered a game layer since it draws to color, fixes depth prepass for overlays, remove overlay prepass from renderpipeline_standard
Yesterday
CommandList.GetRenderTarget with SizeFactor, don't allocate DepthTexture for it since it's not being used anywhere yet
Yesterday
Remove GTAO include code from scenestaging DynamicReflections component stub
2 Days Ago
Target > SV_Target0 & out with reflection combo
2 Days Ago
Remove Dynamic Reflections feature from shaders & crumbs from lighting.fxc
3 Days Ago
Remove Reflections.hlsl and both instances of Reflection() mode in our shaders
4 Days Ago
Remove C++ side of Dynamic Reflections, this is becoming a component like SSAO & going to use DepthNormals Remove FramebufferScratchTexture, it was used to fetch a rendertarget over multiple frames easily and only meant to be used on dynamic reflections in native side, our C# RenderTarget is equivalent to it
4 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
4 Days Ago
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
4 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
6 Days Ago
Add Normals.hlsl, with fallback if no depthnormals are available, add Bindless::GetTexture2DMS
6 Days Ago
Pass MSAA value from pipeline, make DepthNormals a dynamic combo instead of a mode, conditional
7 Days Ago
Up TEXTURE_COMPILER_VERSION_MIP_GGXCUBEMAPBLUR version ( Negative cubemap color check )
7 Days Ago
Should be continue rather than break, fix undefined identifier if S_MODE_DEPTH_NORMAL is not set
7 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
7 Days Ago
Some float skyboxes have negative color, don't sample negative values when doing GGX filtering https://files.facepunch.com/sampavlovic/1b1411b1/mspaint_YDO07zEdFf.png
7 Days Ago
DepthNormals mode, uses values directly instead of Material, attach it to ShadingModels
8 Days Ago
DepthNormalPrepassLayer stub, DepthNormal shader class consumes from S_MODE_DEPTH
12 Days Ago
DepthNormalPrepassLayer stub, DepthNormal shader class consumes from S_MODE_DEPTH
12 Days Ago
Spritecard tries to sample lightmaps from vertex shader which isnt what we want, remove dynamic combo rules for lightmaps Build shaders with bindless lightmaps
12 Days Ago
Final adjustments, vertex shaders still use lightmapping combo, take out rest of lightingTerms.vDBG_BakedLighting
12 Days Ago
Bindless Lightmaps use cbuffer directly for indices instead of setting texture parameters, lightmapping conditionals use constants instead of combos now Bindless Light Probe Volumes Actually bind bindless lightmaps
12 Days Ago
Remove baked lighting ToolsVis, they're nigh useless for us now, the one we actually use is a near duplicate of Diffuse toolsvis Remove all references to lightmapping combos, they're still available on vertex shader for lightmapping uv input though, PS stubs it out on specialization Start bindless lightmaps & light probe volume
13 Days Ago
Remove ToolsVis Mode (#1763) * Remove ToolsVis from RenderingPipeline, remove ToolsVis combo, make it toggle through the integer only * Remove ToolsVis() MODES from all shaders 🙏🏻 * Remove ToolsWireframe and ToolsVis from shadergraph template * Legacy ToolsVis isn't even supported, any legacy variable refs to it can go * Compiled shaders with branched ToolsVis
13 Days Ago
Remove ToolsVis from RenderingPipeline, remove ToolsVis combo, make it toggle through the integer only Remove ToolsVis() MODES from all shaders 🙏🏻 Remove ToolsWireframe and ToolsVis from shadergraph template Legacy ToolsVis isn't even supported, any legacy variable refs to it can go Compiled shaders with branched ToolsVis
13 Days Ago
Compiled shaders with branched ToolsVis
14 Days Ago
Accidentally yanked Src/DstBlend from Spritecard, also bring back shading complexity to it even if it makes code awful for now
14 Days Ago
Legacy ToolsVis isn't even supported, any legacy variable refs to it can go
14 Days Ago
Remove ToolsVis() MODES from all shaders 🙏🏻 Remove ToolsWireframe and ToolsVis from shadergraph template
14 Days Ago
Remove ToolsVis from RenderingPipeline, remove ToolsVis combo, make it toggle through the integer only
14 Days Ago
Add EnvironmentMap class for EnvMap.hlsl, allows you to fetch contribution of all environment map lighting, fixes CubemapReflections toolsvis, move stuff out of lighting.fxc Init ToolsVis color to gray if mode is not supported, same behaviour as before
14 Days Ago
Remove vr_tools_vis.fxc, have it all in ToolsVis.hlsl as a class, remove all dangling S_MODE_TOOLS_VIS combos ToolsVis for Material lives in ShadingModel, custom shadingmodels implement their own Rest of shaders that do custom toolsvis behavior with new api Remove any #if S_MODE_TOOLS_VIS, makes it able to slide smoothly into new system Let toolsvis combo live where it was before (we're removing it right after) and remove S_MODE_TOOLS_VIS reference on spritecard, baked light vis on shadingmodel
15 Days Ago
Add GetFirstTextureParam() to get first declared texture from shader, used to fetch the convoluted RepresentativeTexture/LightSim_DiffuseAlbedoTexture attributes without explicit declaration Allow material representative texture for VRAD be infered by the first texture parameter on shader if DiffuseAlbedoTexture is not set, allows to clean up all this material api & lets shadergraph shaders be rendered properly on vrad https://files.facepunch.com/sampavlovic/1b0611b1/aocrkIAnQN.png
16 Days Ago
Remove configdefaults.PLAT.vcfg, completely bullshit for us PerViewLightingConstantBuffer_t completely unused
17 Days Ago
[Pick] Remove configdefaults.PLAT.vcfg, completely bullshit for us Mac/Linux Add Developer-BuildAll.sh for Posix to make it easier to debug, but without tools
18 Days Ago
Mac/Linux: Use static version of gamenetworkingsockets, cuts a lot of the mess of dependency hunting Mac: OSX doesn't allow setting DYLD PATH from the application itself, make it parse these relative to the current directory, load correct steam DLL regardless of platform
22 Days Ago
Mac: Fix sed and FILE struct for mac, should work on linux too, I'll double check, getting this to boot on mac/linux again and slowly trickling this branch to master
33 Days Ago
VRAD3 (& it's resourcecompiler) explicitly uses rendersystem, our tools can omit it but we need to read back textures from the GPU for map compilation
33 Days Ago
Launch ToolAppSystem pretending to be a dedicated server so it doesn't use rendersystem for CI, revert me soon
33 Days Ago
Reenable rendersystem for console apps for map compilation Invert logic of bSupportsLightmapping, make explicit flag of "NoLightmapping", doesn't feel right to apply that flag in every shader when it all should just support it
33 Days Ago
Fix indirect IBL fog not working https://files.facepunch.com/sampavlovic/1b1911b1/jVWTMafLaa.png
33 Days Ago
Do view vector TAA jitter for fog on native instead off shader, proper way to handle this specially on thin surfaces https://files.facepunch.com/sampavlovic/1b1911b1/B2DSaqPTHe.jpg
33 Days Ago
Add Shader Classes Test
33 Days Ago
Be able to fetch all light information with Light::Count() and Light::From(), while doing all optimization from tiled lighting etc Move light.hlsl to common/classes/Light.hlsl, start unfucking it, make it have same structure as everything else DynamicLight refactor Refactor StaticLight class, can do Light::From() to get all lights (static/dynamic) at once https://i.imgur.com/jqko5ON.mp4 Fuck of with light.environment, light.dynamic and light.static are just in Light.hlsl instead of own internal files Move shadow functions to Shadow.hlsl, much like BRDF.hlsl, will make it easy for us to upgrade, move LightMap definitions to Light.hlsl Vr_lighting never directly referenced from any of our hlsls now, tonemaps in lighting.fxc never used and even if used shouldn't be there Untangle this stuff Use ProbeLight::UsesProbes() and LightmappedLight::UsesLightmaps() to see if drawcall is using these instead of insane combo ifdefs directly, makes it easy to remove a combo too
33 Days Ago
Remove lightmapping combos from sbox_pixel (should fuck that file off entirely), move to shadingmodel.hlsl, keep D_BAKED_LIGHTING_FROM_LIGHTMAP for vertex.hlsl, SupportsLightmapping attribute seems unused
33 Days Ago
Revert "Lightmapping combos go on shadingmodel, Lightmapping definiton should be in shadingmodel.hlsl not Material.hlsl, material should be only a contract to shadingmodels" Fucked, need to get rid of this stupid SupportsLightmapping attribute and just do it directly