Undo System
Undo System Implement undo/redo functionality in editor tools. Basic Scope Capturing GameObject Changes GameObjectUndoFlags Capturing Creations Capturing Destru…
NavMesh Agent - s&box Gameplay Documentation
NavMesh Agent The NavMeshAgent component provides automatic navigation along the NavMesh. It handles pathfinding, obstacle avoidance, and smooth movement to tar…
Sandbox: ToolMode system — creating custom Tool Gun modes
ToolMode System — Creating Custom Tool Gun Modes is the base class for all Tool Gun tools in Sandbox. Tools are components on the Toolgun and are enabled/disabl…
Sandbox.Transform - Position, Rotation and Scale
Sandbox.Transform Position, rotation, and scale combined. Overview Transform combines position, rotation, and scale into a single matrix for efficient calculati…
VR Development
VR Development Build virtual reality experiences with OpenXR support, tracked devices, and VR-specific components. Setup Enable VR in your project settings. s&b…
Indirect Light Volumes (DDGI) — dynamic global illumination probe grid
Indirect Light Volumes (DDGI) places a probe grid for dynamic global illumination — light bouncing off surfaces tints nearby objects, and sunlight fades natural…
Sandbox: Map entities — Door, Button, FuncMover, TriggerPush, TriggerTeleport
Sandbox Map Entities — Door, Button, FuncMover, TriggerPush, TriggerTeleport These components implement interactive map elements. They live in the namespace and…
Rendering entities — TextRenderer, LineRenderer, SpriteRenderer, TrailRenderer, and ModelRenderer
Rendering Entities — Text, Line, Sprite, and Trail Renderers s&box provides several lightweight renderer components for common visual needs that don't require a…
Common s&box component gotchas — physics, networking, scene, and rendering pitfalls
Common s&box Component Gotchas Practical pitfalls that catch most new s&box developers. Physics Rigidbody + CharacterController on the same GO — don't do it. Th…
s&box SoundHandle: Full Audio Playback Control API
s&box SoundHandle: Full Audio Playback Control API is returned by and gives full control over a playing sound. Playing Sounds SoundHandle Properties Stopping St…
s&box NpcConVars: Global NPC AI settings
NpcConVars Static Class NpcConVars is a static class that defines console variables controlling global NPC AI behavior in s&box. These ConVars can be set via co…
s&box built-in component quick reference — rendering, physics, navigation, UI, and audio
s&box Component Quick Reference A cheat sheet of the most commonly used built-in components and what they do. Rendering Lighting Physics Navigation UI Audio Gam…
NetworkHelper — quick multiplayer setup with auto-server and player spawning
NetworkHelper — Quick Multiplayer Setup is a built-in s&box component that handles the boilerplate of starting a server and spawning players. It's the fastest w…
s&box SnapGrid: World-space snap grid overlay
SnapGrid: World-Space Snap Grid Overlay SnapGrid is a sealed class that manages a world-space snap grid overlay projected onto a surface plane. It is used by th…
Scene.Load and Scene.LoadFromFile: Loading Scenes, DontDestroyOnLoad, and the Loading Sequence
Scene.Load and Scene.LoadFromFile: Loading Scenes Locally loads a scene file into the current scene. This is a local-only operation — it does not bring other cl…
Reusable World-Space Interaction Prompt Framework
A small, compartmentalized interaction framework can be built from three pieces: : the base component placed on objects the player can use. : the player-side ra…
Sound.Play and SoundHandle: 3D Audio, Volume, Pitch, Occlusion, UI Sounds, and Dedicated Server Behavior
Sound.Play and SoundHandle: Audio Playback in s&box is the static entry point for audio playback. is the returned handle for controlling a playing sound. Playin…
s&box Source Generator: IUpdateSubscriber, WrappedPropertySet, and How [Sync]/[Rpc.*] Work at Compile Time
s&box Source Generator: How [CodeGenerator] Works for [Sync] and [Rpc.*] The Roslyn source generator transforms your C# code at compile time. Understanding this…
SkinnedModelRenderer: Bone Merge, Animation Parameters, Sequences, Attachments, and Animation Events
SkinnedModelRenderer: Bone Merge, Animation Parameters, and Attachments extends for models with bones and animations. It integrates with the for threaded animat…