8,073 Commits over 3,806 Days - 0.09cph!
Disable detailed hotload diagnostics unless hotload_log >= 2
Box tool interaction fixes
Can draw new geometry with the box tool
MoveTool tweaks to stay aligned to the grid
ToolBar options are now checkable
Nicer behaviour when dragging nested CSGs into viewport
Fixed gizmos being invisible
Add some logging to AsyncTasks.TaskCancel2
To help investigate #210
Allow TaskSource async methods to persist, so they can cancel nicely
Use framework methods to find async state machines / tasks
A bit more protected against changes
Bump up max async task cancellation count
Get rid of debug hotload log
Added failing test reproducing #869
Fixed #869, emit a warning when fields change type instead of an error
Fixed sboxgame/issues#3043
Failing test case to reproduce #876
Fixed #876
HOTLOAD_NOCATCH will stop hotload from catching exceptions
Nicer drag / drop to import nested assets
Ctrl+C / Ctrl+V, Delete keyboard shortcuts
Removed logging
Can now drag / drop multiple brushes at once in the brush list
Basic rotate tool
Rotate all selected objects
Rotation snapping
Can now select / deselect brushes by clicking in the viewport
Tweaked tool icons
Box tool visual tweaks
Fixed serializing bounds of compiled solids
Store mins and maxes instead of BBox in compiled solids
Added a BBox.Contains(pos) overload that takes an epsilon
Added CsgPlane.TryTrace(ray)
BoxTool only operates on one brush at a time for now
WIP raycasting
Added ConvexSolid.Bounds in compiled assets
Failing test for lambdas implemented as static methods
Split nested scope method delegate tests
Support for lambdas with nested scope methods
Fix position widget being relative to object rotation
Split up tools into classes, add tool bar
Drag and drop in tree view to reorder brushes
Fixed editor brushes breaking after saving
Refresh geometry if a referenced CsgAsset changes
Drag other CSG assets into viewport to import them as nested object
Middle-mouse drag to pan camera in FirstPersonCamera (#854)
Middle-mouse drag to pan camera in FirstPersonCamera
Stip out old gamemode code
WIP editor rewrite
Using a new brush system
New wireframe shader for brushes
https://files.facepunch.com/ziks/2023-02-28/sbox-dev_YmLTpr5SVj.png
Property editor for selected brush
Compiling / saving CsgAsset
Basic context menu duplicate / delete
Testing out immediate mode stuff
Working on box scale gizmos
Scaling gizmo works for all axes
Scene -> Gizmo, scale gizmo tweaks
Smarter invalidation of elements, visual tweaks
Set default camera transform
Add editor camera transform to CsgAsset
Smarter invalidation of elements, visual tweaks
Scene -> Gizmo, scale gizmo tweaks
Working on box scale gizmos
Scaling gizmo works for all axes
Brushes store angles instead of quaternions
Testing out immediate mode stuff
Test for block copying List<T> or T[]
Lists of structs can use array block copying again
More direct copy for StructArrayConverter
Fix possible NRE when logging about methods without declaring types
Fixed setting size of block-copied list
Fixed setting size of block-copied list
Fix possible NRE when logging about methods without declaring types
Basic context menu duplicate / delete
Test for block copying List<T> or T[]
Lists of structs can use array block copying again
More direct copy for StructArrayConverter
Property editor for selected brush
Compiling / saving CsgAsset
Some JsonIgnore
Made CsgSceneObject.GetAllHulls public
Fixed clearing CsgSceneObjects
Icon tweaks
New wireframe shader for brushes
https://files.facepunch.com/ziks/2023-02-28/sbox-dev_YmLTpr5SVj.png