51 Commits over 151 Days - 0.01cph!
Store mins and maxes instead of BBox in compiled solids
Added a BBox.Contains(pos) overload that takes an epsilon
Added CsgPlane.TryTrace(ray)
Added ConvexSolid.Bounds in compiled assets
Add editor camera transform to CsgAsset
Brushes store angles instead of quaternions
Some JsonIgnore
Made CsgSceneObject.GetAllHulls public
Fixed clearing CsgSceneObjects
Icon tweaks
Some renaming, new asset format
CsgBrush can have per-solid materials
Add CsgSolid.CalculateBounds
WIP refactor to split tools from runtime code
Fixed possible exception when first creating solid mesh
Fixed case where hull neighbours wouldn't update
Made CsgHelpers.LinesIntersect public
WIP construct prism brush out of vertex list
Support for runtime-created CsgBrushes
Add CsgSolid.DisconnectIslands boolean
Switch to using RPCs to send modifications
Merge sub-faces greedily #9
Fixed IsStatic not being networked
CsgHull merging, refactor
Remove redundant vertices from hulls
Early intersection check before modify
Fixed crash when deleting a CsgSolid
Grid-based connectivity checking #8
Grid-based spatial partitioning #1
Use separate SceneObjects for world chunks
Fixed connectivity check / disconnection
Some cleanup
Fixed connectivity check / disconnection
Some cleanup
Use separate SceneObjects for world chunks
Grid-based spatial partitioning #1
Fixed splitting large solids by a grid
Swapped MeshUpdate and CollisionUpdate, fixing #2
Manually call Disconnect() to trigger a connectivity check
Attempt to fix all colliders being refreshed unnecessarily
WIP materials
Basic support for different materials
Fixed possible crash when removing colliders
Make sure client copy of disconnected solids have initial geometry
Fixed fully subtracting CsgSolids
Calculate mass for disconnected objects
Wake up CsgSolids on modify
Fixed CsgSolid.WorldToLocal
Disconnected geometry becomes a new entity
Fixed collision body not being valid on client
Added CsgBrush resource type, networked edits