s&box

s&box June Update

Version
June Update
Version Date
May 31, 2025
Links

Patch Notes

June Update

The June Update is now live, we've overhauled the prefab system, avatar customization, the website has a new look and much more.

Check out the June Update dev blog to read everything!

Changelist



๐ŸŽ Added

  • ::before and ::after to UI
  • New Prefab Instance System
  • Screen Space Reflections component
  • Dresser component - makes dressing avatars easier
  • Scene.FindInPhysics( Frustum )
  • Scene.Get<T>()
  • SequenceAccessor.Blending
  • ITagSet.GetDefaults
  • ParticleEffect.RealTime
  • Panel.SetRect
  • Plane.ReflectPoint
  • Plane.ReflectDirection
  • CameraComponent.BBoxToScreenPixels
  • Bitmap.Size
  • DebugOverlaySystem.Texture (draw texture on the screen)
  • Transform.Mirror
  • Application.OnWidgetClicked
  • Graphics.CameraTransform
  • Graphics.CameraRotation
  • Graphics.FieldOfView
  • Renderer CommandList wrappers
  • Renderer.ExecuteBefore (command list, executes before rendering object)
  • Renderer.ExecuteAfter (command list, executes after rendering object)
  • CommandList.DrawReflection
  • CommandList.DrawRefraction
  • CommandList.DrawRenderer
  • CommandList.DrawView
  • CommandList.Attributes.Set( bool )
  • CommandList.Attributes.SetCombo( bool )
  • CommandList.GlobalAttributes
  • Texture.Clear( Color )
  • TextureBuilder.WithInitialColor( Color )
  • Vector3.Dot( a, b )
  • [FilePath] attribute for string properties
  • accessors and constructor to Matrix class
  • Matrix.CreateObliqueProjection
  • Input.Suppressed
  • Gizmo.Draw.Sprite angle parameter added

๐Ÿงผ Improved

  • Editor theme improved - new font, color scheme and many tweaks
  • Shader memory layout changed to drastically reduce stuttering
  • Time classes internally use doubles for improved precision
  • Video Recording has been greatly improved for stability and speed
  • Human female๐Ÿ™โ€โ™€๏ธ models look a lot more female
  • GPU -> CPU readbacks use cached memory improving speed
  • VR gets it's projection matrix from the headset directly
  • Updated Roslyn - your games will generate more optimized code now
  • GameObjectReference serialization for prefab properties
  • Create GameResource Save button when using a customer inspector
  • Improved aspect ratio in asset browser thumbnails
  • Select prefab/network root when selecting object in viewport
  • Prefab instance UX improvements
  • Rebuild model hitboxes on renderer model change
  • Optimized NetworkTable causing excessive delta snapshot GC
  • Cameras rendering to textures use a HDR texture and matching MSAA
  • Make sure Screen.Size is correct on scene startup
  • Component Eye Dropper can be used directly on Components in the inspector
  • GameObject Eye Dropper can be used on Prefabs in the Asset Browser
  • GameObject & Component Eye Droppers can be used on other GameObject/Component properties
  • Load system scenes on any non-additive scene load
  • Creating a new project or opening a Sample Project will now correctly show the "LAUNCHING" text
  • Sample Projects no longer create duplicate entries in the Launcher when opened manually
  • NetworkFiles includes stuff on resource paths
  • Mixer Handles now support multi-edit
  • Can now unlink multiple prefabs at once with multi-select
  • Can apply/revert prefab instance changes with multi-select
  • Unsaved changes dialog prompt for resources
  • Update Skin shader with tint and age sliders
  • Steam Audio update (4.5.2 -> 4.6.1) and static linked
  • RenderTextures are cleared to magenta by default (to spot errors more easily)
  • Updated to SDL3 and gamecontrollerdb.txt
  • UI textures are mipbiased to avoid being blurry
  • Allow modifying the transform of the prefab root
  • Project settings UX improvements
  • Whitelist JsonStringEnumMemberNameAttribute
  • CameraComponent.RenderToTexture takes a ViewSetup allowing overrides
  • Yoga config uses UseWebDefaults
  • HudPainter.DrawLine uses SDF shape for much smoother lines
  • Exposed and documented ImageFormat
  • Whitelisted many requested types including BigInteger, Complex, Task.Is*, ReadFromJsonAsync and more..
  • GameOverlays use a viewport z-slice instead of an additional depth buffer

๐Ÿช› Fixed

  • Intel Integrated Graphics no longer crash on startup, device limitations are checked on startup now
  • SpriteRenderer crashing trying to render on dedicated servers
  • UI no longer renders over the Scene tab in the editor while in play mode
  • Various security exploits reported on HackerOne
  • MusicPlayer crashes
  • Razor elements now play :outro properly
  • WantsFrameBufferCopy doing nothing outside of regular models
  • Navmesh links triggering when not active
  • SceneCamera.GetFrustum returning nonsense on ortho cameras
  • Scene not being pushed before several prefab related editor actions
  • Scratch depth buffer not matching scratch color dimensions
  • UI corners being misaligned
  • UI sometimes getting 1 pixel gaps between panels
  • SetMaterialOverride( null ) not clearing any overrides
  • Prefab Root context menu giving options that resulted in error
  • TreeView not completing a SHIFT+CLICK action when the first item was selected outside of the tree
  • Locate Prefab option now always appearing when you'd expect it to
  • Depth-aware mask NaNs
  • Label scissoring with WorldPanels(https://files.facepunch.com/matt/1b2311b1/after.gif)
  • Model renderer local bounds being wrong
  • Fix rotated off-center box trace
  • Null GameResource icons preventing editor start-up
  • Blending mode on translucent objects, default alpha blending mode additive
  • Missing project settings button on asset projects
  • Input binds not saving
  • Dedicated server crashes when trying to use lobby methods
  • Error when in Eye Dropper tool of a list entry and the entry in the list is removed
  • Fixes a discrepancy between the hashed identity of TypeLibrary methods and MethodIdentity in WrappedMethod from CodeGen when the method is on a class contained within another class
  • BytePack struct serialization
  • TypeLibrary is disabled during cctors / package load
  • Context menu on normal files in the Asset Browser
  • Error when multi-selecting an asset and a normal file in the Asset Browser
  • Flickering when dragging material on to scene mesh
  • Tooltips linger when mousing out of a tooltipped pannel
  • Depth Linearization in Oblique Matrices
  • Crash in CSceneAnimatableObject::MergeFrom
  • [Button] not showing if not returning void
  • Fixed menu addon not loading in editor (due to whitelist)
  • ISceneStage spans the wraps the entire scene update, not just OnUpdate
  • Prevent EditorUtility.RenameDirectory making a directory a subdirectory of itself

๐Ÿšฏ Removed

  • Legacy particle system - legacy particles will no longer render
  • Prefab variables
  • Deleted many unused DLLs reducing the game size
  • Removed unstable GPU shadow culling
  • NativeRenderingWidget now doesn't render without a scene
  • Graphics.RenderToTexture (use CameraComponent.RenderToTexture)