userLorenz Junglascancel
reposboxcancel

404 Commits over 120 Days - 0.14cph!

Cleanup test logging
More variety in test generator
Some more tests parsing Parse JSON into custom data structure (tree) for diffing and patch application All gameobejct tests passing
Yesterday
Fix video recorder crash when vulkan video fails to initialize on AMD cards Properly cleanup resources if video or audio context creation fails at any point.
Yesterday
Add MovedObject patch operation, this operation tracks objects that have been reordered or moved to a different container. Basic tests are passing now Add complex generated GameObject diff/patch roundtrip tests Most of them are passing, ordering seems to break sometimes
5 Days Ago
Add JsonPointer (RFC 6901) implementation and tests Add RFC 6902 compliant JSON diffing / patch generation Use JsonNode instad of JsonDocument in pointer Add ApplyPatch functionality Generate roundtrip tests Add Test Generator for GameObject hierarchies Remove Copy & Move operations I can't make it work there are extremely rare edge cases for enormous diffs (thousands of objects and operations). The code to support these edge cases was becoming more and more unhinged and illegible. Can still tackle it later if we really need it. Add tests for LCS Work around .net runtime bug in Json.DeepEquals dotnet/runtime/issues/112769 Clone/Move attempt 2 Move optimization still fails for very large diffs -> disable for now Cleanup some debug code Simplify Json Pointer Object/Pattern detection in json Smarter pattern matching; Added Patch Generation & Application Improve handling of nested objects Prefab Instance Overrides PoC Remove old version of Json patch (RFC 6902) Simplify ObjectContext collection
5 Days Ago
Revert "Mark as Dirty if physics body transform did change" This reverts commit e493682a3343f8eed75fd50e7b437505915e64fd.
5 Days Ago
Account for more floating point imprecissions
5 Days Ago
Further, reduce goal overshooting for nav agents
5 Days Ago
Optimize crowd simulation, should be twice as fast This mitigates the performance loss caused by enabling Collision Avoidance & Separation
6 Days Ago
Reformat Detour/Recast C# files
6 Days Ago
Mark as Dirty if physics body transform did change
6 Days Ago
Early return in PhysicsBody.Move if transform didn't change
6 Days Ago
Fix agent acceleration oscillating when reaching goal
6 Days Ago
Add Rotation.AlmostEqual Add Transform.AlmostEqual Only mark physics body as dirty if it actually moves Fixes issue where navmesh areas would be rebuild unnecessarily
7 Days Ago
Accept Context Menu Event for feature tabs. Add some more validation to clipboard JSON Fixes sbox-issues/issues/7867
7 Days Ago
Enable nav agent avoidance and separation No idea if they have always been off or if i disabled them by accident at some point.
7 Days Ago
Get rid of float/double.Epsilon usage use more sane defaults 10^-4 for singles 10^-6 for doubles
7 Days Ago
Refactor some navmesh code, allows for less agressive locking
7 Days Ago
Spaces -> Tabs Add some locks since this can be accessed by multiple threads
7 Days Ago
Get rid of unused ChunkyTrimesh recast code Update recast from Facepunch/recastnavigation
7 Days Ago
Untangle navmesh threading, significantly reduces initial navmesh generation time.
7 Days Ago
Fix floating point precission issues in recast pathing code see recastnavigation/recastnavigation#515 & recastnavigation/recastnavigation#735
8 Days Ago
NavMesh only allocate debug draw buffers if we actually want to draw Disable Navmesh generation on prefab scenes
9 Days Ago
Don't recreate Inspector widget if the object is already inspected Fixes sbox-issues/issues/7882 https://files.facepunch.com/lolleko/2025/March/17_09-35-SvelteMeerkat.mp4
11 Days Ago
Add 99.9 percentile to benchmark data collection to diagnose largest lag spikes Also P5 and P95 while we are at it.
11 Days Ago
Fix Navmesh.DrawInEditor spawning 500 generation threads at the same time Use Environment.ProcessorCount instead of ThreadPool.GetMaxThreads
12 Days Ago
We are tracking frame time not FPS so we want to use P99 not P1
12 Days Ago
Hookup GCPause performance stat for benchmarks
12 Days Ago
Calculate P95, P1 and Stuttering metrics for our benchmark samples
12 Days Ago
Reenable hc1 test
12 Days Ago
Run deathmatch benchmark after regular benchmark (#1850) https://files.facepunch.com/lolleko/2025/March/13_20-16-AdvancedOrangutan.mp4
12 Days Ago
Reenable sbdm test
12 Days Ago
Run deathmatch benchmark after regular benchmark https://files.facepunch.com/lolleko/2025/March/13_20-16-AdvancedOrangutan.mp4
13 Days Ago
Bump default avoidance for nav agents
14 Days Ago
Small optimizations in GameObject.Clone Preallocate some containers Slightly reduce reflection usage
14 Days Ago
Small optimization in Components.GetAll Reduces allocations/garbage by getting rid of recursive lazy evaluation (yield).
14 Days Ago
Set transform to identity/zero during ConvertToPrefab serialization, restore instance transform after serialization Closes sbox-issues/issues/7840
15 Days Ago
Fix GameSettingsModal incorrectly showing some properties as bool
16 Days Ago
Improve error handling for navmesh queries
16 Days Ago
Vectorize and cleanup some things in BBox math Obsolete `BBox.GetVolume` we already have `BBox.Volume` (property) Obsolete `Sphere.GetVolume`, add `Sphere.Volume` as replacement Add static variant of Vector3.Clamp Add static variant of Vector3.Abs
16 Days Ago
Support non uniform scale in BBox.Transform
18 Days Ago
Add back support for H.265 video encoding. Use HW accelerated Vulkan Video if available. Encoding H.264 and H.265/HEVC now uses Vulkan video and the underlying hardware accelerators if supported. If Vulkan video is not supported, both H.264 & H.265 will fallback to openh264. This mean the support for H.265 encoding is limited to modern GPUs.
18 Days Ago
Update FFmpeg again, I forgot webp codecs & muxers in the last build
19 Days Ago
Custom FFmpeg build: Reduces FFmpeg binary size from 120mb to 20mb
19 Days Ago
Update ffmpeg 6.0 -> 7.1 (#1842)
19 Days Ago
Switch to libopenh264 mark h265 codec as obsolete for now
20 Days Ago
Update ffmpeg binaries 6.0->7.1 Update ffmpeg 7 incompatible code Reset FFT data on StopPlay
20 Days Ago
Simplify ObjectContext collection
20 Days Ago
Navigation Links (#1833) Allows to place and edit nav links. Links are considered by pathing and agents will be able to traverse them. Link traversal is customizable via code: - Links can be inherited to customize behavior. - Agents have an delegate that is invoked when they start/stop traversing a link. Detailed Instructions: https://sbox.game/dev/doc/navigation/navmesh-links/ https://files.facepunch.com/lolleko/2025/March/05_17-11-MadCrayfish.mp4 https://files.facepunch.com/lolleko/2025/March/05_17-14-CraftyOropendola.mp4