248,556 Commits over 3,928 Days - 2.64cph!
environmentmapped bool is bullshit now that cubemaps are gpu driven, add stub EnvironmentMapping.hlsl
Detangle all of this, vr_lighting never directly referenced from any of our hlsls now
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
Lightmapping definiton should be in shadingmodel.hlsl not Material.hlsl, that works only as a contract to shadingmodels, fix toolvis on shadingmodelstandard
day night light color
day night light movement
zombie night spawn
crates
DynamicLight refactor
Refactor StaticLight class, can do Light::From() to get all lights (static/dynamic) at once
https://i.imgur.com/jqko5ON.mp4
Remove more crumbs off S_MODE_TOOLS_VIS
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
Cherrypick from the smoothstep
Antihack kicks reserve a slot for queue bypass
Nag message to remove S_MODE_TOOLS_VIS
Use single path for vr_common_ps_code to match what's on shadingmodel, eventually to just delete all of it, remove unused DISABLE_TONEMAPPING
Move BRDF stuff to BRDF.hlsl, organizes it and makes it easier to move to CS2's one with multiscatter
Fuck off with LightingTerms for toolsvis, we should be accepting any structure
Remove unused ShadingModel postprocessing ( handle it better )
ToolVis in a class
Single ToolsVis.hlsl, tidy it up
Initial ToolsVis without ToolsVis mode, cleanup some unsued
Remove last LOD from excavator bucket wheel so the wheel can always be seen spinning
- allows you to see if excavator is active from >100m away
Goodbye S_MODE_TOOLS_VIS combo
Enumize ToolVis modes, dont keep this logic on shared_standard_ps_code
Shadingmodel uses Fog::Apply instead of duplicate DoAtmospherics
Add namespace_name to antlr grammar so that we can do "type Class::Function()" definition instead of defining all in class itself, we should just let it accept any HLSL
Handle AmbientLightKind::LightMapProbeVolume and AmbientLightKind::LightMap
Shading Complexity in ToolVis, quad overdraw isn't even working now, and certainly doesnt need it's own shading mode, can make all materials use same shader
Remove CUSTOM_MATERIAL_INPUTS and CUSTOM_TEXTURE_FILTERING, vfx optimizes it out if not used
Remove D_BAKED_LIGHTING_FROM_VERTEX_STREAM, never used
Rewrite AmbientLight into a class, stub
▉▄▅▇▅ ▆▉▆▊ ▌▆█_▅▉▋▄█▍▄█_▄▌▇▆_▋▆▍▅▆▉ -> ▅█▌▇
▄▋█ ▄▊█▄▋▉▉▉ & ▊█▍▄▇▄▆▍▄ ▍▉▆ ▍▊▉▄▉▍▋ ▌▅ █▆▆ ▊▊▄▉▉▌ ▍▄ █▉▆▊▇▅▄ & ▅▄▍▄▊█▉ ▉█▅▇
Santa jacket uses neck_clothing bone to minimise twist deformation
Battering ram broken state loading
merge from fix_copy_paste_wires -> main
Fix auto-snap not being disabled when client convar is disabled
Make this readonly list so it can't be fucked with
Remove debug logging from copy paste
Fix wires being at wrong height when paste is auto-snapped to the terrain
Battering ram door loading
Allow AssetType to get all file extensions, primary and additional
Remove hacky fix for image extension tags, do it properly
merge from fix_quick_craft_multiple -> main
Fix error handling
Don't call DeleteOldShadersFromCache at startup - this is like 1.5 seconds of nothing
Only load vfx_vulkan.dll once
Restore propane bomb world model
▆▍▇▇▌▄▆▆ ▍▋▍ ▉▉▆▍▆▊▆ ▊▄▅▇▄ ▇▇▆▍█▇▇ ▄▋▅▍▋ ▄▌▆▆ ▅▌▇▊▄▋▌▅
PoC spline collisions
Currently just super hacky static mesh/model collision
https://files.facepunch.com/lolleko/1b1711b1/sbox-dev_03QtKgtfYW.mp4
- adjust ray march step count for the different quality levels, 128 at highest, 56 at lowest
- add jittering to ray origin to disguise artifacts from lower step counts, with jittering intensity reduced towards horizon to prevent too much noise
- fix slow render target resizing
- fix reprojection issues
- adjustments
Battering ram door joint can now break
When breaking, we spawn a door server gib
Update: added search support to bin snapshot viewer
I think I have all I need to explore the broken profile
Tests: opened the borked profile snapshot
handle non interactive command line
Shader building bat files should return 1 if any errors happen
Santa jacket/trousers lods (human version)
Siege tower doors now reverse backwards if theres something in the way whilst opening
Humans: add temporary intercardinal movement animations derived from offset cardinal directions + use new mixed animgraph setup
mutelist_expose_steamid -> main
Expose users steam ids on chat.mutelist
Bugfix: fixed reading string f rom the binary snapshot
- Forgot that they're not null terminated - this fixes random characters at the ends
Tests: Opened borked editor snapshot
Don't init vulkan if consoleapp
More building volume changes to try and allow door placement