13,177 Commits over 1,522 Days - 0.36cph!
Add internal functions for updating spheres, capsules and hulls
Plane collider can be resized without recreating the physics shape
Move this internal resize attribute to collider so I can make use of it for all the other colliders
Rebuild or update collider if they're a child of the rigidbody object and their local transform changed https://files.facepunch.com/layla/1b2111b1/sbox-dev_UFKO9q1Mrr.mp4
Fix hitbox adding box shape twice the size
Add Box Gizmo to Hitbox Component
Use SRGB texture in text shader
Fix calling Update for the active scene in editor for every scene that was open
Only sort children if it's needed
More optimizing
I'm not sure that the RENDER_BUFFER_DYNAMIC_VERTEX_FIXED_SIZE size restriction still exists
Text rendering use anisotropic
Switch text shader to use bindless (to see if there are any perf changes)
Terrain Materials accept dragged cloud assets
Convert the rest of RenderAttributes stuff to use StringToken
Move SetRenderState out of the draw loop, called manually
Add internal, templated Graphics.Draw<T>
Delete PanelRenderer.Text.cs
VertexLayout is public, has attribute system to define vertex layout
Don't push identity matrices when rendering UI
Fix last particle not processing
Add pitch and yaw to particles
Tick correct session in SceneViewWidget. Fixes occasional `Error calling 'tool.frame' on 'Editor.SceneViewWidget'`
Improve flatten tool, first stroke saves a plane to trace against to get flatten height and uv https://files.facepunch.com/layla/1b2011b1/sbox-dev_KIb8siErec.mp4
Update dirty collider region for heightfield materials
Fixed distance early out AO (distance black)
ditto
Merge branch 'master' of sbox
Hook up File -> Open Scene (Resolve TODO)
Particle system optimzations
Fix for edges against distance objects
(i) do not apply AO on distant pixels (eg. skybox)
(ii) when calculating ao, any sampled pixel that is too distant will be rejected as a contributor to AO
Merge branch 'master' of sbox
PerformanceStats.Timings lockless
Make prefab variables section of heirarchy resizable, Facepunch/sbox-issues#5726
Remove SceneObject.GetSceneWorld()
Remove SceneObject_UpdateRayTraceTransform
Instead of updating SceneObject RayTrace's every time they move, lets mark them dirty and update them when the raytrace is actually used (which is probably never)
Don't cause a rebuild for mesh component when transform chances when scene is not editor
Remove hack from mesh component that is stopping hulls from being kinematic
Stop launcher from undoing editor prefs changes when kept open, fixes Facepunch/sbox-issues#5857, Facepunch/sbox-issues#5825
(Cookie containers will now process/accept new changes on disk before writing)
Revert "Don't create an empty gameobject when getting a cached scene if the prefab doesn't exist" - causes issues for prefabs on boot
No need to pin this memory anymore, height shape makes a copy of it
Update height collision region
Update height field without recreating the shape
Don't keep setting terrain collider to static if it's already static, this is causing an on dirty, don't dirty collider on heightmap region dirty, we should be able to update this faster
Don't create an empty gameobject when getting a cached scene if the prefab doesn't exist
When host loads a new scene, send a message, and have all connections reconnect to the game. We'll do this in a much better way later on
Better fix for English (US) keyboard layout being force added/removed
Add shapeless heightfield cast for Terrain.RayIntersects
Check scene camera .IsValid instead
Add undo snapshots when creating objects, don't double up creation/selection snapshots
Clear undo stack when accepting external changes
TerrainMaterialList: Double clicking a material opens its editor (single click selects for use still)
Terrain settings hide Collider properties which we force, can we have Terrain not inherit these at all @aylaylay
Terrain: larger default clipmap extents (fine but can be smarter without a clod mesh), remake clipmap mesh on dirty properties
Terrain: Add MaterialOverride for custom shaders using terrain shader api
Move CodeGen to Engine, add engine assembly reference to allow it to resolve symbols from that
Add StringToken.ConvertAttribute, for codegen to detect situations where we want to upgrade
Add MurmurHash2 to generator
When a StringToken parameter is passed a string literal we codegen that to the token, to avoid the lookup/generation
"chicken" becomes StringToken.Literal( "chicken", 855234573 ), which returns a StringToken
Add ProjectReference from Sandbox.Game to CodeGen, to avoid out of order compiling
Box collider rescales without rebuilding the shape
Allow reassigning prefab source, spruce up instance inspector a bit, don't totally shit pant when prefab is missing
Fix post processing (was passing in ITexture as an int)
DynamicSceneObject: AddVertex( Span ) should not accept a count, internalize ptr only method, VertexSceneObject adds range
Add StringToken alternatives to RenderAttributes
Wake connected here too for good measure
Don't dirty box collider on size change, update the hull instead - fixes trigger enter/leave when resizing
Add internal UpdateBoxShape, box collider will use it
Update mesh shape by updating the BVH instead of recreating the whole shape
Turn on trace solver again, looks like it performs much better
Use worldspace cloud here for the obstacle, it's always identity so no need to transform it