s&box Rigidbody Component: Physics Body Reference
s&box Rigidbody Component: Physics Body Reference adds physics simulation to a . It requires at least one component on the same object. Key Properties Force and…
s&box PhysicsBody: Body Types, Adding Shapes, Forces vs Impulses, Move vs Transform
s&box PhysicsBody: Body Types, Shapes, Forces, and Move vs Transform is the s&box physics simulation object. It wraps the native physics engine and can have mul…
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…
s&box DamageTags: Damage type constants
DamageTags Static Class DamageTags is a static class that defines constant string tags used for damage type identification in the s&box damage system. These tag…
Joint Components: HingeJoint Motor Modes, BreakForce, Body Resolution, and Joint Creation Timing
Joint Components: HingeJoint, FixedJoint, and the Joint Base Class s&box provides physics joint components for constraining physics bodies. All joints extend th…
ModelRenderer: Body Groups, Material Override, Material Groups, Shadow Modes, and LOD Override
ModelRenderer: Body Groups, Material Override, Shadow Modes, and LOD renders a static (non-skinned) model in the world. It creates a in the . Basic Usage Body G…
Rigidbody Component: Networked Velocity, Proxy Physics Simulation, Impact Damage, and SmoothMove
Rigidbody Component: Networking, Velocity Sync, and Proxy Physics Simulation The component is the primary way to add physics simulation to a . It implements and…
Collider Component: Triggers, Surface Properties, Keyframe Bodies, Concave Shapes, and Tag Propagation
Collider Component: Triggers, Surface Properties, and Keyframe Bodies The abstract base class is the foundation for all physics colliders in s&box (, , , , ). T…
Hotloading - s&box Documentation
Hotloading Whenever you save a code file in your project (.cs or .razor files), we recompile and attempt to live-reload the changed assembly. This lets you quic…
Razor Panels: HTML/CSS UI with C# in s&box
s&box UI can be created using Razor syntax — web-like HTML/CSS combined with C#. Panels are not rendered via a HTML renderer; the syntax is a convenience layer …
IScenePhysicsEvents: Pre and Post Physics Step Hooks
lets Components or GameObjectSystems wrap logic around the physics step. Implement it when you have systems that work closely with physics and need to run code …
Particle Effects: CPU-Simulated Programmable Particle System
The s&box particle system is CPU-simulated (multithreaded) and fully programmable via components. You can emit particles manually, iterate and modify them at ru…
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…
Particle Effects System
Particle Effects System CPU-simulated, fully controllable particle system for effects like fire, smoke, sparks, and explosions. Architecture The particle system…
Custom Particle Controller - s&box Documentation
Official s&box documentation for the Particle System - visual effects. Particle Effect creates GPU-accelerated visual effects. Custom Particle Controllers scrip…
Physics Events - s&box Physics Documentation
Physics Events Receive callbacks for physics events in the scene. IScenePhysicsEvents Implement this interface on a component to receive scene-wide physics even…
Hotloading — live code reloading, IL fast path, and common pitfalls
Hotloading — Live Code Reloading s&box recompiles and live-reloads your assembly whenever you save a or file. You don't need to restart the editor for most chan…
FixedUpdate Internals: Step Counting, Spiral of Death Prevention, Time.Scope, and ApplyForce vs ApplyImpulse
FixedUpdate Internals: How the Fixed Timestep Works in s&box The s&box fixed update system uses a step-counting approach rather than accumulating time. This is …