13,915 Commits over 1,552 Days - 0.37cph!
Publish: handle libraries referencing each other during compile
Retain upload case sensitivity when upload a source package
Wrap FileSystem.ProjectSettings in a AggFileSystem, so when it's disposed it doesn't dispose the package's filesystem. What a fucking mess.
Move CreateProjectFolders so it can be called from elsewhere
Upon changing a component type to abstract and you have component references, add it as a missing component
Edge split https://files.facepunch.com/layla/1b2411b1/sbox-dev_tJAwpCBX7h.mp4
Edge dissolve https://files.facepunch.com/layla/1b2311b1/sbox-dev_bYy4nlGQcb.mp4
Refactor halfedge for safer component checking and easier access to components from handles
Edge collapse https://files.facepunch.com/layla/1b2311b1/sbox-dev_yypYVe16Ni.mp4
Use Json.Serialize/Deserialize for BaseFileSystem.WriteJson/ReadJson, instead of different serializer options which didn't support our custom converters
Centre default window positions to the screen, or main editor window where it's present
Edge ring select, add shortcuts for ring select and connect (G and V) https://files.facepunch.com/layla/1b2311b1/sbox-dev_cdYFJiesYI.mp4
Re-implement Input.GetAnalog, respective glyph icons, moved some files into dedicated Controller directory
Package versions api
EditorUtility.DownloadAsync creates the folder, if it doesn't exist
LibraryManager can downloads and load the library
VR: Hide menu when in-game
VR: Keep track of whether we want new poses or not
VR: don't use explicit timing, causes issues w/ sync and latency
Re-use ActionGraphs when cloning / instantiating prefabs
Fixes Facepunch/sbox-issues#5374
Fix old sky material ref in code
Delete these too (colorscript)
Removed materials/skyboxes that aren't ours
Localization now lives in its own folder at the root of a project, instead of "Assets\.localization"
- Publishing a project will pick up this folder automatically
- All you should need to do is move your .localization folder to the root of your project, and rename it to "Localization"
Move menu localization files
Update dev materials using correct shader
Remove/Replace Sounds that aren't ours
Recompute texture axis when copying face data
Edge connect allocates new face with data from source face
Edge connect https://files.facepunch.com/layla/1b2111b1/sbox-dev_47JzOMkyv3.mp4
Bridge edges will try to create a triangle face if the edges share a vertex
Add edge fill hole operation https://files.facepunch.com/layla/1b2111b1/sbox-dev_zcqRYk5ATA.mp4
Rework halfedge to be identical to the native version, this makes it easier to port all the other mesh operations
Allow edges and vertices to be deleted
Citizen/animgraph: before applying shuffle additives, bias feet IK targets towards default pose the higher move_shuffle is
Citizen/animgraph: reworked move_shuffle-related sequences & added a basic additive blendspace for them
Library manager, list available libraries
Resolve circular dependency on base csproj
Fix menu not loading 🙈🙈🙈🙈🙈
Make internal addons.. addons - because it matters now
Fix NRE in DockManager
Make Project creation internal
Add LibraryManagerDock
Project constructor can't be internal, ya dummy
Library publishing
Fix node graph comment not saving position after resize
GameObjectControlWidget: allow opening prefabs in editor
New Hair + Space Suit LODs
Citizen: convert the remaining 'Walk2X' sequences to source the new WalkFast clips
Citizen/animgraph: added WalkFast_SE & WalkFast_SW + updated animgraph
Don't update scene view camera input if the editor window isn't active (sbox-issues/issues/5383)
Haptics NRE fix
Clamp haptic motor values where appropriate, matching existing behaviour
Basic controller haptics (#1498)
Allows for controller haptics based on haptic events.
```cs
public static void TriggerHaptics( HapticEffect pattern, float lengthScale = 1.0f, float frequencyScale = 1.0f, float amplitudeScale = 1.0f )
```
e.g.
```cs
Input.TriggerHaptics( HapticEffect.HardImpact );
```
Shadergraph: Add OneMinus node
Shadergraph: float2 and float3 can specify ranges
Fix hlsl antlr grammar 🙄
Fixes Facepunch/sbox-issues#5382
Stop sound handle when stopping or disposing music player
ComponentTypeSelector: don't allow left arrow navigation if trying to name component
Reduce parallel cubemap updates on load, we allocate a new lightbinner for each new parallel view and each of them allocates a lot of new GPU buffers when they should be shared, I'll revisit this after shadowcache
Use assets folder when collecting files for manifest
Don't add asset browser node for projects without assets
Don't collect assets from projects with no assets folder
Don't save the project list in editor, only save the project list when adding from launcher
Fix ProjectSettings path resolution, rename Project.Path to Project.ConfigFilePath
Error fix
GPU Shadow Culling (#1523)
---------
Co-authored-by: Matt Stevens <matt@mattstevens.co.uk>