248,631 Commits over 3,928 Days - 2.64cph!
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
Update: added ability to display sub range of thread track in Bin viewer
- also supports rudimentary [N] input to resolve syncpoint indices
- added mark index to view as well
Tests: vizualized borked editor snapshot
exported 4 reload anims for vm mini crossbow and the rig again so all 4 bolt joints are in the correct postion
More checks to prevent a user from pushing the siege tower from a higher point on the tower
Searching by filename with extension will test correctly with assets too, fixes Facepunch/sbox-issues#7174
Navigate to project root instead of selecting engine asset when ShowBaseContent is disabled, fixes Facepunch/sbox-issues#7175
Move 'Show Base Content' toggle to asset browser toolbar so people stop acting like I've stolen their car keys
https://files.facepunch.com/solw/2024/December/17_16-46-AquamarineHound.png
Cache GameObject bounds
Fix a few things inside occlusion culling render layer
Wrap occlusion objects inside a record
Remove more native occlusion culling stuff
Build shaders AFTER managed
- Dont use Protected flag
- Added up to Reserved19
Santa jacket/trousers lods (citizen version)
Another merge fix
Shader bats use new exe
Logs in logs folder
Cleaning up
Progress
Shadergraph use shadercompiler
Time the whole block
Update: display call depth for marks in bin viewer
Makes it easier to track callstack consistency at sync points.
Tests: opened borked snapshot from editor
Make sure turning direct/indirect lighting off still works on managed lightbinner layer
memdbgon.h doesn't belong in a .h file
Removed animation rigging package (added when experimenting on horses during hackweek)
Fixed siege tower wheels using incorrect material on LOD3
Lightbinner layer managed
Fix ObjectHighlight.shader
-Add more profile markers to heli
-Use fast broad grid check instead of precise one (heli range is 150m but cells are 32m wide, so we are not getting that much precision by using the narrow phase)
Update: reworked the bin vizualizer to have a different layout
- Able to jump to sync points in the list
- Able to view specific thread's stream
Couldn't figure out how to do nested dynamic scrollviews, so went for a different approach. Already revealed a question mark about some names having invalid characters at the end, though doubt it's the contributing factor
Tests: loaded up a borked binary snapshot, was able to inspect it
Initial
Use spheres so we only have to send a single list of vec4s over
Gather objects
Split logic into COcclusionCullingStandard
Change order, gather correctly, readback, count visible + culled objects
Reject occluded objects, tweak gather & shader
Improved gather, only select the objects we want
Shader re-write, output object depth and buffer depth for debug
Put debug spew behind convar, tweak shader
Tidy up, add CSceneObjectCullingData, add user-controllable per-camera toggle for occlusion culling
Stash shader before I re-write to use AABB
Switch to using bboxes for slightly more accurate results, hi-z mip checks
Start moving all this over to managed, we can benefit from various things here
Hopefully that prevents all building spots on the tower