14,461 Commits over 1,614 Days - 0.37cph!
Tweaked editor startup, don't pop up this cloud progress window, compile assets faster
Shorten "Group with new GameObject"
Fix Remove Component not being included in the Undo Stack
Scene Hierarchy: hide children in flat search view
Scene Hierarchy: skip root, objects with hidden flag
Scene Hierarchy: hide clear search button when there's no value, styling tweaks
Scene hierarchy search searches whole scene, rather than just filtering visible nodes
Scene Hierarchy: explicit t: token for searching by component type
Scene Hierarchy: tag: token to filter by GameObject tags
Add Component.ITemporaryEffect, add it to particleeffect, particleemitter, soundpoint
make RenderOptions.Apply public
Asset browser: double clicking a folder in the left pane expands it + highlight current folder in sidebar
Asset browser: Re-build sidebar locations when we make a new folder
Asset browser: can highlight scene file by right clicking the tab
https://files.facepunch.com/alexguthrie/1b0411b1/sbox-dev_glaXsIVvIP.mp4
Hammer can paste gameobjects copied from scene editor
Resolves Facepunch/sbox-issues#6762
Copying, shift transforms & undoing all work on hammer game objects. Only had to change all the callbacks to a new system again
Flag scene unsaved changes in a better place, fixes not being flagged in some cases, Facepunch/sbox-issues#6799
Consistently style scene tab titles in titlecase
Improve Bootstrap::Init error output to show diagnostic errors if they exist - we get a lot of users asking about this, and the original exception is not very useful
https://files.facepunch.com/tony/1b0411b1/sbox-dev_GUQ7oMB8Eh.png
Download initial server packages (on join) in parallel, Facepunch/sbox-issues#6786
Update Facepunch.ActionGraphs
Fixes Facepunch/sbox-issues#6736
Fix SoundEvent JsonUpgrader only working for certain formats of RangedFloat. Resolves Facepunch/sbox-issues#6790
new Model.Attachments API
Remove Log.Info in AssetBrowser
Add CreateAttachments property to ModelRenderer
Simplify skeleton bone rendering
Grt rid of log spam in OnAnimationEvent
Fog TAA + Tiled Rendering
* Fixes artifacts
* Improves perfomance
* Removes Clipmaps
* Lights are culled with tiles
* Makes fog render until far-z
* Removes ghosting
* Simplifies codebase a lot
If no [Inspector] found keep falling back on [CanEdit]
Fixes Facepunch/sbox-issues#6784
Can drag scene prefabs into Hammer map view
Fix PrefabFile.GetMetadata() reading the wrong property name
Fix Prefabs not serializing ISceneMetadata components that are on the root GameObject
mapbuilder: don't try to parse empty scene json
fixes Facepunch/sbox-issues#6777
Citizen/animgraph: added b_firstperson parameter; intended to be used when showing the body in first-person view while looking down
Get shortest SourceLocation path when setting TypeDescription.SourceLine/File
- This should've been the original fix for opening code files that have partial class defs
Get rid of my partial class check for SourceLocation codegen, it's actually the culprit for Facepunch/sbox-issues#6753 - re-publish your game and it'll be fine
If setting local transform to default, set it to Transform.Zero
Add Texture.CreateFromSvgSource
PlayerController: Fix hiding other players bodies
PlayerController: Tweak how body rotation works, clamp rotation to always be within RotationAngleLimit vs eye angles
PlayerController: Only apply "viewer" tag to render body if set
Svg's have mips, can keep aspect ratio
Fix warning
Animgraph: Add blend cycle option to state machine transitions - blends cycle on transition instead of resetting to zero https://files.facepunch.com/layla/1b0211b1/sbox-dev_fR7ScCdFuP.mp4
Wrap property tooltips in rich text tags so they wrap, resolves Facepunch/sbox-issues#6723
Do Widget.AdjustSize before ConstrainToScreen
Fix colour picker relying on late sizing and not constraining to screen properly, Facepunch/sbox-issues#6717
Quick fix to diving outfit
Merge branch 'master' of sbox
Citizen/animgraph: removed several unused parameters + skid now relies on 2 new parameters, skid_x/skid_y, instead of move_x/move_y
Fix readonly string control widget
Hammer GameObjects (#1675)
* Hammer Scene is serialized in MapWorld and gets written into VPK as world.scene_c
* MapInstance additive loads the SceneFile from inside the VPK
Tie Meshes to GameObject:
* Replaces Entity
* GameObjects with meshes tied have a HammerMesh component which procedurally creates a ModelRenderer and ModelCollider
* HammerMesh is setup at map compile time with generated models.
Editor:
* Add HammerManagedInspector which can take over native inspector if it likes the MapNode type
* Add HammerSceneEditorSession for handling saving properly
* Gizmo interactions work in MapView, Hammer gizmo selectionset syncs with native selection set (native has authority)
* Clean up MapView loop: run Scene.EditorDraw() for gizmos, remove old Entity.DrawGizmos
Hammer Outliner:
* Managed sets DragData of map nodes in Hammer outliner
* Defer selection until mouse release so it acts like our managed treeview, allows dragging without selecting instantly
* Removed duplicate entity list
* Add "Create Game Object" button
ActionGraph:
* Add MapSourceLocation for editing action graphs in .vmap files
* Open source map when inspecting graph from .vmap
* Parent action graph editor to hammer window if editing map graph
---------
Co-authored-by: James King <james.king@facepunchstudios.com>
Unify UI and ListenLocal, should have complete parity with how it was before 🤞
Properties with [Hide] don't contribute to features tabs
Don't need these Hammer prefab templates anymore
InspectorWidgets are explicitly marked with [Inspector( Type )] instead of [CanEdit( Type )], created with InspectorWidget.Create( SerializedObject )
Fix exception in Asset.ReadJson()
Fix NRE in GetBoneObject() when using the wrong name
Remove extra quat normalize that isn't doing anything
Normalize quaternions in AddPoses to prevent drift in model space blending
Citizen/animgraph: improve look & feel of turning while moving
https://files.facepunch.com/maxlebled/1b0111b1/2024-11-01%2005-08-50.mp4 (NB: this video has several of the parameters non-functional due to the current state of the physics-based player controller, so it's not a complete picture, but it does show off this specific improvement)
Fix UI sounds still playing spatially.
Don't early out of model collider when there isn't a bone for part
Allow physics shape to associate with a bone index so SceneTraceResult.Bone works when hitting physics shape, as the summary suggests https://files.facepunch.com/layla/1b3111b1/sbox-dev_016MWrhQrI.mp4
Remove the need for CGameTrace and delete it, the less trace result structs we have, the better
Don't let the user drag AssetPicker tabs about/outside the window (lol)
AssetPicker: Disable type facet dropdown if FilterAssetTypes is specified
AssetPicker: Default to project assets folder when no initial selection is given
Fix CloudBrowser not saving/restoring from cookie
Shift cloud locations around again, this makes more sense I think
AssetPicker: make sure we're raising the tab you'd expect by default
Add more optional functions to IPressable, for hovering and update
Slow down default player turn speed
PlayerController camera can be moved left/right
PlayerController has "use"ing built in
Switch case node
https://files.facepunch.com/ziks/2024-10-31/sbox-dev_YiyL34b2CY.mp4
Add clear button to asset/cloud browser search bars
AssetPicker: Standardise initial selection logic, prefer selecting cloud package for cloud assets (and not .sbox disk path)
Fix focusing AssetList on entry sneakily not working
Wait for cloud browser to receive results before selecting initial selection