4,375 Commits over 1,583 Days - 0.12cph!
Izabu: Move triangle shifting further up the callstack so the fix gets applied to sphere and capsules too
Fix async warning in PreviewMesh
Make joint more robust in finding physics bodies, improve the gizmos a bit
Better anchor points for spring joint
Fbx serializer is too spammy
Ignore unknown color formats in CMesh::CalculateInputLayoutFromAttributes
Don't create model for preview mesh if there's no valid meshes
Don't preview smd for now
Asset preview for fbx, obj, smd https://files.facepunch.com/layla/1b1211b1/sbox-dev_uPe3bKuNAh.png
Proper fix for hull vs mesh at large coordinates (thanks dirk)
IzTriangleHull calculates center with doubles, I have no idea why this fixes triangle collision but it does
Check all conditionals in SerializedProperty.ShouldShow, should make multiple ShowIf's work again
This bounds checking in izCreateBVH is wrong
Same bounds fix for DirtyControlMapRegion
Hide terrain component, don't create this manually
Make block primitive hollow option work
Clamp instead of throw in DirtyHeightmapRegion so we can paint on terrain boundary
Collide against heightfield grid instead of trying to triangulate it exactly, slightly less accurate but faster
Draw open edges with half thickness
Render open edges with smaller thickness until I render hash marks for them
Add PolygonMesh.IsEdgeOpen
GetEdgeVertices has two out vertices, instead of returning array
Create grid debug shape for heightfield, faster but could be faster
Don't build steam audio static mesh for heightfields, too slow currently (do we care?)
Update terrain collider when terrain is dirty
MeshEditor: More robust u and v axis face calculation, only set texture axis if the face can calculate a valid normal
Delete block tool scene object if creation gets cancelled
Support heightfield in CPhysicsShape::GetTriangulation
Move resize box to world space position before snapping it https://files.facepunch.com/layla/1b0711b1/sbox-dev_fVEF49E04T.mp4
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