June Update
0.3.0
1 June 2025
🎁 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
  • 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)
May Update
0.2.0
1 May 2025
🎁 Added
  • Added Keyboard Api
  • Added follower Prefab option to ParticleEffect
  • Added create prefab on collision option to ParticleEffect
  • Added TemporaryEffect component
  • Added SequenceAccessor.Looping
  • Added Mouse.Visibility
  • Added Decal Sheet Sequence
  • Added Compute dispatch indirect
  • Added EditorEvent.ISceneView.DrawGizmos
  • CommandList: Added Draw, DrawIndexed, DrawInstancedIndirect, DrawIndexedInstancedIndirect
  • CommandList: Added DispatchComputeIndirect & ResourceBarrierTransition
  • CommandList: Added GrabDepthTexture & Clear
  • ShaderGraph: Preview Post-Processing & Lighting Settings
  • ShaderGraph: Added GraphCompiler.RegisterInclude for Custom C# Nodes
  • Editor: Added Copy/Paste/Reset options to Group Headers and add Reset option to Feature Tab
  • Sound Event Default Mixer
🧼 Improved
  • Project settings are now shown in inspector
  • Cloud assets are read-only and can not be recompiled
  • WorldPanel sounds now play from the correct position and mixer
  • Servers now show across versions if the versions are compatible
  • Improved hotload speed
  • Asset Browser now listens for external file changes and refreshes automatically
  • Sprite and Line shaders use compute shaders instead of geometry shaders
  • Cubemaps now render directly to cubemap instead of copying to each face
  • Depth-Aware Mask For Framebuffer Copy
  • ShaderGraph cleanup, usability, and fixes
  • Re-Ordering a ListControlWidget no longer displays all values as the previously dragged value
  • Decal prefabs are staged when previewed
  • Panel.PlaySound and sound-in/sound-out now plays sounds in 3D if in WorldPanel
  • Most weapon animgraph 'components' have been turned into reusable subgraphs
  • CSS @keyframes not order properly
  • Sequence and direct playback accessors list sequences instead of animations
🪛 Fixed
  • Networking: Fixed outdated snapshot when downloading maps
  • Terrain: Fixed errors on dedicated servers
  • Terrain: Splatmap now default fills the first channel fixing blending
  • ShaderGraph: Fixed "Render Backfaces" option
  • ShaderGraph: Fixed "Open Generated Shader" button icon not displaying
  • ShaderGraph: Fixed named connections getting severed upon re-opening graph when name includes space
  • ShaderGraph: Fixed properties not clearing when you cut/delete nodes
  • ShaderGraph: Fixed DefaultOpacity on ShaderGraph Result Node (in Unlit/Post-Processing Shaders)
  • Material.IsTranslucent properly checks for "translucent" now
  • Fixed Generating envmaps infinitely when an envmap probe was disabled
  • Fixed MusicPlayer crashes
  • Fixed compute skinning for morphs with no skeleton
  • Fixed Component.OnAwake not getting called on disabled components during deserialization
  • Fixed case where resource compiler can fail with embedded resources
  • Fixed DisplayInfo.ForEnumValues name conflicts
  • Fixed Inspector Multi-Edit not resetting when leaving selection
  • Fixed EditorToolManager.SetSubTool not always working
  • Fixed RotationEditorTool handle position not always updating
  • Fixed very poor EventSystem performance
  • Fixed some FBXs crashing
  • Fixed navmesh division by zero on dual core PCs
  • Fixed skybox env probe updating when not active
🚯 Removed