Commit Graph

196 Commits

Author SHA1 Message Date
Layla
f40e74a093 Edge cut tool (#3629) 2025-12-16 17:22:03 +00:00
Antoine Pilote
c25d0aa594 Added ControlSheet.CreateRow 2025-12-16 11:18:45 -05:00
bakscratch
10c74fa037 Material palette groups (#3596)
https://files.facepunch.com/louie/1b1511b1/sbox-dev_yO6MOKHQIG.mp4
2025-12-16 14:09:07 +00:00
Garry Newman
b2122ed23e Fix popup/dropdown stylesheets 2025-12-16 12:56:04 +00:00
James King
fc1ed44b7e Make sure MovieResource.EditorData is set when saving (#3627)
Fixes Facepunch/sbox-issues#9744
2025-12-16 12:09:31 +01:00
Tony Ferguson
9f5a1917d8 Fix QtAppSystem steamApiDll never getting assigned (#3591) 2025-12-15 11:48:10 +00:00
Layla
0697a99bb8 Mapping polygon tool (#3620) 2025-12-15 10:35:09 +00:00
Layla
6e6bd37ac8 always draw brush preview (#3609) 2025-12-15 10:34:36 +00:00
sboxbot
34b0916da6 Add Collision Rules to NavMeshAgent Ground Trace (#3621)
Co-authored-by: J Shwiizzle <160753124+SwagAccount@users.noreply.github.com>
2025-12-13 19:12:47 +00:00
Carson Kompon
ceed0ccda5 Fix nametags showing above menu for humans on main menu 2025-12-13 13:43:15 +00:00
Andy
c3994087f9 Prevent INetworkListener OnDisconnected being called on clients 2025-12-13 13:41:36 +00:00
Carson Kompon
574de7aa0c Scene Mapping - Fast Texturing Tool (#3573)
- `PolygonMesh.SetFaceTextureCoords()` now properly sets `IsDirty`
- Added `PolygonMesh.GetFaceTextureCoords()`
- Added `FastTextureWindow` (which extends RectEditor.Window) and `FastTextureSettings` classes
- Added `MeshRectangle` which is a RectEditor `Rectangle` that contains faces from a mesh unwrapped within the rectangle, reflecting any transform changes made back to the associated mesh faces
- Added `EdgeAwareFaceUnwrapper` class which handles all UV unwrapping
- Added a "Fast Texturing Tool" button to the Mapping Tool's Texture Mode which opens a FastTextureWindow with the selected faces. This can also be opened with the shortcut CTRL+G (from the Texture Mode OR the Face Mode)
- If a Fast Texturing Tool window is open and the faces are deselected (or the user exits the Mapping Tool) the window will automatically close itself
- Implemented U/V Alignment Settings (+ Horizontal/Vertical Flip)
- Implemented Inset X/Y Settings
- Implemented Square Unwrap, Planar Unwrap, and Use Existing mapping modes
- If the selected material has a rect asset, you can double-click on a rect to automatically fit your UV rectangle to the one you double-clicked. (You can also toggle the visibility of the material's rects)
- Implemented the "Pick Edge" button which allows you to select an edge from the unwrap and automatically orient the UVs so that the selected edge is aligned with the grid.
- Added `Rectangle,CanDelete`, used by MeshRectangles so they cant be deleted
- Fixed `RectView.DragResizeRect` behaviour so that resizing a rect will snap the dragged edges to the grid instead of just increasing/decreasing by the grid size
- Added Panning/Zooming to the Rect Editor
- Disabling the Grid in the RectEditor now disables grid snapping
- Can now resize rects in on themselves to resize in the other direction without making an invalid rect
- Added Tile View to RectView
2025-12-12 11:20:30 -05:00
Matt
6d96831e2d Reset Game.IsPaused when the scene is stopped.
Tint pause button blue when the game is paused.
2025-12-12 13:40:02 +00:00
sboxbot
d3c9e389d0 Fix GameObjects in GameObjectSystem NetLists being null on clients (#3613)
* Fixes GameObject references in GameObjectSystem NetLists and NetDictionaries being null on clients.

* dotnet format

---------

Co-authored-by: Andy <10728824+andy013@users.noreply.github.com>
2025-12-12 13:39:40 +00:00
Andy
62c7df605d Call SceneLoaded listeners for clients 2025-12-12 13:39:00 +00:00
Carson Kompon
e09b8c18d8 Allow scss variables to be used in @keyframes (#3607) 2025-12-12 08:04:09 -05:00
Matt Stevens
85802c7d35 Terrain: Create buffers once with sane defaults, make sure they are always bound 2025-12-12 12:38:53 +00:00
Conna Wiles
c570971a1d NetList/NetDictionary Callbacks (#3556) 2025-12-12 11:07:55 +00:00
sboxbot
a28a2b7fac Fix package visibility overlay (#3597)
---------

Co-authored-by: DrakeFruit <foxflowgaming@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-12 11:04:16 +00:00
sboxbot
af5ab2abfe Add formatting to indicate state of sound preview toggle buttons (#3610)
---------

Co-authored-by: johncosfm <splatterbiker@gmail.com>
2025-12-12 11:03:43 +00:00
Kicks
909f4f3df8 Fix overload of Gizmo.Draw.Model
Fixes an overload of Gizmo.Draw.Model returning SceneObject instead of SceneModel
2025-12-12 11:03:11 +00:00
Andy
aa7f9e1965 Fix DebugOverlay.Text being culled when looking away from the scene origin 2025-12-12 11:02:22 +00:00
Layla
be03c4c12c add merge meshes operation to mesh selection mode (#3611) 2025-12-12 07:16:29 +00:00
Jason
92658e1cb6 Add christmas main menu, update transients 2025-12-11 23:39:28 +00:00
Matt Stevens
c98ded8d48 Menu Editor: Copy Generated Assets always copies the compiled file instead of source file 2025-12-11 22:38:36 +00:00
Carson Kompon
6050b4dab9 Editor Preferences Keybind Modifier Fixes (#3604)
- Can now use modifier keys alongside the Mouse Wheel (lets you do CTRL+MWHEELUP, CTRL+MWHEELDOWN, ect)
- Keybinds are now captured on release instead of on press (Previously pressing CTRL+D would just capture CTRL so you'd have to hold CTRL before capturing and then press D)
2025-12-11 13:57:09 -05:00
Matt Stevens
57d29e6f67 Really fix build 2025-12-11 16:53:19 +00:00
Matt Stevens
1c547b62aa Fix build 2025-12-11 16:34:04 +00:00
Matt Stevens
744cb42baf Menu editor code runs in menu project, and generates csproj 2025-12-11 16:10:51 +00:00
Lorenz Junglas
de71992f7b Manually create .source2 dir for unit tests (#3599)
Fixes public tests failing because of missing directory.
2025-12-11 15:06:21 +00:00
Matt Stevens
5c8aac6590 Item Store: Limited items are always at the top 2025-12-11 14:51:29 +00:00
sboxbot
6d037bbfa6 Do not focus LastSelected when switching tools (#3603)
Co-authored-by: aidencurtis <109600275+aidencurtis@users.noreply.github.com>
2025-12-11 08:40:02 -05:00
Layla
c7e8584e2d fix small mistake causing orbit camera to stop working 2025-12-11 11:24:54 +00:00
Layla
94f34e6076 Brush settings control widgets (#3598) 2025-12-11 09:09:11 +00:00
Lorenz Junglas
94bb6f886b Shutdown scene early (#3576)
* Destroy ActiveScene early during game shutdown
* Don't call into native when deleting scenemaps
2025-12-11 09:10:03 +01:00
Matt Stevens
1b80ecd2e9 Managed CrashReporter (#3595)
Remove C++ crashreporter and reimplement in C#, add various session id tags and send payload to our own API
2025-12-10 16:32:17 +00:00
Tony Ferguson
aaa6fdd44f Fixed not populating GameSettings defaults, causing all of them to never show up (#3581) 2025-12-10 16:28:04 +00:00
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
a87a6785a6 Nametag no longer renders over UI on Main Menu (#3586) 2025-12-10 08:20:54 -05: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
Carson Kompon
c2398b3499 Mesh Tool - Shortcut Fixes (#3578)
- Changing tools now focuses the newly created tool widget (or focuses the viewport if no tool widget exists)
- All mesh-related shortcuts now checks for SceneDock focus (or any of its descendants) instead of just the viewport. Allows you to execute shortcuts while focus is on the sidebar
- Position/Scale/Rotate mesh tool shortcuts now share the same shortcut as the object mode's Position/Scale/Rotate so they don't override each other (this was previously preventing the shortcuts from firing at all in the mesh tool unless you had a specific widget focus)
2025-12-09 09:45:41 -05: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