32,174 Commits over 4,018 Days - 0.33cph!
Eliminated GC allocs from BaseEntity.UpdateParenting
Updated multiple descriptions
Phrases
Enabled biome tint on lowest high external lod (no mask)
Added packed version of rust/std-terrainblend
Packed rock _cliffs_atlas and road_ground_layer (dependencies)
Added keyword for biome mask texture + added to mats using it + updated shaders
Split some rock occlusion from diffuse (terrainblend now uses separate) + updated mats
Tweaked EntityLink default capacity
Optimized MaterialColorLerp
RenderInfo debug tool no longer duplicates materials when called
Disabled PlanterBox, EmissionToggle, LaserBea, FlashlightBeam and VendingMachineScreen material adjustments since they were all leaking materials / memory
Removed TransformEx.FindChildren since it's super inefficient and now unused
Fixed material / memory leak from mining quarries
Eliminated GC allocs from MaterialColorLerp.RefreshRenderers
Eliminated GC allocs from PlantEntity.UpdateSkinParameters (called from PostNetworkUpdate)
Packed train track and wagon material set (8 materials)
Fixed case where material packer ignores maps that match perfectly
Fixed ignoring non-opaque materials for texture usage report
Re-enabled dynamic batching (too many changes on staging this week, let's compare again next week)
Eliminated needless group creation when trying to destroy an empty network group on the client
Eliminated GC allocs from BaseNetworkable.NetworkDestroy
Packed high external wall LOD material
Disabled detail layer in high external stone wall
Just use prefab name on the client in Entity.ToString() to avoid GC allocs
Eliminated GC allocs from MaterialReplacement
Eliminated GC allocs from ItemContainer.Load
Fixed metallic scale in metal_beam_b_refinery_lod (e.g. large furnace)
Adjusted some memory pool sizes
OnInventoryChanged profiling
Fixes to avoid Material.SetPassUncached + touched all rust/std shaders
Fixed Server.DestroyNetworkable not calling Networkable.Destroy when returning networkable to pool
Disabled dynamic batching (experiement)
Merge from gc_optimizations_2
Scientists no longer drop 1000 LR300 weapons (Temp loot table fix for Staging playability)
If ai_dormant is on, only tick metabolism simulation on agents that are active.
Merged from ai branch to main
Added terrain atlas generator ability to load non-read/write textures
Switched all terrain4 textures to non-read/write
Packed all materials depending on terrain4 textures
Packed a few rock and prop materials + recycler
Fixed shader packed map labels
Added packed version of standard-specular shader
Fixed packing getting flat specular when scaled up
Keywords permutation parity between metallic and specular shaders
Packed some larger materials
Fixed specular not driving packed map size
Packed props/large_industrial_props and props/office_furniture materials
▊▄▇█▊▊▊▉ █▅▅▆█▋ ▉▊▊▍▊▇▅▆▇▄▆ █▅▍ ▅▊▊▄█▍▉
Subtracting gc_optimizations
Added LOD mesh swapping support to StagedResourceEntity
Fixed ores using the wrong mesh in the distance when partially broken