17,500 Commits over 1,338 Days - 0.54cph!
Save Scene As dialog tries harder to open in a logical place
Don't render camera if its width/height are 0
Fix SpriteRenderer/TextRenderer not setting SceneObject tags properly
If scene view is hidden, still update the scene if we're not playing the game
Remove unused
Move renderingpipelines to engine2
This bounds checking in izCreateBVH is wrong
Revert "Expose SceneTrace etc to ActionGraph"
This reverts commit 438a62d24fbf3dc9a156f8279322af8ccb00c51d.
I want to make some of these methods into action nodes, not expressions.
Expose SceneTrace etc to ActionGraph
https://files.facepunch.com/ziks/2024-03-11/sbox-dev_NWYZqy5dMC.png
Mark IActionComponents as obsolete
Don't list obsolete component types in ComponentTypeSelector
Allow .sbproj files to have names
Add EditorUtility.SaveFileDialog
Right click > create model creates a model
Throw exception when trying to lock a MixBuffer twice
Delete Input.AnalogInputs/GetAnalog (might re-add later)
Simple device instance memory (disconnect and reconnecting the same controller should point to the same device), all events pass controller ID
Same bounds fix for DirtyControlMapRegion
Fix ByteStream.Write negative offset
Expose MixBuffer's raw pointer in safer way
Fix NRE on object desyroy (sorry!)
Forward controller axis events to managed
Forward controller button events to managed
Add prefabs for cubemap fog, envmap probe, gradient fog, volumetric fog
Hide terrain component, don't create this manually
ActionGraph window is a dialog, stays on top of editor window
Fix GetAttributes sometimes returning null
Don't write null values in components
Add OnComponent actions
https://files.facepunch.com/garry/65558502-1f39-48b8-81eb-e54a43e025a9.png
Add Collider.OnTriggerEnter, OnTriggerExit
Make block primitive hollow option work
Clamp instead of throw in DirtyHeightmapRegion so we can paint on terrain boundary
Collide against heightfield grid instead of trying to triangulate it exactly, slightly less accurate but faster
Rip out SteamInput and our Controller API
Init SDL_GAMECONTROLLER, add standard mappings file (will move this later), find all of our game controllers on startup, hook up events for handling controller lifetime, button events and analog inputs
Turn off steam overlay in the editor again
Draw open edges with half thickness
ControlSheet/Inspector tweaks that no-one asked for
Render open edges with smaller thickness until I render hash marks for them
Add PolygonMesh.IsEdgeOpen
GetEdgeVertices has two out vertices, instead of returning array
Lock simulator commit when removing a source
Skip adding undos on Game scenes
Don't try to remove steam audio static mesh if it's null
Fix #nullable context warnings
Facepunch/sbox-issues#5116
Lock reflection simulator when committing
Create grid debug shape for heightfield, faster but could be faster
Don't build steam audio static mesh for heightfields, too slow currently (do we care?)
Update terrain collider when terrain is dirty
Refactor ActionGraphDebugger
First pass at listening for ActionGraph scene refs
WIP show scene refs in scene view
https://files.facepunch.com/ziks/2024-03-08/sbox-dev_HZ7Fs0R2x1.mp4
CollisionActionComponent, TriggerActionComponent implement IActionComponent
Fix asset references trying to resolve before those references were added to the assetsystem, which would cause failed uploads
No amount of reverting was fixing this, so I think this has existed for
a long time...
Fixes
sbox-issues/issues/4914
sbox-issues/issues/5013
slicked_back_balding lods
Leotard Model + Hair Adjustments
Fixed game dll not being able to access clothing icons
Process deletes in a couple more opportune places
When a bone merged model is added, merge it immediately to avoid 1 frame bind poses when components are added after animations are calculated
Update avatar scene
MeshEditor: More robust u and v axis face calculation, only set texture axis if the face can calculate a valid normal
Add unrecognised reference paths to asset inspector
Remove legacy path from CMapAssetType::CalculateDependencies
Move light culling renderer to scenesystem and remove GetPtrValue hacks from it, we'll call it from lightbinner to pass results from light culling, layers still exist on renderingpipeline for ordering
Initial proof of concept for scoping gamepad inputs
- Push input scope if a GameObject has an InputScope component, which pushes the active input context
- Don't use Controller.First anywhere other than UI
- Poll every gamepad input and store an InputContext per controller, instead of just the first one
Todo:
- Fallback to first controller if we don't define any input scopes at all
- Let the keyboard and mouse easily be the "non-scoped" input, so we can have two player games with just one gamepad
Tweak painting to pixmaps to avoid invalid pen crash
Delete block tool scene object if creation gets cancelled
Support heightfield in CPhysicsShape::GetTriangulation
Unmangle SDL
Steam Audio: check for AVX512 before using it