5,121 Commits over 1,552 Days - 0.14cph!
Dedicated server starts up properly
Remove ProjectConfig.Tags
Add Package.UpdateValue( key, val )
Add debounce to Package.UpdateValue
Add SerializedProperty.Create()
Can edit some asset properties inline
Package.Type.Gamemode becomes Package.Type.Game
Can publish any asset, scene + prefab previewers
Published assets can optionally include source files
Add algorithmVersion to vtex crc if GGXCubeMapBlur
Increment sky shader version, forces material rebuild, which forces a texture rebuild
DynamicSceneObject can take vertex span instead of one at a time
Process particles in a GameSystem, all at the same time, to benefit from multithreading
Fix Component being decorated with IUpdateSubscriber, IFixedUpdateSubscriber (making it useless)
Don't do MakeNameUnique() if we have > 100 siblings, don't always create a hashset
Lets cache TypeLibrary.GetTypes( t ) - and invalidate when things change - this significantly improves TypeLibrary performance
Completely remove the locking from Performance.Scope
Benchmark fullscreen is borderless
Optimize performance scope to not lock, not create
Use custom implementation of .HasFlag for mostly unnessecary optimization ( .Contains() )
Micro optimization, use RenderAttributes.SetComboEnum<T> instead of SetCombo (avoid boxing)
Avoid creating a Func when getting friend state
avoid creating an array when iterating CircularBuffer
Fix player count in GameLobbyGroup
Fix warnings
This stops the creation of boxed steamids, somehow
Scene.RunTrace optimization (test)
Add Diagnostics.Allocations
Temporary allocations dock
Send allocation info with benchmarks
Force render settings for benchmark
Actually save the project list when adding a project to it
Add OnParticleDestroy, OnParticleCreate properties for actiongraph
https://files.facepunch.com/garry/6ee12c48-30bf-40f9-a246-301d48cd61a2.mp4
Don't think ControlWidget if it's not visible
Add Style.HasBorder
ComponentEditorWidget default size mode
Margin.GetEdges optimizationj
Add Paint.SetFont, Paint.Rect (from Styles)
Add EditorUtility.Projects.ResolveCompiler( assembly )
TabWidget has a no text mode, icons only
Add experimental StyleWidget
Add custom inspector for Particle Effect
Moved asset.party to sbox.game
Update to steam sdk 1.60
Make game focus when playing in editor consistent, instead of having to click on it sometimes
Push scene scope when setting up camera, fixes sbox-issues/issues/5730
GameObjectFlags.DontDestroyOnLoad works
Session hash is a guid
Benchmark service
Remove debug
Benchmark api input
SkinnedModelRenderer - add string based bone getters
Fix GetPlayerStats caching wrong
LocalFileSystem cleanup
Add Application.HoveredWidget
Hide EngineOverlay if the game isn't visible
Fix SceneViewport hasmouseinput logic
Add Transform.ForwardRay
Fix editor not finding resources in libraries
Add GameObject.Clone( prefabPath )
Add copy/paste by right clicking property labels
Can set animgraph bool params using numbers
GameEditorSession stores the session that spawned it
Add SceneEditorSession.Resolve, GetParentSession
Can right click properties in game session and apply their tweaked values to editor session
Increase/Decrease grid size shortcuts were the wrong way around
Add grid axis selection in perspective viewport
Shutdown Tools properly on launcher exit
Add Close On Launch option to launcher
fix debug compile
Simplify how RecentScenes works
Load editor MRU and tags after all assets have been imported
Move Scene.Save to EditorSession.Save, update scene name/path on saveas, record asset as opened
Loading a prefab in editor loads the cloud assets
Fix NRE when setting border size to a %
Yoga3
* Latest version (fixes, additions)
* No longer relies on thirdparty facebook.yoga.dll
* Uses our interop system (faster)
* Much cleaner implementation
Remove yoga from vpc groups
Update to yoga 3, embed in engine
vpc fixes
Remove Facebook.Yoga
Convert style setters
Bug fixes
Add tests
It's important to yoga to be fp:precise because it uses nan
Measure functions
Restore to previous defaults
Fix package card style (now position: absolute is fixed)
Consolidate enums
Support for `align-content: space-evenly`
Consolidate enums
Support for `align-content: space-evenly`
Measure functions
Restore to previous defaults
Fix package card style (now position: absolute is fixed)
Add tests
It's important to yoga to be fp:precise because it uses nan
Update to yoga 3, embed in engine
vpc fixes
Remove Facebook.Yoga
Convert style setters
add support for multiple scene views, orthographic scene views, and configurable grid axis
add keybind to cycle camera plane around selection
refactor bits into SceneEditorViewport, re/store gizmo settings alongside viewport cookie
rework to single layout and splitter, disable new tab creation for now
add support for per-widget toolbar actions
save/restore sceneview layout
move viewport/instance gizmo settings to EditorCookie from ProjectCookie
move save/restore viewport cookies to addon space
no reason to copy+set camera transform anymore
use active SceneOverlayWidget directly
use a single toolmanager instance
fix nudging
remove some global gizmoinstance refs
tuck camera alignment shortcuts away in camera menu
maintain layout config when toggling viewport fullscreen
remove log
camera fixes: make orthographic clipping more predictable, add smooth(er) perspective/ortho transitions, fix gizmotest widget, reenable scene camera copy
add setting to lock scene camera rotation
fix incorrectly sized gizmo hitboxes in ortho view
replace remaining direct scene camera transform accessors
tweak sprite gizmo hitbox scale in ortho views
cleanup scene tick/draw flow with multiple viewports
replace legacy global GizmoInstance
snip unneeded multi-tab leftovers
use state/gizmo settings for scene view control
replace remaining ray length with Gizmo.RayDepth
don't try to save scene-specific viewport config for untitled scenes
use alternate check for IsUnderMouse
move viewport settings to ViewportState from GizmoSettings, use shared gizmo settings for all viewports
shift camera settings to EditorPreferences, simplify viewport options
restore single EditorScene gizmo settings
revert camera extension changes, fix pan and orbit zoom, tidy
use hammer's linked splitters for uniform viewport resizing
Misc fixes
Move EnablePostProcessing from GizmoSettings to ViewportState
Default each viewport to a unique perspective
Misc post-scenetab fixes
Hide skybox in 2d views
Split scene view layout/viewport classes into separate files
Tidy
Use frustum RayDepth for terrain, hitbox traces
Make 2d clipping less crap
Use black background for 2d views
We don't need to do this anymore
Fix perpendicular rotation handles being unusable in ortho views
Fix 2d box selection: Frustum.FromCorners does ortho properly, gizmo tweaks
Use correct gizmo settings for dragdrop
Use correct plane for 2d view drag drop
Prevent map cookie from overriding 2d viewmode rotation
Draw grid on top in 2d views
Merge branch 'master' into hackweek-multi-scene-view
Add Widget.GetAncestor<T>
Move Grid, Scene toolbars to header bar, remove SceneViewToolbar
Fix warnings
HeaderBar switch layout
Tweak viewport menu, so you can see the checkboxes
Merge pull request #1582 from Facepunch/hackweek-multi-scene-view
Multi-viewport and Ortho Scene views
HeaderBar switch layout
Tweak viewport menu, so you can see the checkboxes
Add Widget.GetAncestor<T>
Move Grid, Scene toolbars to header bar, remove SceneViewToolbar
▄█▅'▋ ▍▅▇▄▊▌ ▊▉██ ▄▋▄▄▄▉ ▇▆▇ ▍▉▍▇▅ ▆▉█▊▋█ ▉▊▌█ ▇ █▆▌▄▆▍, ▍▉█▌ ▄▆▄▅▇ ▊▌▄▅ ▅▄▌ ▅▋▄ ▇▍▌▄
▍█▍▊▋▉▇▉▆▅▍▊: ▇▌▆▅▆█▉▇▌▋▉▊▆▆▉▅▅ ▍▌▄▄▉▉ █▅▊▆▉▄▅▉, ▍▆█▊▍▌▉▋▍ ▇█'▅ ▅.▌▇▇ █▄▆█▆ ▇▌▉▌▇ (▌▄▊▅ ▄▇▊▅ ▊█▋ ▉▉▆▉▆▌▋▊)
▇▇▉ ▋▆▌█▌ ▋▇ ▉▇▌▋ ▊▄ ▉▅▋ ▆▄▉▄▆▍▉▌█▍▍ ▄█ ▅▍▉▄ ▆▆ ▇ ▇▉▉▍▋▄▄▍▋ ▍▅▍▅▅. ▉▉▌▆▇▌▋▍ ▄▌▋▇▅▅▌▆▉/▋▆▋█-▊▉▉▇▅▌#▊▄█▋
▍▌▇▊█▋▋▌█ ▊▇▉▋▆█▍▍ ▄▉▇▇▊▇▊▌ ▍▆▍▅▍▄▌▊▄ ▌█▋▉██▌▍ ▌▅▄▅▌▇▌▆▍/▊▉▄█-▇▉▊▋██#▌▊█▉
█▍▊▇▍▅▇▉▄ ▉█▌▅▉▋▅▍▄▍▄█▇▉▊ █▍▄▋▍▄▍▆ ▇▊▊▆▅▍▍▄▉/▄██▍-█▇▅▄▇█#▋▊█▄
▅▇▄ [▍▄▅▊▉( ▄, ... )] ▊▆ █▉▍▉▍▄.▄▍█▇▍ ▄▋▍ ▉▍▋▊▉▅.▉▍▉▉, ▌▅▄▍▌▍ █▇▌▊. ▄▌▅▉ ▇ █▊▋▄▋▅ ▆.▆▍ █▅▍▍ ▉█▋█▄ █▊▌▄▅▄█ ▌▉▆▄ ▍▋▋▅▇▄ ▉ ▌▍▌▇▊▌▅█ ▋▄▉▋█
▍▉▋ ▋▌▉█▉▊▉▌▉▄▆.▍▋▇▋▊█▍▍▉▆▄▄▍▍ ▊▇ ▇▇▌▋ ▅▇▍▄▆ ▋ ▊▍▅▇▍▌ ▉▊ ▅▋█▇▍▇▉▄▄ ▉▊▌ ▉▉▍▇▆▉▋ ▆▅▊▋ ▇█▌ ▌▍▋▆▆▆█▇▋▌▌▄▇
▉▆▄▇▇▇█▅▅▍▌▅█: ▄▇██▍▅ ▍▅█▉▆▌▆█▇▆▋ ▄█▆▅▆, ▄▄ ▇█▍▍ ▊▋▍ ▌▄▌▆▅▌▆ ▌▋▄▆▄▊ ▋█▄▍▅▌▇▌█ ▍▆▋ ▆█▅ ▉▅▍█ ▊▉█▋█
▆▅██▆▊▅ ▍▅█▆▌▇▄▌▋█▄▇▅.▊█▍█▅▆▉▅▋█▄
▇▋▊▊▍█▌▊ ▌▋▇▊▌▅▇▆▅▄▋▆▉▄▉▋▌▆▄.▇▍▄▍() - ▅▋▇ ▍▄▊▇▍▇ ▉█ ▉█ ▇.▋▅▇▋ ▍█▄▄ ▅▉▆▆▌▌
▊█▉▊▋ ▌▅▌█▅▆▊▋▅█▋ ▄▉▅█▄▅▋▉▄ ▉▌ ▄▊'▌▊ ▋▋█ ▆▌▄▋▋▉ ▅▍ ▊▅▉▇ ▊▍▊█ █▋▅█▌▉▋ ▍▊▅▍▅ ▆▊▉█
! ▌▇▍▉▊▆ ▋▉▇▄█▊▄▊▌ ▍▇▅▇▌▊▇▉▊▅▄▅▉▉▍, ▋▄▉'▄ ▉▇▄▅ ▋▆▄ ▉▄▌▄▄ ▍▄ ▆▄▋▄ ▆▊▌ █▋▆
▇▊▅▅▍▇▇ █▄▄▅ ▉▌▆█▅ ▌▄ ▆▋▊ ▄▅▅▆ ▉▆▊▋▍ ▅▄▉▋▋▅
▄▌▉▋▉▉▄ ▌▌▋▅█▊▅▌ ▋▆▄▉▇▉▄ ▌█▅▊▋ ▅▌▅▍▄ ▉▇▄ ▍█▉▆ ▄▄▆▆▉▇▋ ▍▊ ▄▇▋▉▆ █▉▄▄▅▉ ▌▌ ▍▄▋▋▄▍▇▄▌▇▊▌▉▇▆▋▇ ▅▇▊▄▄█ - ▇█▌▅▋ ▍▍▇▍ ▇▅▄▆▉▋▆ ▌▊▉ ▆▄▅▊▊▅ ▇▇▊▄▆ ▅▌▌▉▇▆▅▌▊ ▄▍▍ ▊█▇▆ ▄▆▉▌▉▄ █▌ █▆▌▅▍█ ▊▆ ▇▋▆▇▆▋ ▅▉▅▍▍█▆▅ ▉▅▇▌▆ ▄▅▆▊▄▇▄▄ ▅█▍ ▌▆█▋▊▌▆▍▄
▆▄▄▊ ▉▅▍ ▉▇▋▋▌▄▅▉▄▄▅▅▄▅▊▍ ▅▅▅▋ ▄▉█▊▌▇▌ ▍▄ ▅▉▄▍▇█▋█▋▅▋ ▄▌▊▉▋▄▍▌▊
▄▌▉ █▇▌▄ ▌▄▌█▅▅▉ ▍▉▅ ▆▊▋▌▉ █▍▇▊▆▍▌, ▍▌▇'▄ ▇▍▆▍ ▉▉██ ▍█▌▊▉ ▍▇▊▍
▊▌▇ ▄▋▉█▉▅▊▊▅▍▅ ▄▄▅▋▉▋▊▉▊
▅▇▍ ▅▉▇ ▋▋▍▆▍ ▇▍ ▄▄▉█▋▇█▌▌▆▍▆▌▉ █▅ ▋▍▇▄▅ ▆▋▌'█ ▍▆▇▍ ▋▌ ▄▋▄ ▄▄▆ ▅▄▆▄▌▆▄
▍▌▊▋▇ ▊▅▇▉▆▌▌▆▋ ▄▌▅ ▄▍▅█ ▌▉▌▉▇▍▉ ▍▅▍▇ ▍▊ ▌▉▆▉ ▄▇▉▉▉█▆ ▆▌▉▅▅://▄▄▌▅▊.▅▆▌▅▍▊▊█▇.▇█▌/▊▌█▉▊/▄▉▉▍▇▄▉▇/▉▇█▋-▅▍█_▋▄▋▆█▇▄▊▍▄.▆▅▋
▇▅▊▊▊ █▍▆▉▋▌ '▆▆▌█▇▅' ▋▆▇▍ ▄▉▄▅▄▇▄▍-▊▌▅▌▋-▍▇▊▋▄-▊▄▆▅
Add BBox + Sphere GetVolume()
Call AudioProcessor.OnDestroy properly
Make DspProcessor public
Store and restore Mixer config when playing game in editor
Update Processors in mixer UI to show enabled status
catch and report exceptions when disposing GameObjectSystems
Dsp tweaks
Make Gizmo.Control.BoundingBox much more visually simple
Json Serialize Sphere properly (!)
Gizmo.Control.BoundingBox - adjust depth bias so we can always touch the handles through geo
This reverts
Expose Sphere
Add ControlSheet.CreateLabel( SerializedProperty property )
Add [InlineEditor], which will make structs editable inline when applied to a property