Video: VideoPlayer Decoding and VideoWriter Encoding with Streaming Support
s&box provides VideoPlayer for decoding video and VideoWriter for encoding video frames. VideoPlayer Decodes video files or URLs, exposing the current frame as …
Post Processing System
Post Processing System Add visual effects like bloom, tonemapping, and film grain with post-processing volumes. Overview Post processing in s&box uses a volume-…
Creating Terrain: Heightmap Setup, World Scale, and Asset Reuse
To add Terrain to your s&box scene, right-click in the Hierarchy and select 3D Object → Terrain. The inspector prompts you to create, import, or link an existin…
s&box DemoRecording with DefaultMovieRecorderOptions
s&box DemoRecording with DefaultMovieRecorderOptions This example shows how to configure s&box's MovieRecorder system using the [DefaultMovieRecorderOptions] at…
s&box Ownable: Ownership tracking component
Ownable Component API Reference Ownable is a Component that tracks which Connection (player) spawned a GameObject, enabling prop protection and ownership checks…
s&box EmitMode: Emitter firing mode
EmitMode Enum API Reference EmitMode is an enum that defines how an emitter fires - either toggling on/off with a press, or emitting only while input is held do…
Execution Order - s&box Documentation
Execution Order Understanding the order in which component methods are called. Flowchart Component lifecycle follows a specific order: Constructor — Object crea…
Shaders in s&box - HLSL and Shading Models
Shaders in s&box - HLSL and Shading Models Write custom shaders in HLSL with Source 2's shading models, render states, and GPU instancing support. Shader Develo…
Sandbox: Full codebase architecture — systems, player components, weapons, tools, NPCs
Sandbox Codebase Architecture Overview The Facepunch Sandbox game is a large reference implementation. Here's a map of the major systems and how they connect. C…
s&box GamePreferences: User preferences
GamePreferences Static Class GamePreferences is a static class that defines the local user's preferences for the game. These ConVars control player-specific set…
s&box WeaponConVars: Global weapon settings
WeaponConVars Static Class WeaponConVars is a static class that defines console variables controlling global weapon behavior in s&box. These ConVars can be set …
Serverside Code: #if SERVER Blocks and .Server.cs Files for Hidden Logic
s&box supports serverside-only code that is stripped from client builds. This only works when running local projects on dedicated servers. #if SERVER Blocks Cod…
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…
ConVar and ConCmd — console variables and commands with flags and game settings
ConVar and ConCmd — Console Variables and Commands and are s&box attributes for exposing variables and commands to the developer console. Console Commands Conso…
s&box Game Static Class: Core Game State and Operations
s&box Game Static Class: Core Game State and Operations The static class provides global access to core game state, utilities, and operations. Scene Management …
s&box ScriptedEntity: Custom entity GameResource
ScriptedEntity GameResource API Reference ScriptedEntity is a GameResource that defines a spawnable entity with a prefab, used by the spawn menu to create custo…
GameObjectSystem — scene-wide systems with stage-ordered execution and static access
GameObjectSystem — Scene-Wide Systems is a base class for scene-level systems that need to run at specific points in the frame — before or after physics, render…
Dedicated Server User Permissions: Claims-Based Access Control via Steam ID
On s&box Dedicated Servers, you can specify admin permissions per user via the file using Steam IDs and claims. Configuration Claims Claims are strings describi…
MusicPlayer: Streaming Audio with Visualization and World-Space Positioning
in s&box handles music tracks and streaming audio with programmatic control over playback, positioning, and visualization. For sound effects, use the Sound syst…
Networking State in s&box: IsHost, IsClient, IsActive, and Lobby Management
Networking State in s&box: IsHost, IsClient, IsActive Understanding the networking state is critical for writing correct multiplayer code in s&box. Key Properti…