SkinnedModelRenderer Animation Parameters: Set, SetIk, SetLookDirection, Pre-Spawn Caching, and ClearParameters
SkinnedModelRenderer Animation Parameters: Set, SetIk, SetLookDirection, and Pre-Spawn Caching stores animation parameters in a dictionary and applies them to t…
s&box Throwable: Grenade type enum
Throwable Enum Documentation Throwable is an enum that defines the type of throwable weapon for viewmodels. It is used by the ViewModel component to specify whi…
Component Versioning: JsonUpgrader for Scene and Prefab Migration
s&box component versioning uses attributes and the property to migrate serialized scene/prefab data when you make breaking changes to component properties. This…
Scene Metadata: ISceneMetadata for Queryable Scene and Prefab Data
The interface in s&box allows Components to save data that can be accessed without loading a Scene or cloning a Prefab. Metadata is accessible via or directly. …
Binary Serialization: BlobData for Large GameResource Data Storage
When JSON files grow too large in s&box, you can store data as a binary blob using the class. This works with GameResource assets and provides custom serializat…
GameResource Extensions: Appending Data to Existing Assets Without Modification
ResourceExtensions in s&box append additional data to existing GameResources without modifying the original class or assets. Useful for adding properties to Clo…
Custom Snapshot Data: INetworkSnapshot for s&box Joining Client Data Transfer
s&box Components can write and read custom data during the network snapshot process by implementing . The snapshot is sent to clients when they join a s&box mul…
Razor Panels: HTML/CSS UI with C# in s&box PanelComponent System
s&box Razor Panels use web-like HTML/CSS syntax with C# for UI creation. Panels are rendered natively (not via HTML renderer) — the syntax is a convenience laye…
Component Versioning: JsonUpgrader for Breaking Property Changes in s&box
s&box Component Versioning lets you define upgraders for breaking changes like property renames or data structure changes. Upgrades are chained — if a component…
Component.OnLoad: Async Loading Pattern — LoadingContext, Scene.IsLoading, and Loading Screen Integration
Component.OnLoad: Async Loading Pattern for Components Components can perform async loading work by overriding . This is the correct way to load resources async…
Scene Events: Interface-Based Broadcasting and Listening
s&box uses interface-based events to broadcast and listen to events within a scene. Events are sent to active Components and GameObjectSystems — they are NOT se…
Component Interfaces: IDamageable, ICollisionListener, ExecuteInEditor
s&box provides several built-in component interfaces for physics, damage, networking, and editor execution. ExecuteInEditor Runs component methods (OnAwake, OnE…
Network Visibility: Culling and INetworkVisible Interface
Network Visibility controls whether a networked object sends updates (Sync Vars, Transform) to a specific player. By default, all networked objects always trans…
PlayerController: Physics-Based Character with Events Interface
The component is a physics-based first/third person player controller. Add it to a scene and be running around with no programming required. Core Features Physi…
HudPainter: Immediate-Mode HUD Drawing in s&box
Each has a property (HudPainter) for immediate-mode drawing onto the screen. More efficient than UI panels since there's no layout, stylesheets, or interactivit…
Network Events: INetworkListener and INetworkSpawn Interfaces
React to players joining and leaving by implementing or on a component in the scene. INetworkListener Example Spawn a player object when someone joins: INetwork…
PlayerController: Architecture, Ground Detection, Jump System, WishVelocity Sync, and Physics Step Integration
PlayerController: Architecture, Ground Detection, and Jump System is the built-in s&box character movement component. It uses a internally and implements to hoo…
ActionGraph — visual scripting with action nodes, delegates, and C# integration
ActionGraph — Visual Scripting ActionGraph is s&box's visual scripting system. Nodes represent actions or expressions, and links carry values or signals between…
Sandbox: Weld tool — FixedJoint constraint with EasyMode rotation
Sandbox Weld Tool — Constraint Creation with EasyMode Rotation The Weld tool creates constraints between two GameObjects. It has an EasyMode that lets the playe…
MainThread.Queue: Running Code on the Main Thread from Worker Threads
MainThread.Queue: Running Code on the Main Thread from Worker Threads s&box is single-threaded for game logic. If you have code running on a worker thread (e.g.…