API Sandbox
namespace

Sandbox

533 types

Classes

Type Name Description
class Achievement
class AchievementCollection Holds achievements for a package
class ActionGraphExposeWhenCachedAttribute Don't cache instances of this type when serializing action graph references, force them to be always serialized separate
class ActionGraphIgnoreAttribute
class ActionGraphIncludeAttribute
class ActionGraphNodeAttribute
class ActionGraphOperatorAttribute Display this node as an operator, with no header or socket labels, and a big icon in the middle.
class ActionGraphPropertyAttribute In ActionGraph, this parameter should only be configurable in the inspector as a property and not have a dedicated input
class ActionGraphTargetAttribute
class ActionNodeAttribute
class AdvancedAttribute Some properties are not meant for the average user, hide them unless they really want to see them.
class AmbientLight Adds an ambient light to the scene, applied globally.
class AmbientOcclusion Adds an approximation of ambient occlusion using Screen Space Ambient Occlusion (SSAO). It darkens areas where ambient l
class AnimationBuilder Provides ability to generate animations for a Model at runtime. See Single)
class AnimationGraph
class AnimationSequence
class AnimGraphDirectPlayback For communicating with a Direct Playback Anim Node, which allows code to tell it to play a given sequence
class Application
class AssetPathAttribute When added to a string property, will becomes a selector for AssetTypeExtension
class AssetTypeAttribute Should be applied to a class that inherits from GameResource. Makes the class able to be stored as an asset on disk.
class AudioListener If this exists and is enabled in a scene, then the client will hear from this point rather than from the cameras point o
class AuthorityAttribute Marks a method as being an RPC specifically targeted to the owner of the GameObject, or the host if the GameObject doesn
class AutoGenerateAttribute Indicates that this type should generate meta data. Tagging your asset with this will mean that the .asset file is autom
class BallJoint Fix two objects together but can rotate - like a shoulder.
class BallJointBuilder Provides ability to generate a ball joint for a Model at runtime.
class BaseChair
class BaseFileSystem A filesystem. Could be on disk, or in memory, or in the cloud. Could be writable or read only. Or it could be an aggrega
class BasePostProcess The base class for all post process effects.
class BasePostProcess<T> Like BasePostProcess but enables access to helper methods for accessing from multiple instances using GetWeighted.
class BaseSoundComponent
class BeamEffect The BeamEffect component creates a visual beam effect in the scene, simulating a continuous line or laser-like effect. U
class BitFlagsAttribute This choices type is bitflags, so we should be able to choose more than one option at a time.
class Bitmap
class BlitOverlay Draw a material over the screen
class BlobData Base class for properties that should be serialized to binary format instead of JSON. Used for large data structures tha
class Bloom Applies a bloom effect to the camera
class Blur Applies a blur effect to the camera.
class BoneCollection A collection of bones. This could be from a model, or an entity
class BoxCollider Defines a box collider.
class BroadcastAttribute Marks a method as being an RPC that when invoked will be called for all connected clients including the host. The state
class ButtonAttribute When added to a method - the inspector will show a button for it.
class CachingHandler
class CameraComponent Every scene should have at least one Camera.
class CapsuleCollider Defines a capsule collider.
class CaseInsensitiveConcurrentDictionary<T>
class CaseInsensitiveDictionary<T>
class ChangeAttribute This will invoke a method when the property changes. It can be used with any property but is especially useful when comb
class CharacterController Allows collision constrained movement without the need for a rigidbody. This is not affected by forces and will only mov
class ChromaticAberration Applies a chromatic aberration effect to the camera
class ClientEditableAttribute Indicates that this propery can be edited by the client, in a game like Sandbox Mode. In reality this is used however th
class Clothing Describes an item of clothing and implicitly which other items it can be worn with
class ClothingContainer Holds a collection of clothing items. Won't let you add items that aren't compatible.
class Cloud For accessing assets from the cloud - from code
class CodeArchive
class CodeGeneratorAttribute An attribute that can be added to a custom Attribute class for special code generation behavior. They'll then be applied
class Collider
class CollisionSoundSystem This system exists to collect pending collision sounds and filter them into a unique set, to avoid unnesssary sounds pla
class ColorAdjustments Applies color adjustments to the camera.
class ColorGrading Applies color grading to the camera
class ColorUsageAttribute When applied to a Color property, allows you to specify whether the color should have an alpha channel and/or be in HDR.
class CompileGroup
class Compiler Given a folder of .cs files, this will produce (and load) an assembly
class CompilerExtensions
class CompilerOutput
class Component A GameObject can have many components, which are the building blocks of the game.
class ComponentList
class ComputeBuffer<T>
class ComputeShader A compute shader is a program that runs on the GPU, often with data provided to/from the CPU by means of a GpuBuffer`1 o
class ConCmdAttribute
class ConfigData Project configuration data is derived from this class
class Connection A connection, usually to a server or a client.
class ConsoleSystem A library to interact with the Console System.
class ControlJoint
class ControlModeSettings
class ConVarAttribute Console variable
class CookieContainer
class CubemapFog Applies a cubemap fog effect to the camera
class CubemapFogController
class CursorSettings
class CustomEditorAttribute
class CustomEmbeddedEditorAttribute
class DamageInfo Describes the damage that should be done to something. This is purposefully a class so it can be derived from, allowing
class DebugOverlaySystem
class Decal The Decal component projects textures onto model's opaque or transparent surfaces. They inherit and modify the PBR prope
class DecalDefinition A decal which can be applied to objects and surfaces.
class DecalGameSystem
class DecalRenderer Component that creates a projected decal relative to its GameObject.
class DepthOfField Applies a depth of field effect to the camera
class DirectionalLight A directional light that casts shadows, like the sun.
class Dresser Allows easily dressing a citizen or human in clothing
class DspVolume
class EditorHandleAttribute When applied to a component, the editor will draw a selectable handle sprite for the gameobject in scene
class EditorSystemPublic
class EnumButtonGroupAttribute Forces an enum property to be shown as a group of buttons.
class EnumDescription
class EnvmapProbe A cubemap probe that captures the environment around it.
class EventAttribute A generic event listener. You are probably looking for Sandbox.Event.* attributes.
class ExpressionNodeAttribute
class FeatureAttribute Sets the category or the group of a type or a type member. This info can then be retrieved via DisplayInfo library.
class FeatureEnabledAttribute Mark a boolean property as a feature toggle
class FGDTypeAttribute Overrides the auto generated FGD type.
class FieldDescription Describes a field. We use this class to wrap and return FieldInfo's that are safe to interact with. Returne
class FilePathAttribute When added to a string property, will become a file picker for the given extension (or all by default)
class FileSystem A filesystem that can be accessed by the game.
class FileWatch Watch folders, dispatch events on changed files
class FilmGrain Applies a film grain effect to the camera
class FireDamage Applies fire damage to any IDamageable in our Root object. Damage is tagged "fire" and "burn"
class FixedJoint Weld two physics objects together
class FixedJointBuilder Provides ability to generate a fixed joint for a Model at runtime.
class FontNameAttribute When applied to a string property, uses a font name selector.
class Game Provides global access to core game state, utilities, and operations for S&amp;box. The Game class exposes static prope
class GameObject An object in the scene. Functionality is added using Components. A GameObject has a transform, which explains its positi
class GameObjectDirectory New GameObjects and Components are registered with this class when they're created, and unregistered when they're remov
class GameObjectSystem Allows creation of a system that always exists in every scene, is hooked into the scene's lifecycle, and is disposed wh
class GameObjectSystem<T> A syntax sugar wrapper around GameObjectSystem, which allows you to access your system using SystemName.Current instead
class GameResource Assets defined in C# and created through tools. You can define your own Custom Asset Types.
class GameResourceAttribute
class GameTags Entity Tags are strings you can set and check for on any entity. Internally these strings are tokenized and networked so
class GameTask A generic TaskSource.
class GameTransform
class Gib A gib is a prop that is treated slightly different. It will fade out after a certain amount of time.
class Gizmo
class Global Utility info for tools usage.
class GpuBuffer A GPU data buffer intended for use with a ComputeShader. You can read and write arbitrary data to and from the CPU and
class GpuBuffer<T> A typed GpuBuffer
class GradientFog Adds a gradient fog to the world
class Graphics Used to render to the screen using your Graphics Card, or whatever you kids are using in your crazy future computers. Wh
class HammerMesh Added automatically by Hammer to GameObjects that have a map mesh tied to them. When a map is compiled the Model propert
class HapticEffect Contains a haptic effect, which consists of patterns for the controller and triggers.
class HapticPattern Contains a haptic pattern, which consists of frequency and amplitude values that can change over time.
class HasImplementationAttribute In ActionGraph, this type parameter can only be satisfied by a type TArg, such that there exists at least one non-abstra
class HeaderAttribute Add a header above this property
class HelpUrlAttribute Add a link to some documentation for this component, or
class HideAttribute Hide this in tools/editors.
class Highlight This should be added to a camera that you want to outline stuff
class HighlightOutline This component should be added to stuff you want to be outlined. You will also need to add the Highlight component to t
class HingeJoint Create a hinged connection between two physics objects. Like a door hinge or a wheel.
class HingeJointBuilder Provides ability to generate a hinge joint for a Model at runtime.
class Hitbox
class HitboxSet A set of hitboxes on a model. Hitboxes can be boxes, spheres or capsules.
class HostSyncAttribute Automatically synchronize a property of a networked object from the host to other clients. Obsolete: 11/12/2024
class Http Lets your game make async HTTP requests.
class HullCollider Defines a box, cone, or cylinder hull collider.
class IconNameAttribute When applied to a string property, uses a Material Icon selector.
class ImageAssetPathAttribute When added to a string property, will become an image string selector
class ImpureAttribute
class IndirectLightVolume Dynamic Diffuse Global Illumination volume that provides indirect lighting using a 3D probe grid. Probes store irradianc
class InfoBoxAttribute Draw a box with information above this property
class InlineEditorAttribute Tell the editor to try to display inline editing for this property, rather than hiding it behind a popup etc.
class Input Allows querying of player button presses and other inputs.
class InputAction An input action defined by a game project.
class InputActionAttribute When applied to a string property, use an input action selector.
class InputAttribute Makes this method available as a Map Logic Input, for use in the Hammer Editor. This is only applicable to entities.
class InputSettings A class that holds all configured input settings for a game. This is serialized as a config and shared from the server t
class InspectorVisibilityAttribute Hide a property if a condition matches.
class ITagSet
class Joint
class Json A convenience JSON helper that handles Resource types for you.
class JsonUpgraderAttribute An attribute that describes a version update for a JSON object.
class KeyPropertyAttribute Mark this property as the key property - which means that it can represent the whole object in a single line, while usua
class KeyStore Allows storing files by hashed keys, rather than by actual filename. This is sometimes useful.
class Language Allows access to translated phrases, allowing the translation of gamemodes etc
class LanguageContainer A container for the current language, allowing access to translated phrases and language information.
class LaunchArguments These are arguments that were set when launching the current game. This is used to pre-configure the game from the menu
class LegacyParticleSystem Support's Source Engine's vpcf particles
class LibraryAttribute
class Light
class LineRenderer Renders a line between a list of points
class LipSync Drive morphs with lipsync from sounds.
class LoadingContext
class LoadingScreen Holds metadata and raw data relating to a Saved Game.
class MainThread Utility functions that revolve around the main thread
class MakeDirtyAttribute
class ManifestSchema An addon's manifest, describing what files are available
class ManualHitbox A hitbox that can be placed manually on a GameObject, instead of coming from a model
class Map
class MapAssetPathAttribute When added to a string property, will become a map string selector
class MapCollider
class MapInstance Allows you to load a map into the Scene. This can be either a vpk or a scene map.
class MapLoader
class MapObjectComponent
class MapSkybox3D
class Material A material. Uses several Textures and a Shader with specific settings for more interesting visual effects.
class MaterialGroupBuilder
class MathX A class to add functionality to the math library that System.Math and System.MathF don't provide. A lot of these methods
class MemberDescription Wraps MemberInfo but with caching and sandboxing. Returned by TypeLibrary and TypeDescription.
class Mesh A mesh is a basic version of a Model, containing a set of vertices and indices which make up faces that make up a shape.
class MeshComponent An editable polygon mesh with collision
class Metadata A simple class for storing and retrieving metadata values.
class MethodArgumentsAttribute Specify the types of arguments a method should have. Typically used with event attributes to throw an exception if an ev
class MethodBodyChangeAttribute
class MethodDescription Describes a method. We use this class to wrap and return MethodInfo's that are safe to interact with. Retur
class MissingComponent This is added when a component is missing. It will store the json data of the missing component, so we don't lose any da
class Model A model.
class ModelAttachments
class ModelBuilder Provides ability to generate Models at runtime. A static instance of this class is available at Builder
class ModelCollider Defines a collider based on a model.
class ModelHitboxes Hitboxes from a model
class ModelMorphs Allows fast lookups of morph variables
class ModelParts
class ModelPhysics Physics for a model. This is primarily used for ragdolls and other physics driven models, otherwise you should be using
class ModelRenderer Renders a model in the world
class MorphCollection Used to access and manipulate morphs.
class MotionBlur Applies a motion blur effect to the camera
class Mouse Gives access to mouse position etc
class MultiSerializedObject An object (or data) that can be accessed as an object
class MusicPlayer Enables music playback. Use this for music, not for playing game sounds.
class NavMeshAgent An agent that can navigate the navmesh defined in the scene.
class NavMeshArea An area that influences the NavMesh generation. Areas can be used to block off parts of the NavMesh. Static areas have a
class NavMeshLink NavigationLinks connect navigation mesh polygons for pathfinding and enable shortcuts like ladders, jumps, or teleports.
class NetDictionary<TKey,TValue> A networkable dictionary for use with the SyncAttribute and HostSyncAttribute. Only changes will be networked instead of
class NetList<T> A networkable list for use with the SyncAttribute and HostSyncAttribute. Only changes will be networked instead of sendi
class NetworkHelper Creates a networked game lobby and assigns player prefabs to connected clients.
class Networking Global manager to hold and tick the singleton instance of NetworkSystem.
class NetworkingSettings A class that holds all configured networking settings for a game. This is serialized as a config and shared from the ser
class NormalAttribute When applied to a Vector property, provides normal selection tools.
class Package Represents an asset on Asset Party.
class PanelComponent
class Particle
class ParticleAttractor Attract particles to a GameObject in the scene
class ParticleBoxEmitter Emits particles within a box shape.
class ParticleConeEmitter Emits particles within/along a cone shape.
class ParticleController Particles can have extra controllers that can modify the particles every frame.
class ParticleEffect Defines and holds particles. This is the core of the particle system.
class ParticleEmitter Creates particles. Should be attached to a ParticleEffect.
class ParticleLightRenderer Adds lighting to particles in your effect.
class ParticleModelEmitter Emits particles in a model
class ParticleModelRenderer Renders particles as models, using the particle's position, rotation, and size.
class ParticleRenderer Renders a set of particles. Should be attached to a ParticleEffect.
class ParticleRingEmitter Emits particles in a ring. The ring can be flat or have a tube-like quality. Velocity can either be added from the cent
class ParticleSnapshot A particle snapshot that can be created procedurally. Contains a set of vertices that particle effects can address.
class ParticleSphereEmitter Emits particles within a sphere shape.
class ParticleSpriteRenderer Renders particles as 2D sprites - can be static or animated
class ParticleSystem A particle effect system that allows for complex visual effects, such as explosions, muzzle flashes, impact effects, etc
class ParticleTextRenderer Renders particles as 2D sprites
class ParticleTrailRenderer Renders a trail for each particle in the effect.
class PartyRoom A Party. A Party with your friends.
class PhysicsBody Represents a physics object. An entity can have multiple physics objects. See PhysicsGroup. A physics objects consists o
class PhysicsBodyBuilder Provides ability to generate a physics body for a Model at runtime. See String)
class PhysicsFilter
class PhysicsGroup Represents a set of PhysicsBody objects. Think ragdoll.
class PhysicsGroupDescription
class PhysicsJointBuilder Provides ability to generate a physics joint for a Model at runtime.
class PhysicsJointBuilderExtensions
class PhysicsShape Represents a basic, convex shape. A PhysicsBody consists of one or more of these.
class PhysicsWorld A world in which physics objects exist. You can create your own world but you really don't need to. A world for the map
class Pixelate Applies a pixelate effect to the camera
class PlaneCollider Defines a plane collider.
class PlayerController
class PointLight Emits light in all directions from a point in space.
class PolygonMesh An editable mesh made up of polygons, triangulated into a model
class PostProcess Adds an effect to the camera
class PostProcessSystem Manages post-processing effects for cameras and volumes within a scene, handling their application during rendering and
class PostProcessVolume A volume that defines a region in the scene where post processing effects will be applied.
class PrefabFile A GameObject which is saved to a file.
class PrefabScene
class PrefabVariable A prefab variable definition
class Preferences Holds information about the current user's preferences.
class Project Represents an on-disk project.
class ProjectSettings
class Prop A prop is defined by its model. The model can define its health and what happens when it breaks. This component is desig
class PropertyAccessorBodyChangeAttribute
class PropertyAttribute
class PropertyDescription Describes a property. We use this class to wrap and return PropertyInfo's that are safe to interact with. R
class PureAttribute
class RadiusDamage Applies damage in a radius, with physics force, and optional occlusion
class RangeAttribute Mark this property as a ranged float/int. In inspector we'll be able to create a slider instead of a text entry.
class RayTracingAccelerationStructure Represents a ray tracing acceleration structure that contains geometry for efficient ray intersection testing. This is u
class ReadOnlyAttribute Display this in the inspector - but don't let anyone edit it
class RealTime Access to time.
class RenderAttributes RenderAttributes are a set of values that are passed to the renderer. They can be a variety of primitive types, textures
class Renderer
class RenderOptions
class RenderTarget Essentially wraps a couple of textures that we're going to render to. The color texture and the depth texture.
class RenderTextureAsset Asset that owns a GPU render target texture which can be shared across runtime systems.
class RequireComponentAttribute When added to a property on a Component, we'll try to make that component value non null. We will first look on the Game
class Resource A resource loaded in the engine, such as a Model or Material.
class ResourceExtension<T,TSelf> An extension of ResourceExtension[t], this gives special helper methods for retrieving resources targetting specific ass
class ResourceExtension<T> A GameResource type that adds extended properties to another resource type. You should prefer to use the type with to ge
class ResourceLibrary Keeps a library of all available Resource.
class ResourcePublishContext Created by the editor when publishing a resource, passed into Resource.ConfigurePublishing. This allows the resource to
class ResourceSystem
class ResourceTypeAttribute Allows you to specify a string property as a resource type. This will give the property a resource finder. Type should b
class Rigidbody Adds physics properties to an object. Requires a collider to be attached to the same object.
class Rpc
class RpcAttribute Marks a method as being an RPC. This means that it can be called over the network.
class SandboxBaseExtensions Extensions for Surfaces
class SandboxGameExtensions
class SandboxSystemExtensions
class SandboxToolExtensions
class Scene
class SceneAnimationSystem
class SceneCamera Represents a camera and holds render hooks. This camera can be used to draw tool windows and scene panels.
class SceneCubemap
class SceneCullingBox A box which can be used to explicitly control scene visibility. There are two modes: 1. Cull inside, hide any objects f
class SceneCustomObject A scene object that allows custom rendering within a scene world.
class SceneDirectionalLight A directional scene light that is used to mimic sun light in a SceneWorld. Direction is controlled by this object's Rota
class SceneDynamicObject
class SceneExtensions
class SceneFile A scene file contains a collection of GameObject with Components and their properties.
class SceneFogVolume Represents a volume of fog in a scene, contributing to volumetric fog effects set on VolumetricFog.
class SceneInformation
class SceneLight Base class for light scene objects for use with a SceneWorld.
class SceneLineObject A scene object which is used to draw lines
class SceneLoadOptions
class SceneMap Map geometry that can be rendered within a SceneWorld.
class SceneMapLoader
class SceneModel A model scene object that supports animations and can be rendered within a SceneWorld.
class SceneNetworkSystem This is created and referenced by the network system, as a way to route.
class SceneObject A model scene object that can be rendered within a SceneWorld.
class SceneParticles A SceneObject used to render particles. We need to be careful with what we do here, because this object is created for i
class ScenePointLight A point light scene object for use in a SceneWorld.
class SceneSkyBox Renders a skybox within a SceneWorld.
class SceneSpotLight A simple spot light scene object for use in a SceneWorld.
class SceneSpriteSystem
class SceneUtility
class SceneWorld A scene world that contains SceneObjects. See Utility.CreateSceneWorld. You may also want a SceneCamera to
class Screen Access screen dimension etc.
class ScreenPanel Renders any attached PanelComponents to the screen. Acts as the root for all your UI components.
class ScreenSpaceReflections
class SelectionBaseAttribute Apply this attribute to a component class to mark its GameObject as a selection base for Scene View picking. For example
class SelectionSystem An ordered collection of unique objects with add/remove callbacks. Maintains insertion order and provides change notific
class SerializedCollection
class SerializedObject An object (or data) that can be accessed as an object
class SerializedProperty
class Shader A shader is a specialized and complex computer program that use world geometry, materials and textures to render graphic
class Sharpen Applies a sharpen effect to the camera
class SingleActionAttribute Force a delegate-type property to only have a single attached Action Graph.
class SkinnedModelRenderer Renders a skinned model in the world. A skinned model is any model with bones/animations.
class SkipHotloadAttribute Skip processing a specific field, or any fields in a type marked by this attribute. Field processing will still occur if
class SkyBox2D Adds a 2D skybox to the world
class SliderJoint Restrict an object to one axis, relative to another object. Like a drawer opening.
class SliderJointBuilder Provides ability to generate a slider joint for a Model at runtime.
class Sound Single source for creating sounds
class SoundBoxComponent Plays a sound within a box.
class SoundEvent A sound event. It can play a set of random sounds with optionally random settings such as volume and pitch.
class SoundFile A sound resource.
class SoundHandle A handle to a sound that is currently playing. You can use this to control the sound's position, volume, pitch etc.
class SoundPointComponent Plays a sound at a point in the world.
class Soundscape A soundscape is used for environmental ambiance of a map by playing a set of random sounds at given intervals.
class SoundscapeTrigger Plays a soundscape when the listener enters the trigger area.
class SoundStream
class SpaceAttribute Add a space above this property
class SpawnPoint Dictates where players will spawn when they join the game when using a NetworkHelper.
class SphereCollider Defines a sphere collider.
class Spline Collection of curves in 3D space. Shape and behavior of the curves are controled through points Point, each with customi
class SpotLight Emits light in a specific direction in a cone shape.
class SpringJoint Try to keep an object a set distance away from another object. Like a spring connecting two objects.
class Sprite Represents a sprite resource that can be static or animated. Sprites are rendererd using the SpriteRenderer component.
class SpriteRenderer Renders a sprite in the world
class Standalone
class StandaloneManifest
class StepAttribute Mark this property as a stepped value, where the value can only be set to multiples of the step value.
class Storage
class Streamer
class StringLiteralOnlyAttribute Ask codegen to shit itself if the parameter isn't passed in as a string literal
class SupportsILHotloadAttribute
class SuppressNullKeyWarningAttribute When applied to a member with Dictionary`2 or HashSet`1 type, don't warn if the key of an item becomes null during a hot
class Surface A physics surface. This is applied to each PhysicsShape and controls its physical properties and physics related sounds.
class SyncAttribute Automatically synchronize a property of a networked object from the owner to other clients.
class SystemsConfig Configuration for GameObjectSystem properties at a project level. Specific scenes may override this as well - but will
class TagSet
class TargetTypeAttribute When applied to a Type property, allows you to specify a Type that the property's value must derive from.
class Terrain Terrain renders heightmap based terrain.
class TerrainMaterial Description of a Terrain Material.
class TerrainStorage Stores heightmaps, control maps and materials.
class TextAreaAttribute When applied to a string property, show a multi-line text box instead of a single line.
class TextRenderer Renders text in the world
class TextRendering
class Texture A texture is an image used in rendering. Can be a static texture loaded from disk, or a dynamic texture rendered to by c
class TextureImagePathAttribute When added to a string property, will allow selection of anything that a Texture can be
class ThreadSafe Provides utilities for working with threads, particularly for identifying and asserting code is running on the main thre
class Time
class TintAttribute
class Tonemapping Applies a tonemapping effect to the camera.
class TrailRenderer Renders a trail behind the object, when it moves.
class TransformProxy
class TransformProxyComponent Help to implement a component that completely overrides the transform. This is useful for scenarios where you will want
class TriggerHurt Deals damage to objects inside
class TypeDescription Describes a type. We use this class to wrap and return System.Type's that are safe to interact with. Return
class VerletRope Verlet integration-based rope physics simulation component.
class VertexBuffer
class VertexLayout Allows for the definition of custom vertex layouts
class VideoPlayer Enables video playback and access to the video texture and audio.
class VideoWriter Allows the creation of video content by encoding a sequence of frames.
class Vignette Applies a vignette to the camera
class Voice Records and transmits voice/microphone input to other players.
class VolumetricFogController Internal component for storing the baked fog texture We don't need to expose the volumetric fog controller like we did p
class VolumetricFogParameters
class VolumetricFogVolume Adds a volumetric fog volume to the scene.
class WebSocket A WebSocket client for connecting to external services.
class WebSurface Enables rendering and interacting with a webpage
class WheelJoint The wheel joint can be used to simulate wheels on vehicles. The wheel joint restricts body B to move along a local axis
class WideModeAttribute Expand the value editor to fill the next line in the inspector, leaving the title above it
class WorldInput A router for world input, the best place to put this is on your player's camera. Uses cursor ray when mouse is active, o
class WorldPanel Renders any attached PanelComponents to the world in 3D space.

Structs

Type Name Description
struct AnimParam<T> Anim param values contain any value for a limited set of types
struct AnyOfType<T> A wrapper that holds an instance of any concrete type assignable to . Use this as a property type when you want the insp
struct ByteStream Write and read bytes to a stream. This aims to be as allocation free as possible while also being as fast as possible.
struct CharacterControllerHelper
struct CloneConfig The low level input of a GameObject.Clone
struct Collision
struct CollisionSource
struct CollisionStop
struct CompactTerrainMaterial Compact terrain material encoding with base/overlay texture blending. Packed format (32-bit uint)
struct CurrencyValue Describes money, in a certain currency
struct Curve Describes a curve, which can have multiple key frames.
struct CurveRange Two curves
struct DisplayInfo Collects all the relevant info (such as description, name, icon, etc) from attributes and other sources about a type or
struct FloatSpan Provides vectorized operations over a span of floats.
struct Friend
struct Frustum Represents a frustum.
struct GlyphStyle
struct Gradient Describes a gradient between multiple colors
struct InputMotionData Represents the current state of a device's motion sensor(s).
struct LogEvent
struct NetDictionaryChangeEvent<TKey,TValue> Describes a change to a NetDictionary`2 which is passed to OnChanged whenever its contents change.
struct NetListChangeEvent<T> Describes a change to a NetListChangeEvent`1 which is passed to OnChanged whenever its contents change.
struct NetworkSpawnOptions Configurable options when spawning a networked object.
struct ParticleControlPoint
struct ParticleFloat Represents a floating-point value that can change over time with support for various evaluation modes.
struct ParticleGradient
struct ParticleVector3
struct PhysicsContact
struct PhysicsIntersection
struct PhysicsIntersectionEnd
struct PhysicsLock
struct PhysicsTraceBuilder
struct PhysicsTraceResult
struct Plane Represents a plane.
struct RealTimeSince A convenience struct to easily measure time since an event last happened, based on GlobalNow. Typical usage would see yo
struct RealTimeUntil A convenience struct to easily manage a time countdown, based on GlobalNow. Typical usage would see you assigning to a v
struct Rect Represents a rectangle.
struct RectInt Represents a rectangle but with whole numbers
struct SceneTrace
struct SceneTraceResult
struct SimpleVertex
struct Sphere Represents a sphere.
struct SteamId Represents a Steam ID (64-bit unique identifier for Steam accounts). Provides type-safe storage and conversion between l
struct StreamChannel
struct StreamChatMessage
struct StreamClip
struct StreamPoll
struct StreamPrediction
struct StreamUser
struct StreamUserFollow
struct StringToken Strings are commonly converted to tokens in engine, to save space and speed up things like comparisons. We wrap this fun
struct TaskSource Provides a way for us to cancel tasks after common async shit is executed.
struct Texture2DBuilder
struct Texture3DBuilder
struct TextureArrayBuilder
struct TextureBuilder
struct TextureCubeBuilder
struct TimeSince A convenience struct to easily measure time since an event last happened, based on Now. Typical usage would see you assi
struct TimeUntil A convenience struct to easily manage a time countdown, based on Now. Typical usage would see you assigning to a variabl
struct TrailTextureConfig Defines how a trail is going to be textured. Used by TrailRenderer.
struct Triangle
struct Variant A Variant is a type that can hold any value, and also keeps track of the type of the value it holds. It's useful for cas
struct Vertex
struct VertexAttribute
struct WorkshopItemMetaData Some metadata we'll pack into a workshop submission when publishing.
struct WrappedMethod Provides data about a wrapped method in a CodeGeneratorAttribute callback.
struct WrappedMethod<T> Provides data about a wrapped method in a CodeGeneratorAttribute callback.
struct WrappedPropertyGet<T> Provides data about a wrapped property getter in a CodeGeneratorAttribute callback.
struct WrappedPropertySet<T> Provides data about a wrapped property setter in a CodeGeneratorAttribute callback.

Enums

Type Name Description
enum AssetTypeFlags Flags for AssetTypeAttribute
enum AudioSurface Defines acoustic properties of a surface, which defines how sound will bounce
enum BlendMode Blend modes used by the UI system
enum ClearFlags Flags for clearing a RT before rendering a scene using a SceneCamera
enum CodeGeneratorFlags Used to specify what type of code generation to perform.
enum ColliderFlags
enum ComponentFlags
enum ComputeBufferType
enum ConVarFlags
enum EditorTint
enum FindMode Flags to search for Components. I've named this something generic because I think we can re-use it to search for GameObj
enum GameObjectFlags
enum GamepadCode Game controller codes, driven from SDL.
enum HapticTarget Places you can trigger haptics on
enum ImageFormat Format used when creating textures.
enum InputAnalog An analog input, when fetched, is between -1 and 1 (0 being default)
enum InputGlyphSize
enum JointMotion
enum KeyboardModifiers
enum LogLevel
enum MeshPrimitiveType Possible primitive types of a Mesh.
enum ModelArchetype Default model archetypes. These types are defined in "tools/model_archetypes.txt".
enum MouseButtons State of mouse buttons being pressed or not.
enum MouseVisibility The visibility state of the mouse cursor.
enum MultisampleAmount
enum NetFlags
enum NetPermission Specifies who can invoke an action over the network.
enum NetworkFlags Describes the behavior of network objects.
enum NetworkMode Specifies how a GameObject should be networked.
enum NetworkOrphaned Specifies what happens when the owner of a networked object disconnects.
enum OwnerTransfer Specifies who can control ownership of a networked object.
enum PhysicsBodyType
enum PhysicsMotionType Represents Physics body's motion type.
enum PhysicsSimulationMode Physics simulation mode. For use with SimulationMode.
enum PropertyAccessor
enum RigidbodyFlags
enum SceneCameraDebugMode
enum SceneLayerType
enum SceneRenderLayer SceneObjects can be rendered on layers other than the main game layer. This is useful if, for example, you want to rende
enum SoundFormat
enum StereoTargetEye
enum StreamService Streamer integration services
enum SyncFlags Describes the behaviour of network synchronization.
enum TerrainFlags
enum TextFlag Flags dictating position of text (and other elements). Default alignment on each axis is Top, Left. Values for each axis
enum TextureFlags Flags providing hints about a texture
enum VertexAttributeFormat
enum VertexAttributeType

Interfaces

Type Name Description
interface IByteParsable
interface IByteParsable<T>
interface ICompileReferenceProvider Allows you to look up references for a compiler.
interface IComponentLister Interface for types that reference a ComponentList, to provide convenience method for accessing that list.
interface IDynamicFloatContext
interface IGameInstance Todo: make internal - the only thing using ir right now is the binds system
interface IGameObjectNetworkEvents Allows listening to network events on a specific GameObject
interface IHotloadManaged During hotloads, instances of types implementing this interface will be notified when they get replaced.
interface IJsonConvert Allows writing JsonConverter in a more compact way, without having to pre-register them.
interface IJsonPopulator Objects that need to be deserialized into can implement this interface which allows them to be populated from a JSON obj
interface IMemberAttribute When applied to an attribute, which is them applied to a member.. This will make MemberDescription set on the attribute
interface ISceneCollisionEvents Listen to all collision events that happen during a physics step.
interface ISceneEvent<T> A wrapper for scene event interfaces. Allows syntax sugar of something like `IPlayerEvents.Post( x =&gt; x.OnPlayerHurt(
interface ISceneLoadingEvents Allows listening to events related to scene loading
interface ISceneMetadata Allows components to add metadata to the scene/prefab file, which is accessible before loading it.
interface IScenePhysicsEvents Allows events before and after the the physics step
interface ISceneStartup Allows listening to events related to scene startup. This should really only apply to GameObjectSystem's because compone
interface ISpriteRenderGroup Base interface for components that can be grouped for sprite rendering. Contains the 4 fields needed for render group cl
interface ITypeAttribute When applied to an attribute, which is then applied to a type.. This will make TargetType set on the attribute upon load
interface IValid Interface for objects that can become invalid over time, such as references to deleted game objects or disposed resource