22,466 Commits over 1,614 Days - 0.58cph!
Only try Convert.ChangeType if value implements IConvertible
SceneCamera.ViewportRect to Rect
Lets use the flags for ClearFlags, it's gonna be cleaner in the UI
Prefab editor 2 (#1262)
Cleans up prefab editor. Makes it possible to make prefabs without using the entity system.
▄▉▄▇▄▄▋▊.▍▇▋▆▄▄▆▊▇▌█▅() ▅▉▆▆▄▇ ▉▄ ▋▌▌▍▇▄ ▆▄▌▅ ▊▊▆▇▄▉ ▉▄▊▅█▄▄ ▉▅▆▊▉▆
Validate constructors as part of AccessControl
Make m_SymLinks a CUtlMap
Prioritize local files over downloaded (symlinked) files
Don't iterate the SceneCameras yet, we should iterate the Scene for Camera components when that's in
▌▄▊ ▋▉▉▇▉█▍▌▌▌▋.▌▅▇▇▅█, ▉▊▆▄ ▌▊▆ ▊█▅█▌▉▋▄ & ▉▍▍▊▌▄ ▄▅▆▆█ ▉▍ ▇#
▉▊▅█▋▆ ▅▋▉▌▍ ▇▋▅▆▉▄ ▇▅▋▇▆▇▋ ▆▇ ██▄▌█▄▇
▇▍▉▇ ▇▋█▌▋▇▄ ▊▉▇▍▍▋ ▆▅█▅ ▍▇▆▇▅▇▋▋▋▋█▍▄▇▆▋▅▊▉▊▍▊▌ ▆▅ ▋▄▉▉▆ ▊▆▊▅▇▊ ▆▍▆█▊▅▄ ▊▊▋▉▍▋
▆▉▉▉▋▆ ▇█▄▆▇▇
▆▆█▅▅://▆▌▍▉█.▆█▅▄▌▊▆▊▇.▆▄▌/▇▋▄▋▌▌/▄▅▆▊▌▄█▌/▉███▊▍_▅▋▆▄_█▋█▋▆▇▍.▅▇▇
▌▋▄█ █▍▍ █▆▉▊▄▊▍▄ ▋▆▍▊▄▋▉█▍▆▄ █▇▌▌▋▊ ▋▄▄▌.
▇▍▍▊▄▋ █▋█▇▅▉ + ▊▉▅▍▉▆ ▊▆▆▅▅▇
█▉▉▇ ▋▍▇▉▍▆▇ ▆▍▍▍▄▅▋ ▉▌ ▍▍▋ ▇▋▋▅██▋
! ▊▆▋▊▅▉▅▅▍ ▉▄▉▉█▅▌ ▄▉▇▉▅ ▉▊▆█▉▌▅ ▉▍▌▌▅▅.▊▅█▆▋█▌▄▋▍▌▇▇▆▆ ▍▊▉ ▅▌▉▄▊.▉▅▊▊▄
▉▍▋▆██▌▄: ▇▋▌ ▌▋▅▋▊█ ▄▅▉▍ ▊ ▆▆▊▆▊▉█
▍▅▅ ▋▌█▋▆ ▉▌▍█▆▉ ▍▋▇▅▇▆▄▄▅▉ (#▄▄▌▊)
* █▊▆ (▋▆▉█▊▊▅▌ / ▊▄▇▌▅▅▅ / ▊▅▇█▇▅▆ / ▆█▍▍▊▊).▋▊▄▌▍▊
* ▅▅▊ ▅▆▄▅ ▆▋▆▋▅▍.▇▍▇▊▇▍ ▇▄▉▄▅▉▊▄▉ ▄▄▍█▍█▄
* ▄▍▄▅█▅▌▉▍▊▋▄▇▊
* ▇▍▋▌▊▊▊▄▉▉▉▍▊▅
* ▊▇▆▆█▆▌▇▊▅▉▅▆▄
* ▄█▋▊▋▌▋▄▅▊▆▌
* █▍██▉█▉▋ (+ ▌▊ / █▉ / ▉▄)
▌▍▇'▊ ▇█▇▉ ▄▅▌▍▆ ▌█▊▅▊▍▊ ▌▍▍▆▉ ▄▊▉▆█
▍▆▅: ▋▄▋▋▉▇ ▌█▌▍▆▊▊ (#▅▋▆▅)
█▌▊▍▅▌ ▄▅▄ ▆▌▌▇▉▅▉▋█▋▋ ▍▊▆▅▅▄▍ ▋▉▌ ▍ ▍▆▄▍▅ ▊▅▊▅ ▋▊▉, ▄▍▊ █▇▄▄▌▋▍▉ ▆▌▉█▌▄ ▌▆▉▅▇▍▊ ▇▊▄▍-▊▌▊, ▄▆▄▆▅▉▉▊▊█/▍▅▍▋▋▄▉▅▇ ▉▆█▄▇▋▍ ▍▅▋▍▅ ▆▌▆▉▍▋▇▆ ▇/ ▉▆▊▄-▅▅▍▍▉▉▉▋▆ ▇▇▊▆▋█▆▉, █▍▊ ▇▋▇▋▅▌▆▆▌▄ ▄ ▄▋▄▅▊ ▍▄▊ ▅█▇▍▉ ▍▌▋▄▌▄▋▅ ▇▍ ▊█▌▆▋▋▆▇▍▆▆▇▌▅ (▉▌▆█▋▋▆▄ ▋▋▌ ▇▄▆▇▌▆▍▊ ▌▇▋'▌ ▋▇▌▌▅ █▊ ▆▉▄▉ █▄▋).
▆▇▉ ▊▊▊▄ ██▊▄ ▄▄▍ ▇▊▍▌▌▄▉▅▍▍▅▉▄█▆▆█▌▆▄▍▊▄▅▊▄▋▇▌
▆▌▄▇ ▋▍▍▄▋▉▄▆▅() █▊ ▉▅▉▉▆▅▅▅ ▋▄▄▋▉▌ ▅▌▆▆▆ ▊▅▄▅▇▉▆ ▆▋ ▆▅▌▌▅█▉ ▉█▆▅▋ ▄▊▇▇▊▆▇▆, ▉▋▌▍▌ ▋▉▉▍▆▄▍▍█▍/▊▅▅▉▅▆▊▇-▍▅▉▊▉ ▋▌▊▇▌▍▅
▉▇▌▄█ ▌▄▉▆▆▅ ▋▉ ▊▋▅▉▊▆▍▍█.▌▌▆▄▄▌▅▉▊ ▄▍▇█ ▆▇▅▄▆▅▄▄▋ ▍▌▅▌ ▄▊▅▊ ▊▄▅▄▉▍▋█▌ ▆█▋ ▉▅▋▆▆█▋ ▇▊▄▋
▍▇▄▍█▍▆ ▋█▇▄ █▍▅▇▋▇▇▊ █▍ "▊▇▆▌", ▄▌▊▉ ▌▋▄▊▆▆▋ █▄ ▆▉▊█ ▍▇▉ ▋▌▄▌ ▋▇▄▍▊▌▇ ▍▌▅█▄▊▆▉▊▍▌ - ▊▍▊▆ ▇▅▅▋ █▊ ▍▊▄ ▆▌▋
▋█▋▄ `▄▇▍▋-▊▍▌█▄▆`, `▇▋▊▍▅▅-▆▉▄▌▌▌█` ▊▄▅ `▄▆▆▌-█▄▌▌▌▆▍` ▍▉▇▆▊▋▆ ▆▆▄▅▄▊, █▆ █▌▆▅ ▍▆ ▋█▍▊ ▆▅▋▆▍ ▋▅▌▅
▇▍▋'▊ ▆▄▆█▋▅▍▅▉▇ ▅▊▄▊▊ ▇▋▅▅█▊▇▉█▍▇ ▇▄ ▅█▅▆▊▆▍▅▋▌-▍▇▄█ ▋▋ `▊▊▌▅█`
▉█▅▌▆▍ ▍█▌██▌▍▍▄▆.▌▍▋▊▉▊▍▆▋ █▅▉▌▌▇█▅▉▊, ▄▍██▆▄▊▍
▇█▉▄ █▊▉▋▊▅ █▍▍▉▌ ▄▌▌▇▊▄▅▄▊█ ▇▄▆ █▉▉▊▌ ▊▉ ▌▆▇▋ ▍▇▄▋▇
▋▉▋ ▉▅▇▉█ ▊▄▌▅.▇▍▊▅▊▆ ▆▄▉▋▅▆ ▍▄▌█ ▅█▇▍█▋▌ ▌▉▉▅.▄▍▅▄.▌▋██▇▊▉▆▄▌▊▋▍▇▉▉ (▄▉▅▆▅▊▍▋/▊▄▌▉▅▅#▆▄▇▋)
▆█▉▉▉▌▉ ▅▆▄▌▍▍ (#▉▄▍▄)
█▌▌▌▅▌▊ ▌▆ ▌▍▅▍▊▉▇▅ ▄▄▄ ▉▄▆▋▍ █▍ ▍▊▅▆▉▅ ▄▋▆▉▍▅ ▊▌ ▋▆▍▊▄ ▇█▆▊▋█ ▍▍ ▉█▉▅▌ ▋▍▋▅ ▅▉█ ▄▌▍ ▇▌ ▆▍█▅
▋▋▇▅▍▄ █▊▄▇▌▉ ▅▉▆▊▇▄▇▋_▅▊▅▇▅ ▍▉▉▍▋
▉█▉▌▌▊ ▆▄▌▋█▄ ▅▋▊▍▌▆▊▋, ▉▅▉▋▄▄ ▊▍ ▍▍█ ▌▋▆ ▌█ ▍▇▋ ▊▇▆▅▊▆▄▉█▋
▆▄▇▍▆▆ ▇▌▌▌▋▄ ▇▅▌▆▉ ▇▌▌▆▍ (▉█▍▇ ▆▍ ▍█▍▉ ▅▆▋▍▅▍▉▄?)
▉▉▅▉▄▉▄▅▆█▋: ▋▊▊█ ▆▉▌▍▌▍ ▇▍▇▌ ▅▌▄▇▍▄▊ ▋▌▆▋ ▌▄█▇▆▅▊ █▋▆▌█▋█
▇▇▍▊▄ ▅▉▋▊ ▌▋ ▍▋▇▇▅▍▌ (█▊▇█▇▉, ▊▌▊█▊▉▆█▇, ▍▉▋▊▄▋▄▆▅▇ - ▉▊▆▇▇▅ ▊▇▄▄ ▅▅ ▍▍▇▄▅█▄▄)
▄▊▇▊▌▋ ▉█▌▄▇█▆▄▋▍█▉.▇▇▄▆▆▇▅▌▊▋▆▄▊ (▉▅▄▇▍▇)
▉▉▊▊▅█▍ ▋▊▌▌▅ █▉▉▅▋▄ ▌█▍█ ▄▄▋▆▋
▇▋▆▆▋ ▌▉▌▄▋▊ '▌▋▆▉▉▍' ▌▊▋▉ ▄██▍▉█-▇▄█▉▌▌-▋
▉▄█▊▄ ▇▍▊▉█
Experiments with layering cameras and multiple viewports
Don't recycle depth from aoproxies for dynamic reflections, loses a fast depth prepass but focus on correctness first
Fix hi-z depth chain with offsetted viewports
SceneCamera.Enabled, WeakRef in Directory, ClearFlags -> bools
Editor: set gamemode to CurrentGame, loading map manually / from hammer should use active game
Editor: Add Min/MaxLength to ProjectConfig.Title to match asset manifest spec
Editor: Add Project.Config.Title to review wizard
Editor: check for validation attributes on review wizard page, can't continue if it fails
Nicer component selection, categories, icons
Allow no root object, root object dictates entity or gameobject workflow
Updated trace solver from valve
Move to Tier1, remove Raster and just use Texture
Sandbox.UI
Abstract Sandbox.UI input, move over RootPanel, data classes, IPanel
Move BaseStyles into Sandbox.UI
Fix flawed equality logic
Add PhysicsBody.GameObject (for non entity)
Cleanup editor ui
QHammerMainWnd is a managed DockWindow, start moving Hammer dock widgets over to DockManager
Everything in hammer is added through managed DockManager
Asset browser doesn't need to be made from native, use [Dock]
DockManager manages View toolbars menu, delete all native for it
Dock widgets dont need to be QDockWidget anymore
Use StateCookie to save Hammer layout, add a default layout
Added Tags to Surface (HasTag, HasAnyTag, HasAllTags - define tags in resource)
Remove ClientEntity.HasPermission (unused)
Fix up editor for entity workflow
Shadergraph: Save prompt when closing with unsaved changes
Remove global light usage (used in dota pipeline?)
Remove unused deferred_light files
Delete sprite entities, mostly to get rid of the toolobject
Texture editor (#1259)
Creates 2D textures and basic 2D sprite sheets to avoid having to write vtex and mks by hand
Load sheet data from vtex json
Load from sheet data if we have more than 1 image
Trim the bullshit from vtex json, we only care about 2D and sprite sheets for now
Creating texture through context menu with multiple selected textures creates sheet
Custom button drawing for list property so they don't look awful
If we open editor with vtex with dmx encoding, just create empty texture file
Property sheet target can now just be the texture file
Only mark as modified if json has changed
Set known Game.Server fields when running Game.Menu.StartServerAsync (sboxgame/issues#3980)
Decrease block increment size, can get finer selections (i.e PackageCard modal button)
Fix FindPanelsAt never finding more than 1 panel
Give eligible panels a score and give it some data to score by, focus the lowest scoring panel, also hook up selection and scrolling
Make Hammer gizmo sceneworld get added to view again
Using abs here tries to use stdlib and it's not linked, use V_fabsf instead
Starting on the interpreter
Sizes passed to ImageRect.Calculate with Undefined unit will correctly use default size
Default text overflow to "None", spec default is clip but ours behaves differently - this will do for now
Give `line-height`, `letter-spacing` and `word-spacing` default values, no need to null check them
Don't implicitly clamp backgrounds if background-size is `cover`
Handle LengthUnit.Undefined gracefully, document
Remove links if types become invalid
Implement updating node parameters
Work on finding panels from delta, fixed not finding an initial focused panel
Add VerticalLayout, clean up layout system
Fix not loading entity prefabs
Fix editor FirstPersonCamera not obeying dpi scaling
Cleaner selection
Noodling with nodes
More noodling
WIP blueprint node interface
Fleshed out NodeType
NodeType tweaks
Input / output signal support in NodeType
Blueprint<T> skeleton
Some more example nodes
Blueprint node graph modification methods
MethodNodeType, refactoring
Move blueprints to Sandbox.Engine
Basic blueprint test setup
Test refactoring, improving graph composition API
Big refactor
Renaming / reorganizing
Some helper methods for adding nodes
WIP dealing with dynamic node definitions
For example Event nodes that have different output sockets
Add EntityPrefab.JsonValue (replaces Value, which is still there for backcompat)
Add Json.ToNode, Json.FromNode
Serialize/Deserialize [Property]'s on IPrefabComponent manually
Changing prefab interface names
Call GetPixels() on backdrop filter props instead of getting Value directly, fixes percentage/fraction-based filters
Fix edge case for FindDeepestNodeContainingSpan
Ignore SourceLocationAttribute in ILHotload
Fix edge case for FindDeepestNodeContainingSpan
Add PanelTraversalOverlay (for lack of a better name)
Refactor, add ControllerOverlay, so we can add another overlay for panel traversal selection