usermattcancel
branchsbox/vulkancancel

53 Commits over 120 Days - 0.02cph!

9 Months Ago
Fix race for generated hlslvariables file
9 Months Ago
New rendersystemvulkan & vfx_vulkan RenderTools::Draw handle input layout variation better Tag rendersystem for Sentry Use compute shader for bloom on Vulkan & fix uav barriers ::lerp fix for FXC, couple of double layer define fixes Invalid shader handle checks in CVideoPlayerProvider::PresentYUV420Texture New PerViewLightingConstantBufferVr_t for Vulkan, remove unused and realign, stop using structs in a cbuffer :x Lightbinner doesn't need all this dynamic shit, max lights is compiled into shaders Split lightbinner into legacy and new paths, strip loads of shit that Sam pinky promises me is unused
9 Months Ago
Let -fast disable vfx_vulkan optimizations
9 Months Ago
Rebase fix for new shadergraph path
9 Months Ago
New rendersystemvulkan & vfx_vulkan RenderTools::Draw handle input layout variation better Tag rendersystem for Sentry Use compute shader for bloom on Vulkan & fix uav barriers ::lerp fix for FXC, couple of double layer define fixes [?] Fix water on vulkan (moves the water??) [pick] Invalid shader handle checks in CVideoPlayerProvider::PresentYUV420Texture New PerViewLightingConstantBufferVr_t for Vulkan, remove unused and realign, stop using structs in a cbuffer :x Lightbinner doesn't need all this dynamic shit, max lights is compiled into shaders Split lightbinner into legacy and new paths, strip loads of shit that Sam pinky promises me is unused Compiled spv shaders
10 Months Ago
New rendersystemvulkan & vfx_vulkan [hack] don't deal with instancing on SboxVertex for now, need some additional code around input layouts Tag rendersystem for Sentry Use compute shader for bloom on Vulkan & fix uav barriers [?] My last few questionable shader fixes I need to go over [?] Fix water on vulkan Make sure we're compiling DXBC + SPIRV (unless opted out) [pick] Invalid shader handle checks in CVideoPlayerProvider::PresentYUV420Texture New PerViewLightingConstantBufferVr_t for Vulkan, remove unused and realign, stop using structs in a cbuffer :x
10 Months Ago
Compiled core/base shaders spv only
10 Months Ago
New rendersystemvulkan & vfx_vulkan [hack] don't deal with instancing on SboxVertex for now, need some additional code around input layouts Tag rendersystem for Sentry Use compute shader for bloom on Vulkan & fix uav barriers [?] My last few questionable shader fixes I need to go over Recompile all core shaders (spv only) Compiled base shaders (spirv only) [breaking change?] Pack light type in extra light data and make it all align in 128 bits for dxc [?] Fix water on vulkan This should be the proper fix for extra light data, add padding to struct for Vulkan only so we don't break DX11 Messy code, but need to test if the alignment works first Latest core shaders (spirv only oops) with hopefully correct light cbuffer padding Make sure we're compiling DXBC + SPIRV (unless opted out) Revert all that shit, it aligns just fine in the first place 😵‍💫😵‍💫😵‍💫
10 Months Ago
Latest core shaders (spirv only oops) with hopefully correct light cbuffer padding Make sure we're compiling DXBC + SPIRV (unless opted out)
10 Months Ago
This should be the proper fix for extra light data, add padding to struct for Vulkan only so we don't break DX11 Messy code, but need to test if the alignment works first
10 Months Ago
Recompile all core shaders spirv only ( 107m on an 12900kf ;0 )
10 Months Ago
[pick] I dunno where this should belong, but it really shouldn't be core [pick] vr_lighting uninitalized var warning fixes
10 Months Ago
Re-enable our IMalloc passthrough for DXC, improves our build times on many threads Reuse the DxcCompiler instance for preprocessing and compiling in the same thread Revert to slightly older dxc until #5270 is resolved
10 Months Ago
Allocate more device access threads for the .net thread pool
10 Months Ago
New rendersystemvulkan & vfx_vulkan Shader resource v2 has dxbc and spirv blocks, if a block doesn't exist will use a fallback shader [hack] don't deal with instancing on SboxVertex for now, need some additional code around input layouts [pick] Minor shader fixes where DXC is more strict about you being stupid Tag rendersystem for Sentry Use compute shader for bloom on Vulkan & fix uav barriers [temp] Disable crashing water so I can stabilize everything else first Compiled core shader resources with DX11 & Vulkan blocks Compiled base shaders (spirv only)
10 Months Ago
Update dxc & add pdbs ( I was gonna debug a crash with these pdbs, but updating seems to have fixed it 🤷 ) Delete debug code
10 Months Ago
Fix mem leaks in vfx_vulkan, use smart ptrs to not fuck ourselves over again [pick] encoded_normals.fxc fixes, we shouldn't be using PixelInput in core stuff anywhere
10 Months Ago
New rendersystemvulkan & vfx_vulkan Shader resource v2 has dxbc and spirv blocks, if a block doesn't exist will use a fallback shader [hack] don't deal with instancing on SboxVertex for now, need some additional code around input layouts [pick] GetShaderFullPath: remove shader replacements and legacy prefix substitutes [pick] Minor shader fixes where DXC is more strict about you being stupid Tag rendersystem for Sentry Use compute shader for bloom on Vulkan & fix uav barriers [temp] Disable crashing water so I can stabilize everything else first [squash] rendersystemvulkan: fix minor deprecated warnings [squash] rendersystemvulkan: Match renderthreadvulkan changes 1:1 w/ Valve [pick] compile fixes for postprocess_standard_p*.shader Compiled core shader resources with DX11 & Vulkan blocks Compiled base shaders (spirv only) Remove device extension entrypoints & add volkLoadDevice Fix crash when minimzing with a fake swapchain when swapchain extents are 0,0 - higher level code assumes there is always a valid HRenderTexture [squash] more parity with Valve's code making it easier for future changes
10 Months Ago
Remove device extension entrypoints & add volkLoadDevice Fix crash when minimzing with a fake swapchain when swapchain extents are 0,0 - higher level code assumes there is always a valid HRenderTexture
10 Months Ago
New rendersystemvulkan & vfx_vulkan Shader resource v2 has dxbc and spirv blocks, if a block doesn't exist will use a fallback shader [hack] don't deal with instancing on SboxVertex for now, need some additional code around input layouts [pick] GetShaderFullPath: remove shader replacements and legacy prefix substitutes [pick] Minor shader fixes where DXC is more strict about you being stupid Tag rendersystem for Sentry Use compute shader for bloom on Vulkan & fix uav barriers [temp] Disable crashing water so I can stabilize everything else first [squash] rendersystemvulkan: fix minor deprecated warnings [squash] rendersystemvulkan: Match renderthreadvulkan changes 1:1 w/ Valve [pick] compile fixes for postprocess_standard_p*.shader Compiled core shader resources with DX11 & Vulkan blocks Compiled base shaders (spirv only)
10 Months Ago
Use compute shader for bloom on Vulkan & fix uav barriers Fix visualize_depth shader Disable crashing water so I can stabilize everything else first Fix minor deprecated warnings
10 Months Ago
Tag rendersystem for Sentry
10 Months Ago
Remove FSR / Passthrough Fix weird classes shit in shaders Fix tiled light builder (fucked on master too????) this shader include is so fucked, work around it
10 Months Ago
New rendersystemvulkan & vfx_vulkan Shader resource v2 has dxbc and spirv blocks, if a block doesn't exist will use a fallback shader [hack] don't deal with instancing on SboxVertex for now, need some additional code around input layouts GetShaderFullPath: remove shader replacements and legacy prefix substitutes Minor shader fixes where DXC is more strict about you being stupid Compiled core shader resources with DX11 & Vulkan blocks Compiled base shaders
10 Months Ago
missed rubikon and navlib for threadpool api updates
10 Months Ago
New tier0 thread pooling code, should schedule better with less contention, slightly changed API Lots of API changes here I've replicated to the rest of our code base, I'd imagine I've fucked at least one thing up though. Functor jobs are replaced by IThreadPool::QueueJob(WithFlags) which accepts a std::function, much simpler to use and execute Delete all this saverestore shit remove convars: cl_team, cl_class, (versus_)stats_highlight_interval
10 Months Ago
make antlr codegen more sane, hopefully fixes it on build server Delete generate_decal_normals.vmat
10 Months Ago
New rendersystemvulkan & vfx_vulkan [hack] don't deal with instancing on SboxVertex for now, need some additional code around input layouts GetShaderFullPath: remove shader replacements and legacy prefix substitutes Shader fixes where DXC is slightly less forgiving on bad syntax (has a bad hack for material api in it) Rip up Material API to get it compiling Shader resource v2 has optional dx11 and vulkan blocks, if a block doesn't exist will use fallback shader
1 Year Ago
New rendersystemvulkan & vfx_vulkan [hack] don't deal with instancing on SboxVertex for now, need some additional code around input layouts [temp] don't mount any asset.party shaders GetShaderFullPath: remove shader replacements and legacy prefix substitutes Shader fixes where DXC is slightly less forgiving on bad syntax (has a bad hack for material api in it) Rip up Material API to get it compiling Initialize lightShades so we don't get undefined behaviour when summing them, should still be mostly stubbed out by the compiler anyway if shadingmodel doesn't use it Latest compiled shaders
1 Year Ago
New rendersystemvulkan & vfx_vulkan [hack] don't deal with instancing on SboxVertex for now, need some additional code around input layouts [temp] don't mount any asset.party shaders GetShaderFullPath: remove shader replacements and legacy prefix substitutes Shader fixes where DXC is slightly less forgiving on bad syntax (has a bad hack for material api in it) Rip up Material API to get it compiling Initialize lightShades so we don't get undefined behaviour when summing them, should still be mostly stubbed out by the compiler anyway if shadingmodel doesn't use it Latest compiled shaders
1 Year Ago
Material API: Only use ShadingModelValveStandard, abstract classes aren't supported in newer versions of HLSL Remove some unused bullshit from material API
1 Year Ago
Backport -vulkan_enable_sync_validation and other misc validation code Revert Material API hack which was stubbing all funcs
1 Year Ago
More backports, mainly clamping render area still
1 Year Ago
Refactor out VK_IMAGE_LAYOUT_GENERAL dead optimization for nv Make sure renderArea always has positive offsets and clamp to the framebuffer
1 Year Ago
Recompiled all shader misc swapchain fixes -fvk-invert-y for built in shaders too (resolve shader)
1 Year Ago
cs_volumetric_fog shader recompiled with proper reflection objecthighlight shader (weird folder?) Recompiled core shaders (except projected_sheet_decals & visualize_depth)
1 Year Ago
Fix WebPanelTest throwing NRE in debugger do reflection on the built-in shaders so we bind the samplers/textures on them properly Delete IVfx::GetAllShaderVariables, only used for dynamic shader compiles and saves me implementing it for Vulkan for no reason .editorconfig changes to match Valve coding style better Make dxc include handler work with sub dirs GetShaderFullPath: remove shader replacements and legacy prefix substitutes Fix HLSL lexer rules interpreting some vars as float literals and failing lexing Assert if spirv-reflect fails Update spirv-reflect as it was failing with some issues from 2019 :x directional_ao.shader: fix ambiguous reference to 'i' Compiled base shaders
1 Year Ago
Compiled spritecard.shader
1 Year Ago
Fix debug param name being uninitialized
1 Year Ago
Update Vulkan SDK + Volk Stub old vrad3-gpu, incompatible from using beta vk headers rendersystemvulkan: fix raytracing being required, remove VK_EXT_debug_report for VK_EXT_debug_utils vfx_vulkan HLSL compiler using dxc and spirv-tools; rendersystem_vulkan support for how dxc does $Globals / register offsets Sam's shader changes, most of this should just go to master now vfx_vulkan: compatability with shadergraph vfxcompile: display shader compile time in ms [hack] don't deal with instancing on SboxVertex for now, need some additional code around input layouts vfx_vulkan sets correct offsets & more reflection info for compute shaders, refactor rendersystemvulkan to use valve's new helpers, bump max samplers to 64, loads of other fixes spir-v remapper (size reduction) Use Vulkan 1.1 if avaliable to resolve VK_ERROR_INCOMPATIBLE_DRIVER, use Vulkan 1.2 when raytracing is avaliable Fix invalid command buffer in CRenderContextVulkan::ApplyDelayedChanges() [temp] don't mount any asset.party shaders vr_lighting.fxc: need explicit sampler lod as used from vs better logging & timeout for when the swapchain hangs, which it shouldn't be, but lets you know wtf is going on Update vfxcompile, less mpi shit, simpler parallel processing loop Reuse DXC instances per compiler (I think having 1 per thread would be more optimal), clean up the DxcIncludeHandler Update DXC, some memory allocator fixes IMalloc wrapper for our memory alloc to pass to DXC Latest compiled shaders
1 Year Ago
Use Vulkan 1.1 if avaliable to resolve VK_ERROR_INCOMPATIBLE_DRIVER, use Vulkan 1.2 when raytracing is avaliable Fix invalid command buffer in CRenderContextVulkan::ApplyDelayedChanges() [temp] don't mount any asset.party shaders vr_lighting.fxc: need explicit sampler lod as used from vs better logging & timeout for when the swapchain hangs, which it shouldn't be, but lets you know wtf is going on
1 Year Ago
Update Vulkan SDK + Volk Stub old vrad3-gpu, incompatible from using beta vk headers rendersystemvulkan: fix raytracing being required, remove VK_EXT_debug_report for VK_EXT_debug_utils vfx_vulkan HLSL compiler using dxc and spirv-tools; rendersystem_vulkan support for how dxc does $Globals / register offsets Sam's shader changes, most of this should just go to master now vfx_vulkan: compatability with shadergraph vfxcompile: display shader compile time in ms [hack] don't deal with instancing on SboxVertex for now, need some additional code around input layouts Add -renderdoc cli option for early renderdoc hooking Don't needlessly set g_TransformBuffer or g_TiledLightBuffer on Submit, already set on init vfx_vulkan sets correct offsets & more reflection info for compute shaders, refactor rendersystemvulkan to use valve's new helpers, bump max samplers to 64, loads of other fixes spir-v remapper (size reduction) Compiled most shaders (including complex)
1 Year Ago
Proper cleanup in CompileShader Compute shaders work Add -renderdoc cli option for early renderdoc hooking Up shader file version Command buffer access cleanup, debug marker fixes Don't needlessly set g_TransformBuffer or g_TiledLightBuffer on Submit, already set on init
1 Year Ago
Update Vulkan SDK + Volk Stub old vrad3-gpu, incompatible from using beta vk headers rendersystemvulkan: fix raytracing being required, remove VK_EXT_debug_report for VK_EXT_debug_utils vfx_vulkan HLSL compiler using dxc and spirv-tools; rendersystem_vulkan support for how dxc does $Globals / register offsets Sam's shader changes, need to review; shouldn't need to change this much probbly hiding issues with vfx_vulkan Yank away solidcolor, seems only old glow used it Fix warnings and errors in vfx compilation for vulkan Fix projected_decals crashing shader compiler Discard packoffset conflicts on vulkan, we don't care about code path, fix conficts on convolve envmap Remove generate_decal_normals Temp fix DXC not interpreting ShadingModel interface correctly vfx_vulkan: compatability with shadergraph vfxcompile: display shader compile time in ms [hack] don't deal with instancing on SboxVertex for now, need some additional code around input layouts [hack] manually adjusting some vs register offsets to get shit working
1 Year Ago
fix uninitialized memory crash vk debug utils in memorymgr
1 Year Ago
commit compiled spirv libs
1 Year Ago
hlsl_parser: strip D3D9 const defs hlsl_parser: remove d3d9 and opengl register allocation modes, remove glsl wrappers rendersystemvulkan: add missing debug utils check initialize these hlsl string variables so dxc likes them fix vulkan shader errors vfx_vulkan: baseline compiler using dxc and spirv-reflect, no glslang shit, still using legacy d3d preprocess Use DXC shader names MainVs, MainPs etc in vulkan pipeline rendersystemvulkan: remove VK_EXT_debug_report completely to remove confusion with VK_EXT_debug_utils vfx_vulkan: serialize reflection info in compiled shader Update descriptor set bindings for HLSL -> SPIR-V Update Vulkan SDK + Volk so we can have VK_EXT_graphics_pipeline_library volk.c: restore valve platform defines fix rendersystemvulkan requiring raytracing extension Hidden uav counters work on pixel shaders Update descriptor sets for new descriptor types & binding offsets from hlsl->spirv rendercontexts set associated thread index from RenderSystem_GetThreadIndex() instead of Plat_GetThreadIndex(), this avoids counting non-rendering threads keeping us well within our MaxDeviceAccessThreads Cleanup, small fixes, kill some dead code vulkan_async_descriptors Yank away solidcolor, seems only old glow used it Fix warnings and errors in vfx compilation for vulkan Fix projected_decals crashing shader compiler Discard packoffset conflicts on vulkan, we don't care about code path, fix conficts on convolve envmap Haha it'd be helpful if we actually call this method that sets all the shader param data. Now samplers actually get bound and we're rendering Forgot to commit this amongst debug crap Remove generate_decal_normals If we didn't find error shader don't bother trying to find a fallback you wouldn't get, just remove the layer, allows us to compile shaders from scratch with everything removed Don't use d3dcompiler helpers on vulkan DXC compiler, fix hlsl processor handling of include files Temp fix DXC not interpreting ShadingModel interface correctly [debug] disable fast descriptor set updates, much easier to debug shit that isn't being bound properly spirv-tools, spvremapper libs compiled to work with source 2 vfx_vulkan: post process with spirv-opt, need to do reflection after dead code removal otherwise materialsystem will try to bind invalid buffers stub out old vrad3 gpu code erroring from new vulkan headers backport new vulkan memory manager with support for BDA materialsystem2 support for BDA vfx_vulkan: add $Globals rewriting (without BDA), binding shifts after postprocess [temp] don't deal with instancing on SboxVertex for now, need some additional code around input layouts reenable fast extension for descriptor updates now that everything is binding properly vfx_dx11: fix compile errors with fxc shader compiler
1 Year Ago
[debug] disable fast descriptor set updates, much easier to debug shit that isn't being bound properly spirv-tools, spvremapper libs compiled to work with source 2 vfx_vulkan: post process with spirv-opt, need to do reflection after dead code removal otherwise materialsystem will try to bind invalid buffers
1 Year Ago
hlsl_parser: strip D3D9 const defs hlsl_parser: remove d3d9 and opengl register allocation modes, remove glsl wrappers rendersystemvulkan: add missing debug utils check initialize these hlsl string variables so dxc likes them fix vulkan shader errors vfx_vulkan: baseline compiler using dxc and spirv-reflect, no glslang shit, still using legacy d3d preprocess Use DXC shader names MainVs, MainPs etc in vulkan pipeline rendersystemvulkan: remove VK_EXT_debug_report completely to remove confusion with VK_EXT_debug_utils vfx_vulkan: serialize reflection info in compiled shader Update descriptor set bindings for HLSL -> SPIR-V Update Vulkan SDK + Volk so we can have VK_EXT_graphics_pipeline_library volk.c: restore valve platform defines fix rendersystemvulkan requiring raytracing extension Hidden uav counters work on pixel shaders Update descriptor sets for new descriptor types & binding offsets from hlsl->spirv rendercontexts set associated thread index from RenderSystem_GetThreadIndex() instead of Plat_GetThreadIndex(), this avoids counting non-rendering threads keeping us well within our MaxDeviceAccessThreads Cleanup, small fixes, kill some dead code vulkan_async_descriptors Yank away solidcolor, seems only old glow used it Fix warnings and errors in vfx compilation for vulkan Fix projected_decals crashing shader compiler Discard packoffset conflicts on vulkan, we don't care about code path, fix conficts on convolve envmap Haha it'd be helpful if we actually call this method that sets all the shader param data. Now samplers actually get bound and we're rendering Forgot to commit this amongst debug crap
1 Year Ago
Haha it'd be helpful if we actually call this method that sets all the shader param data. Now samplers actually get bound and we're rendering