20,835 Commits over 1,522 Days - 0.57cph!
Don't stop shadow animations/transitions when building final style
sbox-issues/issues/5122, sbox-issues/issues/4679
Clean up UI lerp functions
Render stats analytics, so we can work out whether our optimizations are working
Stats properly count shadowed lights again, add shadow map count too
Expose scenesystem stats to c#
Main stats we want
Put edge smoothing data in a new data stream to avoid old data not being able to load
Use buttons for edge smoothing like hammer, enum doesn't have multi edit support yet
Add smoothing angle to mesh component
Edges can be hard, soft or default, smoothing angles are used for default
Smooth vertex normals based on edge smoothing
Fix CreateEditorFor throwing for array on some types, should be using EditorTypeLibrary
Simple edge bridge, connect a face from two open edges of the same mesh https://files.facepunch.com/layla/1b1111b1/sbox-dev_zqhIWcX3As.mp4
Scene reference debug view (Facepunch/sbox-issues#5161)
Internal geometry helpers for #1508
* Line2D
* Vector2.Remap(oldRange, newRange, clamp)
* Line.Clip(plane)
* SceneCamera.ToScreen(line)
DrawText / DrawQuad / Gizmo.ScreenText overloads accepting an angle
Make Gizmo.Input.CursorPosition relative to view widget
Refactor ActionGraphDebugger
Add overloads accepting CancellationTokens to delay tasks
Facepunch/sbox-issues#5131
Action Graph editor tweaks to streamline CancellationTokens
Facepunch/sbox-issues#5131
Fix pivot point getting reset on edge extrude
Only select "full" edges, not each half edge
Add edge data for soft normals
Select all mesh vertices with double click
Add Gizmo.IsDoubleClicked
Select all mesh faces with double click
Remove all atlas downsampling bullshit, not even being used
Was accidentally creating new lightbinner (without light info I needed too) every frame :S CSceneSystem::GetLightBinnerStandard() is "FindOrCreate" while from CSceneView actually gets the actual one
GPU Shadow Culling
POC: Don't render shadows that are not visible by GPU depth bounds
Support [Property] attribute on event fields (Facepunch/sbox-issues#4372)
Typo in GetHandleNormalFunc
Serialize and Deserialize Scene properties such as Time Scale, Fixed Update Frequency, Threaded Animation... joining clients will now have correct values for the Scene. These don't replicate when changed after that though. Fixes Facepunch/sbox-issues#4483
When creating networked object from remote (networked), wrap Deserialize and NetworkSpawnRemote in CallbackBatch so that _net is initialized before OnAwake is called. Fixes Facepunch/sbox-issues#4950
Remove all atlas downsampling bullshit, not even being used
Backport shadowcache from CS2
Make CTextureManagerVulkan::GetTextureResource warning only when passed handle isn't invalid, matches behaviour of similar methods
BufferedDescriptorSetVulkan: Handle handles with no data properly, e.g 2 queued texture updates where the 2nd one is replaced data in the handle
Add batch publisher to asset browser context menus
draw icons in the asset list name instead of the icon
Tools: Menu.ParentMenu, Menu.RootMenu
So you can do stuff like menu.RootMenu.Close()
Variable node editing (Facepunch/sbox-issues#5125)
Use StringTable.Remove instead of StringTable.Entries.Remove when removing Connection from ConnectionInfoManager. Fixes Facepunch/sbox-issues#4983
Flip controller contexts once a frame instead of multiple times, breaking Pressed/Released tests when scoping multiple times a frame
Init JsonUpgrade early (fixes sbox/issues/1513)
Render dynamic envmap probes in editor sceneviews too
Make control sheet labels draggable (Facepunch/sbox-issues#5129)
Merge property or variable get / set nodes (#1507)
Make control sheet labels draggable
Merge property or variable get / set nodes
Add .flac sound compiler https://files.facepunch.com/layla/1b1011b1/sbox-dev_trygOXu7s7.mp4
Fix some animgraphs using deleted animtag types
Support FBX Normal Mapping/Reference Mode 1/2
Pivot tool for mesh editor https://files.facepunch.com/layla/1b1011b1/sbox-dev_IpU43VArUy.mp4
Better mesh element selection, supports click drag selection
Cancel block tool placement with delete
Add OnAnimTagEvent to SceneModel and SkinnedModelRenderer
Make sure worker threads start when calling RunInThreadAsync( Action )
Log a warning if a task runs without yielding for more than 1s
Facepunch/sbox-issues#4608
Rename status tag to event tag
Remove unused animgraph tags
Fix NRE in scene tree when selection contains invalid gameobject
Mechanism to abort long-running non-async worker actions
Long-running worker action aborting tests
Fix recent `ResourceHandleToData( ) failed! Falling back to error texture!` spam for error textures