3,073 Commits over 1,552 Days - 0.08cph!
Protect against invalid transform in CPhysicsBody::AddMeshShape, fixes crash some games are having
Bounds checking in izCreateBVH to be safe
Use order attribute in component sheet to allow property order
Add scene mesh tools https://files.facepunch.com/layla/1b0611b1/sbox-dev_Ml4FygXEwC.mp4
Remove these editor checks, we want to still update the mesh while playing
Polygon mesh and mesh component
Add Mesh.TriangulatePolygon to triangulate a polygon without needing a massive library
Move primitive builders to Editor.MeshEditor
Fix scene asset drag drop not working while an asset is already selected
If drag drop trace doesn't hit anything, try hitting grid plane
Check for non uniform scale properly
Approximate hull for sphere collider when it has non uniform scale https://files.facepunch.com/layla/1b2511b1/sbox-dev_cEmmJpViho.mp4
Change nudge shortcut to Alt+ (blocks text input otherwise)
Build runtime models ray trace objects with mesh collision data, this makes more sense for now and doesn't fuck up triangle order when you want multiple materials
Add arrow key nudging to scene menu https://files.facepunch.com/layla/1b2411b1/sbox-dev_jsu3UScQxU.mp4
Add IMaterialSetter for material drops
UseRenderMeshes for material drops as they don't care about tags
Make these functions more readable
Add Rotation.ClosestAxis - Will give you the axis most aligned with the given normal
Add Gizmo.Nudge - Will give you a nudge vector along the most aligned left and up axis of the rotation
Fix PositionEditorTool not snapping properly in localspace
Editor tools can create subtools, move, rotation, scale become subtools
Change Gizmo.Contol.BoundingBox to new box resize gizmo because this function isn't being used anymore
Create runtime buffers for dynamically created meshes so they can create trace data, allows them to be scene traced
Early out of CreateToolsTriangleList when there's no runtime buffers but also assert because ideally this should happen
Init frustum as ortho when using ortho, fixes PointToScreenPixels. Obsolete OrthoWidth
Adjust size of EnumControlWidget popup to see if that fixes weird position sometimes
Also don't add icon button if there's no icon
Clear cache body parts on model so that bodygroups in inspector can update properly
Add material groups and body parts to their control widget value hashes so they refresh on model reload https://files.facepunch.com/layla/1b1511b1/sbox-dev_10llRRdkD3.mp4
Add PhysicsBody.AddCylinderShape and PhysicsBody.AddConeShape
Add hull collider component to combine multiple hull shapes with selector (box, cone, cylinder) https://files.facepunch.com/layla/1b1511b1/sbox-dev_KwarwIJ8dm.mp4
Fix Camera.RenderToTexture incorrect aspect when using ortho, just use ortho height, we don't use ortho width and it should be removed
Add SkinnedModelRenderer.AnimationGraph to override animgraph
Abs the radius in Gizmo.Draw.LineCylinder so it isn't all fucky
Allow multiple ShowIfAttributes, will show property if any of them are true
Add SerializedProperty.GetAttributes, will be needed if we want to get multiple attributes
Fix triggers activating when collision default is set to ignore
Add joint break strengths to modeldoc
Support Scene.trace.Body (todo: multi, sweep) https://files.facepunch.com/layla/1b1211b1/sbox-dev_G86CwDirl8.mp4
Setting SceneModel.AnimationGraph to null resets to model animgraph instead of crashing
Fix ColorControlWidget popup not constraining to screen
Creating an invalid hull or mesh physics shape will always return a valid shape (tiny sphere) so warn when this happens
Title case and remove whitespace when creating new components
Add Rigidbody.MassOverride
Add plane collider because I'm sick of thin boxes being used for floors
Add some more safety checks around joint creation
Remove joint from broken joint list before it gets deleted
Add hit shape to damage info
Include hit location in DamageInfo
ModelPhysics gizmos sync to physics group
Make sure ModelPhysics always finds a root body to use as game object transform