256,578 Commits over 4,018 Days - 2.66cph!
Cancel any active gesture on player disconnect
merge from primitive -> aux2
merge from primitive_gm -> primitive
Fix tech tree buttons returning the wrong tier of tech tree
Refactor into `TechTreeData.IsAllowedInEra( era )` to keep logic clear
merge from lunar_new_year_2025
merge from isolate_Jan_wipe/LNY_merge_release_friendly
cherrypicking lunar_new_year_2025
Wrap IResourceCompilerContext
Find "$compiler" in resource json and launch compiler
Resize vertex cache buffer when out of space
Add rotation toggle and face cullmode options in foliage billboard shader. Update all relevant materials which had the old unused _Cull property with the default off.
Use remaining bytes in extra shader data to hold base vertex cache offset, add another vertex id lookup buffer relative to meshes vertex buffer size offsets - this allows correct indexing into cached vertices while remaining backwards compatible
Compile shaders
When running "Populate T0" in tech tree editor tool, ensure that only items that are allowed in the era populate the tech tree
Leaderboard backup, run #
17045
Add TextureGenerator boilerplate
TextureControlWidget poc
Fix NRE in SpriteRenderer when texture is null
TextureControlWidget creates a child ResourceControlWidget instead of trying to be one
Draw texture preview
Standardize internal way to async replace placeholder textures
Add Sandbox.Utility.ForAsync
TextureGenerators are async
Add IPopupEditor<T>, EditorUtility.OpenControlSheet looks for this interface when creating a popup
Rename ControlSheetPopup to PopupEditor, make more modular so we can override important bits
Add TextureEditorPopup
Clean up TextureControlWidget
Add Color.Rgba16 (half based color)
Add Bitmap class
More bitmap stuff
Bitmap draw and bitmap pen
Bitmap drawing fixes
Bitmap clone, IDisposable, IValid
Merge from cmbrainenabled
Merge from cmbrainenabled
Fix cmBrainForceDisable convar running in edit mode
Ensure techtree filters out items that are not allowed in the era
- items don't move into the correct location yet but at least you only see items you can craft in the current era
Optimize opening tech tree to make it 4x faster
- 500ms -> 130ms lag spike
- 55MB allocation -> 13MB allocation
- initially thought it was above changes causing it but was long standing issue
Fixed swapping seats blocking the horse
Passenger can't send local input to the horse
Fixed door skins skin ids
Add menu item for "Update Game Manifest (optimized)" to allow you to use the faster generate manifest optimization in the editor (instead of only on the build server)
merge from primitive -> primitive_gm
Distortion voodoo to fake the rammed wall shaking on impact.
Merge from industriallights_skins
merge from primitive_gm -> primitive
Don't show train tunnel markers inside monuments on the map when underground tunnels is disabled (since they are blocked off with debris)
Some tests on changing the catapult boulder for a scatter shot
Change reward of shark hunt mission (since it gives out jackhammer but those are loot only now)
- 1 icepick + 3 med syringe instead
Change reward of "free crates" diving mission in primitive era
- used to be pump shotgun, but that's restricted now
- instead give 1 combat knife, 1 small backpack, 1 compound bow + 32 arrows
Add support for missions to return different rewards in each era
Update light skin ids so they don't conflict with primitive
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
Double Clicking a Subgraph Node instantly opens the Subgraph
Implemented the file history forward and back buttons when navigating through multiple ShaderGraphs in the same window
https://files.facepunch.com/CarsonKompon/2025/January/21_18-29-MidnightblueSandbarshark.mp4
Added a dedicated TerrainCollisionProxy collider for the horses
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