Commit Graph

111 Commits

Author SHA1 Message Date
Layla
4e9cf595ff mapping tool mesh selection mode (#3588) 2025-12-10 16:27:44 +00:00
Garry Newman
5046b22eee Sandbox updates 3 (#3589)
* Gibs copy tint
* Add ClientEditableAttribute
* Panel based ControlSheet supports ToggleGroup
* Panel based ControlSheet hides empty titles
* Fix SliderControl default step
* Fix SliderControl text box resizing
* Fix slidercontrol number entry not getting styled
* ControlSheetGroup support ShowIf
* Make wheel joint properties ClientEditable, add steps
2025-12-10 14:43:30 +00:00
Lorenz Junglas
91f8fcf183 Speed up / parallelize tests (#3587)
- Added Sandbox.Test.Unit project (contains independent tests that can run in parallel) 
- Modify some slow/stress tests (e.g. instead of doing a million iterations settle for 10k).

Tests run almost twice as fast now.
2025-12-10 14:23:00 +01:00
Carson Kompon
96ae37b705 Mouse.Visibility no longer affects Game.IsMenu (fixes issue where pause menu can't be interacted with in some games) (#3583) 2025-12-10 08:20:07 -05:00
Tony Ferguson
0d5eccf4e2 Set Sandbox.Engine as default project (#3579)
* Also get rid of unused method in Project.Solution.cs
2025-12-10 10:45:46 +00:00
Sam Pavlovic
c227181ca2 Add terrain flags and make NoTile an option (#3575)
* Add terrain flags and make NoTile an option
This makes removes unused uvrotation from material
Fixes NRE if storage is null
Adds flags enum per material for future use
https://files.facepunch.com/sampavlovic/1b0911b1/ShareX_fKdgnanxbh.mp4

* Default NoTiling to false

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* The changes from commit e0c1c801c0 to fix normals on notile got accidentally reverted on 87a6fde918, readd normals rotation for notile, update shaders

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-10 07:19:03 -03:00
Layla
dbca8f8fa0 suspension disabled just limits the suspension to zero internally so it doesn't fly off into space, also set suspension and steering spring defaults to 10 hertz, 1 damping (#3584) 2025-12-09 19:18:05 +00:00
Garry Newman
f51a4f3fe5 Can get next page of results from Storage.Query 2025-12-09 13:32:10 +00:00
Alex Guthrie
2a235be3f8 Fix AgX (#3574)
Fix AgX tinting by adjusting math, use AgX punchy look
https://files.facepunch.com/alexguthrie/1b0911b1/fixed_agx.png
2025-12-09 03:02:11 +00:00
Layla
a9089d3780 unfuck the ordering of rebuilding in mesh component so mesh is built before collider, also don't use gameobject scale to scale geometry (#3572) 2025-12-08 18:12:16 +00:00
766974616c79
e8eb722744 Allow DecimalConstantAttribute 2025-12-08 15:18:04 +00:00
Lorenz Junglas
6808d8768e Shutdown fixes (#3553)
* Stop generating solutions via -test flag add -generatesolution

* Add TestAppSystem remove Application.InitUnitTest

Avoids some hacks and also makes sure our tests are as close to a real AppSystem as possible.

* Add shutdown unit test

shuts down an re-inits the engine

* Properly dispose native resources hold by managed during shutdown

Should fix a bunch of crashes

* Fix filesystem and networking tests

* StandaloneTest does proper Game Close

* Make sure package tests clean up properly

* Make sure menu scene and resources are released on shutdown

* Report leaked scenes on shutdown

* Ensure DestroyImmediate is not used on scenes

* Fix unmounting in unit tests not clearing native refs

* Force destroy native resource on ResourceLib Clear
2025-12-08 15:55:11 +01:00
Sol Williams
86f8de75cc Avoid doing LoadAllGameResource multiple times on editor startup (and before we've setup some search paths) (#3557) 2025-12-08 14:32:03 +00:00
Tony Ferguson
6f362470f5 Dresser randomizer (#3551)
* add randomize button to dresser, it's public so you can use it
2025-12-07 13:23:55 +00:00
Garry Newman
fa5bdccba7 Add Panel.GameObject (#3567)
* Add Panel.GameObject
* Add virtual Panel.OnVisibilityChanged
* Obsolete Panel.Scene.set
2025-12-07 13:08:37 +00:00
Layla
fa284e585b Physics filter pair (#3566) 2025-12-07 11:15:48 +00:00
sboxbot
ac7f12719b SceneModel changes (#3559)
* Expose GetBoneVelocity
* Document SceneModel.Bones, expose HasBoneOverrides
* Fix spelling
* GetBoneVelocity( int ), fix GetBoneVelocities assert

---------

Co-authored-by: yuberee <59583743+yuberee@users.noreply.github.com>
2025-12-07 10:26:48 +00:00
Layla
4bcacf00f2 Mapping editor tool (#3434) 2025-12-06 21:00:36 +00:00
Antoine Pilote
87a6fde918 New Terrain format (#3558)
- Now supports drawing on a BaseLayer and OverlayLayer
- Terrain Tools displays a material palette in a sidebar
- Added C# API to sample terrain material at a given position
- Can now import multiple splatmaps at once mapping to texture indices ( [0, 3], [4, 7], etc.)

https://files.facepunch.com/antopilo/1b0511b1/sbox-dev_An6nbxpqe3.mp4
2025-12-05 12:14:12 -05:00
Patrick Jr.
18ec2c5b55 Fix: Properly destroy Scene in MapWorld to prevent memory leak 2025-12-05 12:40:46 +00:00
Sam Pavlovic
db6ca66000 Update swapchain from native method instead of recreating it when video changed (#3562)
Recreating it works fine on Intel GPU, no issues on validation but didnt work on other cards, there is a better way to do this from native without dangling around

Fixes https://github.com/Facepunch/sbox-issues/issues/9675
2025-12-05 09:37:12 -03:00
Kicks
5bcf235db8 Categorize uncategorized base components
Categorizes PostProcessVolume, Terrain, and MoviePlayer.
2025-12-05 11:41:48 +00:00
766974616c79
fd5472e6ca Handle profiler cancel 2025-12-05 10:41:49 +01:00
Tony Ferguson
465240089f Fixed additive scenes (such as the system scene) applying its NavMesh properties on the main scene (#3555) 2025-12-04 16:51:23 +00:00
766974616c79
9a205bce37 Fix clamped does nothing 2025-12-04 10:23:12 +00:00
sboxbot
c292ee5333 Fix DebugOverlay.Text not rendering (#3550)
* Fix debug overlay text not rendering

* Moved transform init out of native block and improved comment for clarity

---------

Co-authored-by: Andy <10728824+andy013@users.noreply.github.com>
2025-12-04 10:21:56 +00:00
Lorenz Junglas
1e0fca7f55 Add screenshot_highres con command (#3546) 2025-12-04 09:01:23 +00:00
Conna Wiles
a415c85df4 Networking Performance Regression Fix (#3545) 2025-12-04 07:35:38 +00:00
Sam Pavlovic
ab81dd2357 Make MSAA setting work on editor SceneRenderingWidgets (#3539)
* Make MSAA setting work on editor SceneRenderingWidgets

MSAA settings never worked with editor viewport, only on game tab, now with playmode it always takes highest MSAA value from hardware regardless of what

Two things from this PR:
* Pass current engine MSAA setting when creating SceneRenderingWidget swapchain
* Add callback when video settings are changed, recreate swapchain when so

Replicates fine for all SceneRenderingWidgets, applies instantly

https://files.facepunch.com/sampavlovic/1b0311b1/sbox-dev_bjEMrrYe71.mp4

* Push RenderMultisampleType_t nMSAAAmount on interop
2025-12-03 16:41:38 -03:00
Lorenz Junglas
9551e9844e Cache (De)SerializeOptions in hot paths (#3547)
They are essentially compile time constants, so we shouldn't allocate them
2025-12-03 19:36:51 +00:00
Sol Williams
f19a719ece Save/Save As tweaks (#3495)
* Fix default %project%/Assets/ location when saving prefabs + scenes
* Display error message box if it's not a valid assets location
* Tweak "File > Save" enabled conditions to match if they'll do something
2025-12-03 14:57:44 +00:00
Sol Williams
cd82c815fa Fix engine transient search path prio too high in editor, skip in menu project (#3533) 2025-12-03 14:52:41 +00:00
Lorenz Junglas
fca621fbfb Improve NavMesh initial load (#3440)
- Fix navmesh potentially generating twice
- Make sure it's generated async on load.
- Only generate it in editor scenes if actually used
2025-12-03 13:58:36 +01:00
Damian
da6e23917e Removed IsUnitTest check in Material Load functions 2025-12-03 11:55:58 +00:00
Conna Wiles
68538b93b0 Re-add Stomped Connection Input Unit Test (#3543) 2025-12-03 11:53:34 +00:00
Conna Wiles
3efe8ef209 Implement Game.IsClosing (#3538) 2025-12-03 10:35:16 +00:00
Layla
9729470a9e add gravity scale to physics body markup (if you want a model to have negative gravity like a balloon) (#3535) 2025-12-03 10:23:05 +00:00
Matt Stevens
a4d13731cc Increase SentryRelease timeout 30s -> 120s 2025-12-03 09:24:30 +00:00
Conna Wiles
e4e0cf0f5e Fix Parenting Networked Transform Issues and Interpolation Bug (#3428) 2025-12-03 07:49:43 +00:00
Matt Stevens
eb563ad0d9 SyncPublicRepo: Upload Linux binaries 2025-12-02 17:41:54 +00:00
Matt Stevens
4d2b668de1 Everything seems to be in order.. remove dry-run 2025-12-02 16:54:19 +00:00
Matt Stevens
6f7ae597f4 gha: build staging on multiple platforms, upload artifacts, sync in it's own runner
* ci triggers win64 and linuxamd64 workflows
* workflows upload their artifacts to gha
* sync workflow is on it's own runner and downloads the artifacts,
  it then builds the filtered repo and uploads a full manifest to r2
* remove sync step from Deploy pipeline
* disable force push, the history should always match
2025-12-02 14:53:34 +00:00
Lorenz Junglas
84bc10a6c4 Fix sync not handling deleted lfs files correctly 2025-12-02 11:44:21 +00:00
Tony Ferguson
cd491677a0 SceneEditorSession: stop setting window icon on frame, do it when we edit the editor title which is already in sync (#3529)
Tentatively resolves Facepunch/sbox-issues#9659
2025-12-02 10:24:04 +00:00
Lorenz Junglas
59369163fc Engine swapchain validation error fixes (#3525)
* Don't DrawInitialWindowImage in ToolsMode

* Remove UpdateWindowSize call during editor startup
2025-12-01 20:10:19 +00:00
Conna Wiles
af0204fc15 Connection Input / User Commands (#3446) 2025-12-01 14:55:57 +00:00
Layla
fa4e01729e Wheel joint (#3497) 2025-12-01 12:47:49 +00:00
Matt Stevens
359dd1cb21 gha: do formatting step in seperate cloud runner in parallel (#3521) 2025-12-01 12:22:31 +00:00
sboxbot
ed02b173ee Gave Sandbox.ISceneLoadingEvents.AfterLoad a default implementation so you aren't forced to implement it (#3519)
Co-authored-by: glimpsebeyond <no>
2025-12-01 03:53:21 -08:00
766974616c79
c75d2c10de Allow frozen collections 2025-12-01 11:17:13 +00:00