# s&box > s&box is a game engine built on Valve's Source 2 and the latest .NET technology, developed by Facepunch. It provides a modern editor for creating games. Games and addons are written entirely in C# using the latest .NET SDK. The engine source code is open source under the MIT License at https://github.com/Facepunch/sbox-public When helping s&box developers, refer to the documentation and API reference below. The s&box API covers scenes, game objects, components, networking, physics, rendering, UI, audio, input, and more. All game logic is C# — there is no C++ required. All documentation pages below are available as raw markdown by appending `.md` to the URL. ## Documentation - [First Steps](/dev/doc/about/getting-started/first-steps.md) - [Development](/dev/doc/about/getting-started/development.md) - [Reporting Errors](/dev/doc/about/getting-started/reporting-errors.md) - [Project Types](/dev/doc/about/getting-started/project-types.md) - [Addon Project](/dev/doc/about/getting-started/project-types/addon-project.md) - [Game Project](/dev/doc/about/getting-started/project-types/game-project.md) - [Monetization](/dev/doc/about/getting-started/monetization.md) - [FAQ](/dev/doc/about/faq.md) - [Status](/dev/doc/about/status.md) - [Cheat Sheet](/dev/doc/code/code-basics/cheat-sheet.md) - [Math Types](/dev/doc/code/code-basics/math-types.md) - [Api Whitelist](/dev/doc/code/code-basics/api-whitelist.md) - [Console Variables](/dev/doc/code/code-basics/console-variables.md) - [Hotloading](/dev/doc/code/advanced-topics/hotloading.md) - [Unit Tests](/dev/doc/code/advanced-topics/unit-tests.md) - [Code Generation](/dev/doc/code/advanced-topics/code-generation.md) - [Libraries](/dev/doc/code/libraries.md) - [ActionGraph](/dev/doc/systems/actiongraph.md) - [Intro to ActionGraphs](/dev/doc/systems/actiongraph/intro-to-actiongraphs.md) - [Component Actions](/dev/doc/systems/actiongraph/component-actions.md) - [Using With C#](/dev/doc/systems/actiongraph/using-with-c.md) - [Variables](/dev/doc/systems/actiongraph/variables.md) - [Custom Nodes](/dev/doc/systems/actiongraph/custom-nodes.md) - [Action Resources](/dev/doc/systems/actiongraph/custom-nodes/action-resources.md) - [C# Method Nodes](/dev/doc/systems/actiongraph/custom-nodes/c-method-nodes.md) - [Examples](/dev/doc/systems/actiongraph/examples.md) - [Binary Serialization](/dev/doc/systems/assetsresources/binary-serialization.md) - [Custom Assets](/dev/doc/systems/assetsresources/custom-assets.md) - [GameResource Extensions](/dev/doc/systems/assetsresources/gameresource-extensions.md) - [Cloud Assets](/dev/doc/systems/assetsresources/cloud-assets.md) - [Clutter](/dev/doc/systems/clutter.md) - [Indirect Light Volumes](/dev/doc/systems/effects/indirect-light-volumes.md) - [Particle Effect](/dev/doc/systems/effects/particle-effect.md) - [Custom Particle Controller](/dev/doc/systems/effects/particle-effect/custom-particle-controller.md) - [BeamEffect](/dev/doc/systems/effects/beams/beameffect.md) - [Tracers](/dev/doc/systems/effects/beams/tracers.md) - [DecalDefinition](/dev/doc/systems/effects/decals/decaldefinition.md) - [Decal Component](/dev/doc/systems/effects/decals/decal-component.md) - [Lifetime](/dev/doc/systems/effects/decals/lifetime.md) - [Animated Effects](/dev/doc/systems/effects/decals/animated-effects.md) - [File System](/dev/doc/systems/file-system.md) - [Input](/dev/doc/systems/input.md) - [Raw Input](/dev/doc/systems/input/raw-input.md) - [Controller Input](/dev/doc/systems/input/controller-input.md) - [Glyphs](/dev/doc/systems/input/glyphs.md) - [Movie Maker](/dev/doc/systems/movie-maker.md) - [Getting Started](/dev/doc/systems/movie-maker/getting-started.md) - [Editor Map](/dev/doc/systems/movie-maker/editor-map.md) - [Keyframe Editing](/dev/doc/systems/movie-maker/keyframe-editing.md) - [Motion Editing](/dev/doc/systems/movie-maker/motion-editing.md) - [Skeletal Animation](/dev/doc/systems/movie-maker/skeletal-animation.md) - [Recording](/dev/doc/systems/movie-maker/recording.md) - [Sequences](/dev/doc/systems/movie-maker/sequences.md) - [Exporting Video](/dev/doc/systems/movie-maker/exporting-video.md) - [Playback API](/dev/doc/systems/movie-maker/playback-api.md) - [Recording API](/dev/doc/systems/movie-maker/recording-api.md) - [Networking & Multiplayer](/dev/doc/systems/networking-multiplayer.md) - [Network Visibility](/dev/doc/systems/networking-multiplayer/network-visibility.md) - [Http Requests](/dev/doc/systems/networking-multiplayer/http-requests.md) - [Dedicated Servers](/dev/doc/systems/networking-multiplayer/dedicated-servers.md) - [Running Local Projects](/dev/doc/systems/networking-multiplayer/dedicated-servers/running-local-projects.md) - [Serverside Code](/dev/doc/systems/networking-multiplayer/dedicated-servers/serverside-code.md) - [User Permissions](/dev/doc/systems/networking-multiplayer/dedicated-servers/user-permissions.md) - [WebSockets](/dev/doc/systems/networking-multiplayer/websockets.md) - [Networked Objects](/dev/doc/systems/networking-multiplayer/networked-objects.md) - [Testing Multiplayer](/dev/doc/systems/networking-multiplayer/testing-multiplayer.md) - [Ownership](/dev/doc/systems/networking-multiplayer/ownership.md) - [Sync Properties](/dev/doc/systems/networking-multiplayer/sync-properties.md) - [RPC Messages](/dev/doc/systems/networking-multiplayer/rpc-messages.md) - [Network Events](/dev/doc/systems/networking-multiplayer/network-events.md) - [Network Helper](/dev/doc/systems/networking-multiplayer/network-helper.md) - [Custom Snapshot Data](/dev/doc/systems/networking-multiplayer/custom-snapshot-data.md) - [Connection Permissions](/dev/doc/systems/networking-multiplayer/connection-permissions.md) - [Navigation](/dev/doc/systems/navigation.md) - [NavMesh Areas](/dev/doc/systems/navigation/navmesh-areas.md) - [Costs & Filters](/dev/doc/systems/navigation/navmesh-areas/costs-filters.md) - [Obstacles](/dev/doc/systems/navigation/navmesh-areas/obstacles.md) - [NavMesh Agent](/dev/doc/systems/navigation/navmesh-agent.md) - [NavMesh Links](/dev/doc/systems/navigation/navmesh-links.md) - [Post Processing](/dev/doc/systems/post-processing.md) - [Effects](/dev/doc/systems/post-processing/effects.md) - [FilmGrain](/dev/doc/systems/post-processing/effects/filmgrain.md) - [Tonemapping](/dev/doc/systems/post-processing/effects/tonemapping.md) - [PostProcessVolume](/dev/doc/systems/post-processing/postprocessvolume.md) - [Creating PostProcesses](/dev/doc/systems/post-processing/creating-postprocesses.md) - [Stats](/dev/doc/systems/services/stats.md) - [Achievements](/dev/doc/systems/services/achievements.md) - [Leaderboards](/dev/doc/systems/services/leaderboards.md) - [Web Api](/dev/doc/systems/services/leaderboards/web-api.md) - [Auth Tokens](/dev/doc/systems/services/auth-tokens.md) - [Storage (UGC)](/dev/doc/systems/storage-ugc.md) - [Getting Started](/dev/doc/systems/shader-graph/getting-started.md) - [Properties](/dev/doc/systems/shader-graph/properties.md) - [Variables](/dev/doc/systems/shader-graph/variables.md) - [Custom Nodes](/dev/doc/systems/shader-graph/custom-nodes.md) - [Creating a Subgraph](/dev/doc/systems/shader-graph/custom-nodes/creating-a-subgraph.md) - [C# Shader Nodes](/dev/doc/systems/shader-graph/custom-nodes/c-shader-nodes.md) - [Getting Started](/dev/doc/systems/shaders/getting-started.md) - [Classes](/dev/doc/systems/shaders/classes.md) - [G-Buffer](/dev/doc/systems/shaders/classes/g-buffer.md) - [Bindless API](/dev/doc/systems/shaders/classes/bindless-api.md) - [Dynamic Reflections](/dev/doc/systems/shaders/classes/dynamic-reflections.md) - [Light](/dev/doc/systems/shaders/classes/light.md) - [Fog](/dev/doc/systems/shaders/classes/fog.md) - [Motion](/dev/doc/systems/shaders/classes/motion.md) - [Screen Space Tracing](/dev/doc/systems/shaders/classes/screen-space-tracing.md) - [Texture Sheets](/dev/doc/systems/shaders/classes/texture-sheets.md) - [SSAO](/dev/doc/systems/shaders/classes/ssao.md) - [Depth](/dev/doc/systems/shaders/classes/depth.md) - [Screen-Space Reflections](/dev/doc/systems/shaders/reference/screen-space-reflections.md) - [Default Vertex and Pixel Shader Inputs](/dev/doc/systems/shaders/reference/default-vertex-and-pixel-shader-inputs.md) - [Global Variables](/dev/doc/systems/shaders/reference/global-variables.md) - [Vertex Helpers](/dev/doc/systems/shaders/reference/vertex-helpers.md) - [Modes](/dev/doc/systems/shaders/modes.md) - [Attributes and Variables](/dev/doc/systems/shaders/attributes-and-variables.md) - [Shading Model](/dev/doc/systems/shaders/shading-model.md) - [Sampler States](/dev/doc/systems/shaders/sampler-states.md) - [Render States](/dev/doc/systems/shaders/render-states.md) - [Material](/dev/doc/systems/shaders/material.md) - [Command Lists](/dev/doc/systems/shaders/command-lists.md) - [GPU Instancing](/dev/doc/systems/shaders/gpu-instancing.md) - [Terrain](/dev/doc/systems/terrain.md) - [Creating Terrain](/dev/doc/systems/terrain/creating-terrain.md) - [Terrain Materials](/dev/doc/systems/terrain/terrain-materials.md) - [UI](/dev/doc/systems/ui.md) - [Styling Panels](/dev/doc/systems/ui/styling-panels.md) - [Style Properties](/dev/doc/systems/ui/styling-panels/style-properties.md) - [Razor Panels](/dev/doc/systems/ui/razor-panels.md) - [Razor Components](/dev/doc/systems/ui/razor-panels/razor-components.md) - [Localization](/dev/doc/systems/ui/localization.md) - [HudPainter](/dev/doc/systems/ui/hudpainter.md) - [VirtualGrid](/dev/doc/systems/ui/virtualgrid.md) - [VR](/dev/doc/systems/vr.md) - [Game Exporting](/dev/doc/systems/game-exporting.md) - [Scenes](/dev/doc/scene/scenes.md) - [Tracing](/dev/doc/scene/scenes/tracing.md) - [Scene Metadata](/dev/doc/scene/scenes/scene-metadata.md) - [GameObject](/dev/doc/scene/gameobject.md) - [Components](/dev/doc/scene/components.md) - [Component Methods](/dev/doc/scene/components/component-methods.md) - [Execution Order](/dev/doc/scene/components/execution-order.md) - [Component Interfaces](/dev/doc/scene/components/component-interfaces.md) - [ITemporaryEffect](/dev/doc/scene/components/component-interfaces/itemporaryeffect.md) - [Async](/dev/doc/scene/components/async.md) - [Component Versioning](/dev/doc/scene/components/advanced-topics/component-versioning.md) - [Hammer Mesh](/dev/doc/scene/components/reference/hammer-mesh.md) - [Player Controller](/dev/doc/scene/components/reference/player-controller.md) - [TemporaryEffect](/dev/doc/scene/components/reference/temporaryeffect.md) - [Events](/dev/doc/scene/components/events.md) - [IGameObjectNetworkEvents](/dev/doc/scene/components/events/igameobjectnetworkevents.md) - [IScenePhysicsEvents](/dev/doc/scene/components/events/iscenephysicsevents.md) - [ISceneStartup](/dev/doc/scene/components/events/iscenestartup.md) - [GameObjectSystem](/dev/doc/scene/gameobjectsystem.md) - [Prefabs](/dev/doc/scene/prefabs.md) - [Instance Overrides](/dev/doc/scene/prefabs/instance-overrides.md) - [Prefab Templates](/dev/doc/scene/prefabs/prefab-templates.md) - [Shortcuts](/dev/doc/editor/mapping/shortcuts.md) - [Editor Project](/dev/doc/editor/editor-project.md) - [Editor Widgets](/dev/doc/editor/editor-widgets.md) - [Editor Apps](/dev/doc/editor/editor-apps.md) - [Property Attributes](/dev/doc/editor/property-attributes.md) - [Custom Editors](/dev/doc/editor/custom-editors.md) - [Asset Previews](/dev/doc/editor/asset-previews.md) - [Editor Shortcuts](/dev/doc/editor/editor-shortcuts.md) - [Editor Events](/dev/doc/editor/editor-events.md) - [Texture Generators](/dev/doc/editor/texture-generators.md) - [Editor Tools](/dev/doc/editor/editor-tools.md) - [Component Editor Tools](/dev/doc/editor/editor-tools/component-editor-tools.md) - [Undo System](/dev/doc/editor/undo-system.md) - [Model Editor](/dev/doc/editor/model-editor.md) - [First Time Setup](/dev/doc/assets/clothing/first-time-setup.md) - [Guidelines & Quality Bar](/dev/doc/assets/clothing/guidelines-quality-bar.md) - [Layering Clothing](/dev/doc/assets/clothing/layering-clothing.md) - [Publishing Clothing](/dev/doc/assets/clothing/publishing-clothing.md) - [Morphing to Humans](/dev/doc/assets/clothing/morphing-to-humans.md) - [Making a Hat](/dev/doc/assets/clothing/making-a-hat.md) - [Ready-to-use Assets](/dev/doc/assets/ready-to-use-assets.md) - [First-Person Weapons](/dev/doc/assets/ready-to-use-assets/first-person-weapons.md) - [Citizen Characters](/dev/doc/assets/ready-to-use-assets/citizen-characters.md) ## API Reference - [API Reference](/api): Browse the s&box API by type and namespace