241 Commits

Author SHA1 Message Date
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
Garry Newman
93fddcc6e7 Fix broken grass texture in menu 2025-12-06 14:42:30 +00:00
Garry Newman
8c1c752e81 ControlSheetRow hides property based on ShowIf etc 2025-12-06 14:39:23 +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
Maxime Lebled
b8c0cae46d Humans: add visemes (resolves Facepunch/sbox-issues#8262) (#3565) 2025-12-05 16:01:50 +01: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
chesiren
25b38e42e0 change "games" to "maps" 2025-12-05 11:43:21 +00: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
wheatleymf
556e4db9fb Transform tangent normal along seamless UV angle
Previous implementation of seamless UV was sampling tangent normal map 'as is', without transforming vectors to be inline with the UV rotation angle - which resulted into NdotL shading errors. This is now corrected and tangent vector accounts for UV rotation.
2025-12-05 07:52:35 +00:00
wheatleymf
e0c1c801c0 Output rotation matrix along with seamless UV
Terrain_SampleSeamlessUV now additionally returns a 2x2 rotation matrix which can be used to transform vectors and other data if necessary.

This also adds a function overload `Terrain_SampleSeamlessUV( float2 uv )` for cases when you don't need a rotation matrix. This will avoid breaking any shaders that rely on old implementation of this function
2025-12-05 07:52:35 +00: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
johncosfm
b250345650 enforce gameobject order and form groups whilst duplicating 2025-12-04 17:31:39 +01: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
sboxbot
36122b4bcb Add VolumetricFogVolumeTool editor tool to edit volume bounds (#3465)
Co-authored-by: Kicks <nolandimensions@gmail.com>
2025-12-03 16:44:58 -03: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
d83a51c92d Multi-viewport in play mode (#3534) 2025-12-03 17:27:52 +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
14da06cd9d fix pathwidget NRE (#3537) 2025-12-03 10:26:23 +00:00
James King
f5534f980a Fix recording regression with constant blocks (#3542) 2025-12-03 11:26:03 +01: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
Sam Pavlovic
98559a1954 Fix Outline Stencil Tests (#3541)
https://files.facepunch.com/sampavlovic/1b0311b1/sbox-dev_JDX8rel7He.mp4
2025-12-03 06:53:30 -03: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
sboxbot
22dc5b1f24 Fix audio playback and waveform rendering for the vsnd file preview widget (#3540)
* Fix vsnd playback skipping the first few milliseconds

only increment Time after everything else has finished happening, this fixes the first few milliseconds of audio being cut off

Ensure SamplesPerColumn is greater than 1, this fixes the waveaform being a solid line if a sound file was too short and the inspector was too wide

Fix subsequent playback skipping time by setting time to 0 after EditorUtility.PlaySound

Use SmoothDelta to fix inconsistent playback

Co-authored-by: DrakeFruit <foxflowgaming@gmail.com>
2025-12-03 07:32:11 +01:00
Sam Pavlovic
d72ffaf059 Add r_max_anisotropy setting (#3536)
* Add r_max_anisotropy setting

Our anisotropy would default to the maximum value supported by hardware (16x), this trashes perf on my Intel B580, unreal does not even support above 8x

Unlike r_texturefilterinquality, it does not clog the renderer with user config samplers, r_max_anisotropy 1 has same result as trilinear rendering

Set default to 4, seems a good value

Not hooked up to UI

* Add r_max_anisotropy to quality_profiles
2025-12-02 19:10:32 -03:00
Alex Guthrie
e69774f203 Editor tweaks (#3532) 2025-12-02 18:27:31 +00:00
Sol Williams
25eb108aa6 PathWidget: just update visibility on resize instead of rebuilding the whole thing, fixes resize flicker (#3494) 2025-12-02 18:16:01 +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
003381b674 Fix public PR triage validation (#3531) 2025-12-02 12:50:20 +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
bakscratch
d79f0be41c Update menu assets to latest (#3524) 2025-12-01 20:32:47 +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