- AliasAttribute
Alternate class name(s) for this type to the one specified via LibraryAttribute. This info can then be retrieved via DisplayInfo library.
- Angles
Euler angles. Unlike a <see cref="T:Rotation">Rotation</see>, Euler angles can represent multiple revolutions (rotations) around an axis,
but su…
- BBox
An Axis Aligned Bounding Box.
- Capsule
A capsule object, defined by 2 points and a radius. A capsule is a cylinder with round ends (inset half spheres on each end).
- CategoryAttribute
Sets the category or the group of a type or a type member.
This info can then be retrieved via DisplayInfo library.
- ClassNameAttribute
Set the class name for this type or member.
This info can then be retrieved via DisplayInfo library.
- Color
Represents a color using 4 floats (rgba), with 0-1 range.
- Color32
A 32bit color, commonly used by things like vertex buffers.
The functionality on this is purposely left minimal so we're encouraged to use th…
- ColorHsv
A color in Hue-Saturation-Value/Brightness format.
- DefaultValueAttribute
Sometimes with CodeGen we want reflection to be able to get the original initial value
of a property (which is set with {get;set;} = initialvalu…
- DescriptionAttribute
Sets the description of a type or a type member. This attribute is usually applied automatically by codegen based on the XML comment of the type o…
- EditorAttribute
Tell the tools or gameui property editor which editor we should be using for this property or type.
- EditorModelAttribute
Declare a model to represent this entity in editor. This is a common attribute so it's leaked out of the Editor namespace.
- GroupAttribute
Sets the category or the group of a type or a type member.
This info can then be retrieved via DisplayInfo library.
- ToggleGroupAttribute
Very much like a GroupAttribute, except we're indicating that the group can be toggle on and off using the named property
- IconAttribute
Sets the icon of a type or a type member. Colors are expected in HTML formats, like "rgb(255,255,255)" or "#FFFFFF".
This info can then be retri…
- Line
Represents a line in 3D space.
- Matrix
Represents a 4x4 matrix.
- MinMaxAttribute
Mark property as having a minimum and maximum value.
- OrderAttribute
Visual order of this member for UI purposes.
This info can then be retrieved via DisplayInfo library.
- PlaceholderAttribute
Add placeholder text, typically displayed for string properties when the text entry field is empty.
This info can then be retrieved via DisplayI…
- RangedFloat
A float between two values, which can be randomized or fixed.
- Ray
A struct describing an origin and direction
- Rotation
Represents a Quaternion rotation. Can be interpreted as a direction unit vector (x,y,z) + rotation around the direction vector (w) which represent…
- SandboxSystemExtensions
- SandboxSystemExtensions
- TagAttribute
Adds a single or multiple tags for this type or member. Tags can then be retrieved via DisplayInfo library.
- TitleAttribute
Sets the title or a "nice name" of a type or a type member.
This info can then be retrieved via DisplayInfo library.
- Transform
A struct containing a position, rotation and scale. This is commonly used in engine to describe
entity position, bone position and scene object …
- Vector2
A 2-dimensional vector. Typically represents a position or size in 2D space.
- Vector2Int
- Vector3
A point in 3D space.
- Vector3Int
- Vector4
A 4-dimensional vector/point.
Editor
- Animate
- Application
- Asset
- AssetBrowserLocation
- AssetContextMenu
Information about selected asset(s) when opening a context menu in Editor.AssetList.
- AssetEntry
- AssetListViewMode
- AssetPreviewAttribute
- AssetSystem
The asset system, provides access to all the assets.
- AssetTagSystem
Handles asset tags.
- AssetType
- BaseDropObject
- CanEditAttribute
- CheckState
Check state of a Editor.Checkbox.
- ClothingScene
- CloudAsset
- CodeEditor
For opening source code files in whatever code editor the user has selected.
- ColorSampler
- ComponentTemplate
- ComponentViewMode
- ConsoleSystem
- ContextMenuEvent
Information about a Editor.Widgets context menu event.
- CreateAsset
- CursorShape
TODO: Make this match whatever we do in game
- CurveExtensions
- DebuggingMenus
- DirectoryEntry
- DockArea
- DockAttribute
- DragAssetData
Represents an asset being dragged into an editor window. Assets will either
be sourced from a package (see Editor.DragAssetData.PackageIdent) or…
- DropAction
Used to tell the user what kind of action will happen during a drag and drop event on mouse release.
In Windows, these actions will also display…
- DropObjectAttribute
- EditorAppAttribute
- EditorEvent
- EditorForAssetTypeAttribute
Used in conjunction with IAssetEditor to declare a window that can edit an asset type
- EditorPreferences
- EditorScene
- EditorShortcuts
- EditorTool
- EyeDropperTool
- ObjectEditorTool
Move, rotate and scale objects
- PhysicsEditorTool
Simulate rigid bodies in editor
- PositionEditorTool
Move selected Gameobjects.<br /><br /><b>Ctrl</b> - toggle snap to grid<br /><b>Shift</b> - duplicate selection
- RotationEditorTool
Rotate selected GameObjects.<br /><br /><b>Ctrl</b> - toggle snap to grid
- ScaleEditorTool
Scale selected GameObjects.<br /><br /><b>Ctrl</b> - toggle snap to grid<br /><b>Shift</b> - scale all 3 axis
- EditorTool<T>
- TerrainEditorTool
Modify terrains
- BaseBrushTool
Base brush tool, handles common logic we'd reuse across brush modes.
- FlattenTool
Flatten an area of terrain.
- HoleTool
Puts a hole in the terrain.<br /><br /><b>Ctrl</b> - fill hole
- RaiseLowerTool
Click and drag to raise terrain.<br /><br /><b>Ctrl</b> - lower terrain
- PaintTextureTool
- BaseMeshTool
Base class for vertex, edge and face tools.
- EdgeTool
Move, rotate and scale mesh edges
- FaceTool
Move, rotate and scale mesh faces
- VertexTool
Move, rotate and scale mesh vertices
- BaseMoveTool
Base class for moving mesh elements (move, rotate, scale)
- PivotTool
Set the location of the gizmo for the current selection.
- PositionTool
Move selected Mesh Elements.<br /><br /><b>Ctrl</b> - toggle snap to grid<br /><b>Shift</b> - extrude selection
- RotateTool
Rotate selected Mesh Elements.<br /><br /><b>Ctrl</b> - toggle snap to grid
<b>Shift</b> - extrude selection
- ScaleTool
Scale selected Mesh Elements.<br /><br /><b>Ctrl</b> - toggle snap to grid<br /><b>Shift</b> - extrude selection
- BlockTool
Create new shapes by dragging out a block
- EditorToolAttribute
- EditorToolManager
- EditorUtility
- ExportConfig
- FieldMetaDataAttribute
Base attribute which allows adding metadata to properties.
- FileSystem
A filesystem that can be accessed by the game.
- FocusChangeReason
Describes why a Editor.Widgets' keyboard focus has changed via Editor.Widget.OnFocus(Editor.FocusChangeReason) and Editor.Widget.OnBlur(Editor.Foc…
- FocusMode
- FolderContextMenu
Information about selected directory/folder when opening a context menu in Editor.AssetList or in Editor.AssetLocations.
- GameData
Lets all native and managed tools know about any engine / game entities.
- GradientExtensions
- GraphicsHoverEvent
Information about a Editor.GraphicsItems mouse hover event.
- GraphicsItem
- GraphicsMouseEvent
Information about a Editor.GraphicsItems mouse click event.
- HeadBarEvent
- HeaderBarStyle
- HidePropertyAttribute
A way to hide properties from parent classes in tools.
- HistoryList<T>
A helper class to store a list of strings, which can then be navigated around, saved, restored
- HistoryStack<T>
- IAssetEditor
A widget (usually window) implementing this will be able to edit assets via the asset browser.
The widget should be marked with the attribute of…
- IAssetListEntry
- IBrowser
- ICodeEditor
Interface for editors to open code files.
Any class that implements this interface is automatically added to the list.
An editor is only enabl…
- IEditorAttribute<T>
Allows an editor widget to provide an attribute that it can use. Editors with attributes are chosen
over editors without when the target propert…
- InputOutputBase
Represents a variable
- InputOutputType
- InputSystem
- InspectorAttribute
- IProgress
- IResourceEditor
- KeyCode
- KeyEvent
Information about a Editor.Widgets keyboard event.
- LibraryProject
- LibrarySystem
- MapClass
Represents an entity class used by the map editor
- MapClassVariable
Represents a variable.
- MenuAttribute
- MetaData
A class to CRUD json files. This should probably be a generic class since it seems
like we might want to do this with stuff other than meta file…
- MetaDataAttribute
Base attribute which allows adding FGD metadata to classes.
- MouseEvent
Information about a Editor.Widgets mouse event.
- NoticeManager
Manages those annoying notices on the side of your screen. You get them when you're compiling.
This is what's making those errors keep appearing…
- Orientation
- PackageEntry
- Paint
- PathExtensions
- PenStyle
- Pixmap
A pixel map, or just a simple image.
- Progress
- ProjectList
- ProjectPublisher
- QObject
- DragData
Contains drag and drop data for tool widgets. See Editor.Widget.DragEvent.
- Drag
- Layout
- BoxLayout
A widget layout. You can think of it as an invisible box of rows or columns, each one containing a widget, useful for automatic positioning and sc…
- GridLayout
A widget layout. You can think of it as an invisible box of rows or columns, each one containing a widget, useful for automatic positioning and sc…
- Option
- TrayIcon
Like a widget - but is drawn
- Widget
A generic widget.
- QStringList
- QTextBlock
- RenderMode
- SceneEditor
- SceneEditorExtensions
- SceneEditorMenus
- SceneEditorSession
Holds a current open scene and its edit state
- ScrollbarMode
- SettingsMenus
- ShortcutAttribute
- ShortcutContext
Scope of the shortcut. Requires focus at this level for the shortcut to be active.
Defaults to Editor.ShortcutContext.WindowShortcut.
- ShortcutType
- SizeConstraint
- SizeMode
- StackLineHandlerAttribute
Marks a method as a custom handler for stack trace lines matching a certain pattern.
The method must take in a System.Text.RegularExpressions.Ma…
- StandaloneExporter
- SuspendUpdates
Suspends updates in the widget for this using scope.
- TextCursor
- TextureResidencyInfo
Provides information about currently resident textures on the GPU
- Theme
- ToolbarPosition
- ToolButtonStyle
- ToolRender
Renders basic stuff for tool views
- Trace
Trace for tools, not to be confused with Sandbox.SceneTrace
- TraceResult
- TreeNode
- TreeNode<T>
A small wrapper that changes Value into the T type.
- VirtualWidget
- WheelEvent
Information about a mouse wheel scroll event of a Editor.Widget.
- WidgetGalleryAttribute
When used on a static method, this method will be called to create an example of this panel for the "Widget Gallery" window.
This method should …
- WidgetSignal
- WindowFlags
Editor.Assets
Editor.Audio
Editor.CodeEditors
Editor.Internal
Editor.MapDoc
- MapDocument
Represents an open map document. A document has a tree of Editor.MapDoc.MapNode that represent the world.
- MapNode
A common class used for all objects in the world object tree.
- MapEntity
MapEntity in Hammer is a type of Editor.MapDoc.MapNode that has a set of key/value pairs.
The keyvalues represent the authoritative state of the…
- MapGameObject
- MapGroup
A map node which has the sole purpose of grouping other map nodes together.
- MapInstance
A map node which allows a target group and its children to be placed with a new position
and orientation in the world without creating a new cop…
- MapMesh
MapMesh is the Hammer map node which represents editable mesh geometry in a Hammer map.
This is the map node that is created when using the hamm…
- MapStaticOverlay
An overlay which is rendered using a mesh generated by projecting faces onto
surrounding geometry. Baked during map compile so that there is no …
- MapPath
Path containing a bunch of Editor.MapDoc.MapPathNode
- MapPathNode
Nodes along a Editor.MapDoc.MapPath
- MapWorld
MapWorld is the root node of a Editor.MapDoc.MapDocument, however it can have multiple sub Editor.MapDoc.MapWorld of prefabs.
Editor.MapEditor
- CanDropAttribute
- Hammer
- HammerSceneEditorSession
- HammerSession
This is our CQHammerMainWnd
- HammerSourceLocation
Source location for graphs created in a Hammer editor session.
- History
Undo/redo history for the current active mapdoc
- IBlockTool
Interface for the addon layer to implement, this is called from native Hammer.
- IEntityTool
Interface for the addon layer to implement, this is called from native Hammer.
- IMapViewDropTarget
Provides an interface for dragging and dropping Editor.Asset or Sandbox.Package on a map view.
Use with Editor.MapEditor.CanDropAttribute to reg…
- IPathTool
Interface for the addon layer to implement, this is called from native Hammer.
- IToolFactory
- MapView
MapViews are owned by the MapViewMgr. They display the MapViewMgr's mapdoc.
The MapView provides either a 2d or 3d view of the provided map d…
- Selection
Current selection set for the active map
- SelectMode
Editor.MeshEditor
- IMeshElement
A mesh element can be a vertex, edge or face belonging to a mesh
- MeshEdge
References a edge handle and the mesh component it belongs to.
- MeshFace
References a face handle and the mesh component it belongs to.
- MeshVertex
References a vertex handle and the mesh component it belongs to.
- PrimitiveBuilder
Build primitives out of polygons.
Editor.ModelEditor
Editor.NodeEditor
Editor.ProjectSettingPages
Editor.RectEditor
Editor.ShaderGraph
Editor.SoundEditor
Editor.TerrainEditor
Editor.TextureEditor
Editor.Widgets
Facepunch.ActionGraphs
- ActionGraph
Represents an async method as a directed graph. Control will enter through an "event" node, which
can route signals through a network of other nod…
- ActionGraph<T>
Wraps an Facepunch.ActionGraphs.ActionGraph that handles events with delegate type <typeparamref name="T" />.
- ActionGraphCache
Used to re-use Facepunch.ActionGraphs.ActionGraph instances when deserializing.
- ActionGraphExtensions
Extension methods for action graphs.
- ActionGraphInstance
Wrapper for an Facepunch.ActionGraphs.ActionGraph with overridden input values.
- AddAssemblyResult
Returned by Facepunch.ActionGraphs.NodeLibrary.AddAssembly(System.Reflection.Assembly).
- AlwaysInvokedAttribute
- AssignmentKind
Operations accessor nodes can perform.
- BindingSurface
- Constant
- CreateSubGraphNodeDelegate
- CreateSubGraphResult
- DefaultGraphLoader
- DefaultTypeLoader
A default implementation of Facepunch.ActionGraphs.ITypeLoader with no access control.
- DelegateExtensions
- DescriptionAttribute
- DispatchMode
When dispatching a set of output signals, should the resulting
task complete when Facepunch.ActionGraphs.DispatchMode.All or Facepunch.ActionGraph…
- DisplayInfo
Display information of a Facepunch.ActionGraphs.NodeDefinition.
- Either
- Either<T1,T2,T3,T4,T5,T6,T7,TRest>
- Either<T1,T2,T3,T4,T5,T6,T7>
- Either<T1,T2,T3,T4,T5,T6>
- Either<T1,T2,T3,T4,T5>
- Either<T1,T2,T3,T4>
- Either<T1,T2,T3>
- Either<T1,T2>
- ExposeWhenCachedAttribute
- ExpressionBuilder
Helper class used by Facepunch.ActionGraphs.NodeDefinition.BuildExpression(Facepunch.ActionGraphs.Node,Facepunch.ActionGraphs.ExpressionBuilder,Sys…
- FileSystemGraphLoader
- GetNodeLibraryDelegate
- GraphInputReference
- GroupAttribute
- HiddenAttribute
- IActionGraph
Base interface for action graphs. Implemented by Facepunch.ActionGraphs.ActionGraph and Facepunch.ActionGraphs.ActionGraph`1.
- IActionGraphCache
- IAlwaysInvokedAttribute
Marks an output signal that will always be dispatched before the default output
signal. Used on a parameter of a method marked with Facepunch.Acti…
- IconAttribute
- IDescriptionAttribute
- IExposeWhenCachedAttribute
Declares that instances of the marked type can't be cached in a Facepunch.ActionGraphs.ActionGraphCache.
For example, if they might contain an ID …
- IGraphLoader
- IGroupAttribute
- IHiddenAttribute
- IIconAttribute
- IImpureAttribute
Declares a method to have side effects, even if it's declared as
readonly.
- ILinkSource
- IMessageContext
Interface for action graph elements that can be the context of a Facepunch.ActionGraphs.ValidationMessage.
- ImpureAttribute
- INodeAttribute
Used to define ActionGraph nodes using static methods, properties, or constructors.
- INodeContainer
- INodeDefinitionAttribute
Marks a class extending Facepunch.ActionGraphs.NodeDefinition that should be automatically
added to a Facepunch.ActionGraphs.NodeLibrary when Face…
- Input<T>
Helper type for input parameters of methods marked with !:ActionNodeAttribute.
The value of this input can be evaluated on demand, for cases where…
- InputDefinition
Describes an input of a node.
- InsertResult
Elements added by a call to Facepunch.ActionGraphs.IActionGraph.DeserializeInsert(System.String,System.Text.Json.JsonSerializerOptions).
- IParameterDefinition
Base interface for Facepunch.ActionGraphs.PropertyDefinition, Facepunch.ActionGraphs.InputDefinition and
Facepunch.ActionGraphs.OutputDefinition.
- IPropertyAttribute
For binding in methods marked with a Facepunch.ActionGraphs.NodeAttribute, this parameter should only
be configurable in the inspector as a proper…
- IPureAttribute
Declares a method to not have any side effects, it only performs a calculation
using its inputs and outputs a result.
- IReference
- ISourceLocation
Interface for types that identify the source of an Facepunch.ActionGraphs.ActionGraph.
- ITagsAttribute
- ITargetAttribute
For binding in methods marked with a Facepunch.ActionGraphs.NodeAttribute, this parameter represents
the target instance object the method is exec…
- ITitleAttribute
- ITypeLoader
An implementation of this interface will wrap reflection calls, allowing
custom access control. See Facepunch.ActionGraphs.DefaultTypeLoader for a…
- JsonExtensions
Extension methods for System.Text.Json types.
- Link
A link connects one Facepunch.ActionGraphs.Node.Input to a Facepunch.ActionGraphs.Node.Output.
They can either transmit values or signals. A signa…
- LinkTriggeredHandler
Handler for Facepunch.ActionGraphs.ActionGraph.LinkTriggered events.
- MessageLevel
Severity level of a validation message.
- MethodBinder
- Node
The main building block of an action graph. Represents either an action or expression.
An action node has input and output signals, and will act o…
- NodeAttribute
- NodeBinding
A collection of named node properties, inputs, and outputs with specific types, as
provided by a Facepunch.ActionGraphs.NodeDefinition. Bindings m…
- NodeDefinition
Describes the behaviour and bindings of a node for use in an action graph.
- NodeDefinitionAttribute
- NodeKind
Nodes can be lazily evaluated expression without any signals,
or actions that execute when receiving a signal.
- NodeLibrary
Contains a library of Facepunch.ActionGraphs.NodeDefinitions, each with a unique identifier.
Custom node definitions can be added with Facepunch.A…
- NodeParameters<T>
- NodeProperties
Constant named values stored in a node.
- NodeInputs
Named inputs of a node, that may either link to the outputs of other nodes,
or be assigned a constant value.
- NodeOutputs
Named outputs of a node, that may link to the inputs of other nodes.
- Null
Represents a null reference.
- ObjectConverter
- OutputDefinition
Describes an output of a node.
- OutputDelegate
- ParameterDefinitionExtensions
- ParameterFlags
- ParameterNames
Special names for parameters of built-in node types.
- PropertyAttribute
- PropertyDefinition
Describes a property of a node that should be configurable in the inspector.
- PureAttribute
- ReflectionExtensions
- SerializationOptions
Controls how Facepunch.ActionGraphs.ActionGraphs are (de)serialized.
- Signal
Node inputs and outputs of this type will transmit signals rather than values.
- TagsAttribute
- TargetAttribute
- TitleAttribute
- TypeConverter
- ValidationException
Exception thrown when an invalid action graph is invoked.
- ValidationExtensions
Extension methods related to validation and validation messages.
- ValidationMessage
A message generated during validation with a context, level, and value.
- Variable
Variables have a name and type, and are local to each invocation of an Facepunch.ActionGraphs.Variable.ActionGraph.
They are assigned with a !:Nod…
- VariableReference
- VoidTaskFaultHandler
Facepunch.ActionGraphs.Nodes
- ControlFlow
Nodes providing basic control flow structures like branches and loops.
- Math
Nodes relating to numbers and geometry.
HalfEdgeMesh
NativeEngine
Sandbox
- Achievement
- AchievementCollection
Holds achievements for a package
- ActionGraphExposeWhenCachedAttribute
- ActionGraphIgnoreAttribute
- ActionGraphIncludeAttribute
- ActionGraphNodeAttribute
- ActionGraphOperatorAttribute
Display this node as an operator, with no header or socket labels, and a big icon in the middle.
- ActionGraphPropertyAttribute
In ActionGraph, this parameter should only be configurable in the inspector as a property and not have a dedicated input.
- ActionGraphTargetAttribute
- AnimationSequence
- AnimGraphDirectPlayback
For communicating with a Direct Playback Anim Node, which allows code to tell it to play a given sequence
- AnimParam<T>
Anim param values contain any value for a limited set of types
- Application
- AssetPathAttribute
When added to a string property, will becomes a selector for AssetTypeExtension
- FGDTypeAttribute
Overrides the auto generated FGD type.
- ResourceTypeAttribute
Allows you to specify a string property as a resource type. This will
give the property a resource finder. Type should be the file extension, ie…
- BitFlagsAttribute
This choices type is bitflags, so we should be able to choose more than one option at a time.
- ImageAssetPathAttribute
When added to a string property, will become an image string selector
- MapAssetPathAttribute
When added to a string property, will become a map string selector
- AudioSurface
Defines acoustic properties of a surface, which defines how sound will bounce
- AutoGenerateAttribute
Indicates that this type should generate meta data. Tagging your asset with this will
mean that the .asset file is automatically generated - whi…
- 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 aggregation of all those things…
- BlendMode
Blend modes used by the UI system
- BoneCollection
A collection of bones. This could be from a model, or an entity
- ButtonAttribute
When added to a method - the inspector will show a button for it.
- ByteStream
A result of SpeedTest.MemoryAlloc - to make it easy to use this instead of AllocHGlobal
- CachingHandler
- CaseInsensitiveConcurrentDictionary<T>
- CaseInsensitiveDictionary<T>
- ChangeAttribute
This will invoke a method when the property changes. It can be used with any property but is especially useful
when combined with [Sync] or [Con…
- CharacterControllerHelper
- ClearFlags
Flags for clearing a RT before rendering a scene using a SceneCamera
- CloneConfig
The low level input of a GameObject.Clone
- ClothingContainer
Holds a collection of clothing items. Won't let you add items that aren't compatible.
- Cloud
For accessing assets from the cloud - from code
- CodeArchive
- CodeGeneratorAttribute
An attribute that can be added to a custom System.Attribute class for special code generation behavior.
They'll then be applied to methods and p…
- CodeGeneratorFlags
Used to specify what type of code generation to perform.
- Collision
- CollisionSource
- CollisionStop
- ColorGradient
A color gradient for use as entity and asset properties
TODO: Gradient property editor
- CompileGroup
- Compiler
Given a folder of .cs files, this will produce (and load) an assembly
- CompilerOutput
- Component
A GameObject can have many components, which are the building blocks of the game.
- AudioListener
If this exists and is enabled in a scene, then the client will hear from this point rather than
from the cameras point of view.
- BaseSoundComponent
- LipSync
Drive morphs with lipsync from sounds.
- SoundscapeTrigger
Plays a soundscape when the listener enters the trigger area.
- Voice
Records and transmits voice/microphone input to other players.
- CameraComponent
Every scene should have at least one Camera.
- CubemapFog
Applies a cubemap fog effect to the camera
- CharacterController
Allows collision contrained movement without the need for a rigidbody. This is not affected by forces and will only move when you call the Move() …
- Collider
- ModelPhysics
Physics for a model. This is primarily used for ragdolls and other physics driven models, otherwise you should be using a Rigidbody.
- Rigidbody
Adds physics properties to an object. Requires a collider to be attached to the same object.
- LegacyParticleSystem
Support's Source Engine's vpcf particles
- ManualHitbox
A hitbox that can be placed manually on a GameObject, instead of coming from a model
- ModelHitboxes
Hitboxes from a model
- PlayerController
- Prop
A prop is defined by its model. The model can define its health and what happens when it breaks.
This component is designed to be easy to use - …
- Gib
A gib is a prop that is treated slightly different. It will fade out after a certain amount of time.
- SpawnPoint
Dictates where players will spawn when they join the game when using a NetworkHelper.
- Joint
- BallJoint
Fix two objects together but can rotate - like a shoulder.
- FixedJoint
Weld two physics objects together
- HingeJoint
Create a hinged connection between two physics objects. Like a door hinge or a wheel.
- SliderJoint
Restrict an object to one axis, relative to another object. Like a drawer opening.
- SpringJoint
Try to keep an object a set distance away from another object. Like a spring connecting two objects.
- AmbientLight
Adds an ambient light to the scene, applied globally.
- EnvmapProbe
A cubemap probe that captures the environment around it.
- Light
- DirectionalLight
A directional light that casts shadows, like the sun.
- PointLight
Emits light in all directions from a point in space.
- SpotLight
Emits light in a specific direction in a cone shape.
- HammerMesh
Added automatically by Hammer to GameObjects that have a map mesh tied to them.
When a map is compiled the Model property is populated by the ge…
- MapInstance
Allows you to load a map into the Scene. This can be either a vpk or a scene map.
- MapObjectComponent
- MapSkybox3D
- 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 data.
- NavMeshAgent
An agent that can navigate the navmesh defined in the scene.
- NavMeshArea
An area that influences the NavMesh generation.
Areas can be used to block off parts of the NavMesh.
Static areas have almost no performance o…
- ParticleController
Particles can have extra controllers that can modify the particles every frame.
- ParticleEmitter
Creates particles. Should be attached to a Sandbox.ParticleEffect.
- ParticleEffect
Defines and holds particles. This is the core of the particle system.
- ParticleRenderer
Renders a set of particles. Should be attached to a Sandbox.ParticleRenderer.ParticleEffect.
- HighlightOutline
This component should be added to stuff you want to be outlined. You will also need to
add the Highlight component to the camera you want to re…
- PostProcess
Adds an effect to the camera
- Tonemapping
Applies a tonemapping effect to the camera.
- AmbientOcclusion
Adds an approximation of ambient occlusion using Screen Space Ambient Occlusion (SSAO).
It darkens areas where ambient light is generally occlud…
- Bloom
Applies a bloom effect to the camera
- Blur
Applies a blur effect to the camera.
- ChromaticAberration
Applies a chromatic aberration effect to the camera
- ColorAdjustments
Applies color adjustments to the camera.
- ColorGrading
Applies color grading to the camera
- DepthOfField
Applies a depth of field effect to the camera
- FilmGrain
Applies a film grain effect to the camera
- Highlight
This should be added to a camera that you want to outline stuff
- MotionBlur
Applies a motion blur effect to the camera
- Pixelate
Applies a pixelate effect to the camera
- Sharpen
Applies a sharpen effect to the camera
- Vignette
Applies a vignette to the camera
- GradientFog
Adds a gradient fog to the world
- Renderer
- SkyBox2D
Adds a 2D skybox to the world
- VolumetricFogController
Internal component for storing the baked fog texture
We don't need to expose the volumetric fog controller like we did previously with entities,…
- VolumetricFogVolume
Adds a volumetric fog volume to the scene.
- PanelComponent
- ScreenPanel
Renders any attached PanelComponents to the screen. Acts as the root for all your UI components.
- WorldInput
A router for world input, the best place to put this is on your player's camera.
- SceneInformation
- VRWorldInput
- TransformProxyComponent
Help to implement a component that completely overrides the transform. This is useful for scenarios
where you will want to keep the local transf…
- VRAnchor
Updates the the VR anchor based on a GameObject's transform.
- VRHand
Updates the parameters on an Sandbox.SkinnedModelRenderer on this GameObject based on the skeletal data from SteamVR.
Useful for quick hand posi…
- VRModelRenderer
Renders a device-specific model for a VR device
- VRTrackedObject
Updates this GameObject's transform based on a given tracked object (e.g. left controller, HMD).
- VolumeComponent
- MoveMode
A move mode for this character
- ActionsInvoker
A component which allows you to use action in all the usual functions.
- SimpleActionComponent
These should not exist
- CollisionActionComponent
Reacts to collisions.
- TriggerActionComponent
Reacts to collider triggers.
- NetworkHelper
Creates a networked game lobby and assigns player prefabs to connected clients.
- CitizenAnimationHelper
Used to control the Citizen animation state. You don't have to use this to animate your citizen avatar, but our
aim is to put everything you nee…
- ComponentFlags
- ComponentList
- ComputeBufferType
- ComputeShader
A compute shader is a program that runs on the GPU, often with data provided to/from the CPU by means of a Sandbox.GpuBuffer`1 or a Sandbox.Textur…
- ConfigData
- CursorSettings
- InputSettings
A class that holds all configured input settings for a game.
This is serialized as a config and shared from the server to the client.
- NetworkingSettings
A class that holds all configured networking settings for a game.
This is serialized as a config and shared from the server to the client.
- CollisionRules
This is a JSON serializable description of the physics's collision rules. This allows us to send it
to the engine - and store it in a string tab…
- MixerSettings
- Connection
A connection, usually to a server or a client.
- ConsoleSystem
A library to interact with the Console System.
- ControlModeSettings
- ConVar
Console variable
- CookieContainer
- CubemapFogController
- CurrencyValue
Describes money, in a certain currency
- Curve
Describes a curve, which can have multiple key frames.
- CurveRange
Two curves
- CustomEditorAttribute
- DamageInfo
Describes the damage that should be done to something. This is purposefully a class
so it can be derived from, allowing games to create their ow…
- DisplayInfo
Collects all the relevant info (such as description, name, icon, etc) from attributes and other sources about a type or type member.
- EditorContext
- EditorHandleAttribute
When applied to a component, the editor will draw a selectable handle sprite for the gameobject in scene
- EditorTint
- EnumDescription
- EventAttribute
A generic event listener. You are probably looking for Sandbox.Event.* attributes.
- FeatureAttribute
Sets the category or the group of a type or a type member.
This info can then be retrieved via DisplayInfo library.
- FGDCurve
A helper class to handle 'curve' FGD type.
TOOD: Get rid of in favor of new curve stuff.
- FileSystem
A filesystem that can be accessed by the game.
- FileWatch
Watch folders, dispatch events on changed files
- FindMode
Flags to search for Components.
I've named this something generic because I think we can re-use it to search for GameObjects too.
- FontNameAttribute
When applied to a string property, uses a font name selector.
- Friend
- Frustum
Represents a frustum.
- Game
- GameManager
- GameObject
An object in the scene. Functionality is added using Components. A GameObject has a transform, which explains its position,
rotation and scale, …
- GameObjectDirectory
New GameObjects and Components are registered with this class when they're created, and
unregistered when they're removed. This gives us a sing…
- GameObjectFlags
- GameObjectSystem
Allows creation of a system that always exists in every scene,
is hooked into the scene's lifecycle,
and is disposed when the scene is dispo…
- GameObjectSystem<T>
A syntax sugar wrapper around GameObjectSystem, which allows you to access your system using
SystemName.Current instead of Scene.GetSystem.
- GamepadCode
Game controller codes, driven from SDL.
- GameResourceAttribute
Should be applied to a class that inherits from Sandbox.GameResource.
Makes the class able to be stored as an asset on disk.
- GameTask
A generic Sandbox.TaskSource.
- GameTransform
- Gizmo
- Global
Utility info for tools usage.
- GlyphStyle
- GpuBuffer
A GPU data buffer intended for use with a Sandbox.ComputeShader.
You can read and write arbitrary data to and from the CPU and GPU.
This al…
- Gradient
Describes a gradient between multiple colors
- GradientFogController
- Graphics
Used to render to the screen using your Graphics Card, or whatever you
kids are using in your crazy future computers. Whatever it is I'm sure
…
- HapticEffect
Contains a haptic effect, which consists of patterns for the controller and triggers.
- HapticPattern
Contains a haptic pattern, which consists of frequency and amplitude values that can change over time.
- HapticTarget
Places you can trigger haptics on
- HasImplementationAttribute
In ActionGraph, this type parameter can only be satisfied by a type <c>TArg</c>, such
that there exists at least one non-abstract type that exte…
- HeaderAttribute
Add a header above this property
- HelpUrlAttribute
Add a link to some documentation for this component, or <see langword="property" />
- Hitbox
- HitboxSet
- Http
Lets your game make async HTTP requests.
- IByteParsable
- IByteParsable<T>
- IComponentLister
Interface for types that reference a Sandbox.ComponentList, to provide
convenience method for accessing that list.
- IGameInstance
Todo: make internal - the only thing using ir right now is the binds system
- IGameObjectNetworkEvents
Allows listening to network events on a specific GameObject
- IHotloadManaged
During hotloads, instances of types implementing this interface will be notified when
they get replaced.
- IJsonConvert
Allows writing JsonConverter in a more compact way, without having to pre-register them.
- IJsonPopulator
Objects that need to be deserialized into can implement this interface
which allows them to be populated from a JSON object.
- ImageFormat
- IMemberAttribute
When applied to an attribute, which is them applied to a member..
This will make Sandbox.IMemberAttribute.MemberDescription set on the attribute…
- ImpureAttribute
- InlineEditorAttribute
Tell the editor to try to display inline editing for this property, rather than hiding it behind a popup etc.
- Input
Allows querying of player button presses and other inputs.
- InputAction
An input action defined by a game project.
- InputActionAttribute
When applied to a string property, use an input action selector.
- InputAnalog
An analog input, when fetched, is between -1 and 1 (0 being default)
- InputAttribute
Makes this method available as a Map Logic Input, for use in the Hammer Editor. This is only applicable to entities.
- InputGlyphSize
- InputMotionData
Represents the current state of a device's motion sensor(s).
- InspectorVisibilityAttribute
Hide a property if a condition matches.
- ConditionalVisibilityAttribute
Hide a property if a condition matches.
- HideIfAttribute
Hide this property if a given property within the same class has the given value. Used typically in the Editor Inspector.
- ShowIfAttribute
Show this property if a given property within the same class has the given value. Used typically in the Editor Inspector.
- ISceneCollisionEvents
Listen to all collision events that happen during a physics step.
- ISceneEvent<T>
A wrapper for scene event interfaces. Allows syntax sugar of something like
`IPlayerEvents.Post( x => x.OnPlayerHurt( this, amount ) )` inste…
- ISceneLoadingEvents
Allows listening to events related to scene loading
- ISceneMetadata
Allows components to add metadata to the scene/prefab file, which is accessible before loading it.
- IScenePhysicsEvents
Allows events before and after the the physics step
- ISceneStartup
Allows listening to events related to scene startup. This should really only apply to GameObjectSystem's
because components won't have been spaw…
- ITagSet
- TagSet
- GameTags
Entity Tags are strings you can set and check for on any entity. Internally
these strings are tokenized and networked so they're also available …
- ITypeAttribute
When applied to an attribute, which is then applied to a type..
This will make Sandbox.ITypeAttribute.TargetType set on the attribute upon load.…
- IValid
This object can become invalid
- JointMotion
- Json
A convenience JSON helper that handles Sandbox.Resource types for you.
- JsonUpgraderAttribute
An attribute that describes a version update for a JSON object.
- KeyboardModifiers
- KeyPropertyAttribute
Mark this property as the key property - which means that it can represent the whole object in a single line, while
usually offering an advanced…
- Language
Allows access to translated phrases, allowing the translation of gamemodes etc
- LaunchArguments
These are arguments that were set when launching the current game.
This is used to pre-configure the game from the menu
- LibraryAttribute
- GameDataAttribute
Indicates that this class/struct should be available as GenericGameData node in ModelDoc
- LoadingScreen
Holds metadata and raw data relating to a Saved Game.
- LogEvent
- LogLevel
- MainThread
Utility functions that revolve around the main thread
- MakeDirtyAttribute
- ManifestSchema
An addon's manifest, describing what files are available
- Map
- MapLoader
- MathX
A class to add functionality to the math library that System.Math and System.MathF don't provide.
A lot of these methods are also extensions, so…
- MemberDescription
Wraps <see cref="F:Sandbox.MemberDescription.MemberInfo">MemberInfo</see> but with caching and sandboxing.
Returned by Sandbox.Internal.TypeL…
- FieldDescription
Describes a field. We use this class to wrap and return <see cref="P:Sandbox.FieldDescription.FieldInfo">FieldInfo</see>'s that are safe to intera…
- MethodDescription
Describes a method. We use this class to wrap and return <see cref="T:System.Reflection.MethodInfo">MethodInfo</see>'s that are safe to interact w…
- PropertyDescription
Describes a property. We use this class to wrap and return <see cref="P:Sandbox.PropertyDescription.PropertyInfo">PropertyInfo</see>'s that are sa…
- Mesh
A mesh is a basic version of a Sandbox.Model,
containing a set of vertices and indices which make up faces that make up a shape.
<para>A se…
- MeshPrimitiveType
Possible primitive types of a Sandbox.Mesh.
- Metadata
A simple class for storing and retrieving metadata values.
- MethodArgumentsAttribute
Specify the types of arguments a method should have. Typically used with event attributes to throw an exception
if an event attribute is added t…
- MethodBodyChangeAttribute
- ModelArchetype
Default model archetypes.
These types are defined in "tools/model_archetypes.txt".
- ModelAttachments
- ModelBuilder
Provides ability to generate Sandbox.Models at runtime.
A static instance of this class is available at Sandbox.Model.Builder
- ModelMorphs
Allows fast lookups of morph variables
- MorphCollection
Used to access and manipulate morphs.
- Mouse
Gives access to mouse position etc
- MouseButtons
State of mouse buttons being pressed or not.
- MultisampleAmount
- MusicPlayer
Enables music playback. Use this for music, not for playing game sounds.
- NetDictionary<TKey,TValue>
A networkable dictionary for use with the Sandbox.SyncAttribute and Sandbox.HostSyncAttribute. Only changes will be
networked instead of sending…
- NetFlags
- NetList<T>
A networkable list for use with the Sandbox.SyncAttribute and Sandbox.HostSyncAttribute. Only changes will be
networked instead of sending the w…
- NetPermission
Specifies who can invoke an action over the network.
- Networking
Global manager to hold and tick the singleton instance of NetworkSystem.
- NetworkMode
Specifies how a Sandbox.GameObject should be networked.
- NetworkOrphaned
Specifies what happens when the owner of a networked object disconnects.
- ObjectCreateMsg
- ObjectDestroyMsg
- ObjectMessageMsg
- ObjectNetworkTableMsg
- ObjectRefreshMsg
- ObjectSnapshotAck
- ObjectSnapshotClusterAck
- ObjectSnapshotClusterMsg
- ObjectSnapshotMsg
- OwnerTransfer
Specifies who can control ownership of a networked object.
- Package
Represents an asset on Asset Party.
- Particle
- ParticleControlPoint
- ParticleFloat
- ParticleGradient
- ParticleVector3
- PartyRoom
A Party. A Party with your friends.
- PhysicsBody
Represents a physics object. An entity can have multiple physics objects. See <see cref="P:Sandbox.PhysicsBody.PhysicsGroup">PhysicsGroup</see>.
…
- PhysicsBodyType
- PhysicsContact
- PhysicsGroup
Represents a set of <see cref="T:Sandbox.PhysicsBody">PhysicsBody</see> objects. Think ragdoll.
- PhysicsGroupDescription
- PhysicsIntersection
- PhysicsIntersectionEnd
- PhysicsLock
- PhysicsMotionType
Represents <see cref="T:Sandbox.PhysicsBody">Physics body's</see> motion type.
- PhysicsShape
Represents a basic, convex shape. A <see cref="T:Sandbox.PhysicsBody">PhysicsBody</see> consists of one or more of these.
- PhysicsSimulationMode
Physics simulation mode. For use with Sandbox.PhysicsWorld.SimulationMode.
- PhysicsTraceBuilder
- PhysicsTraceResult
- 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 is created clientside and …
- Plane
Represents a plane.
- PolygonMesh
An editable mesh made up of polygons, triangulated into a model
- PrefabVariable
A prefab variable definition
- Preferences
Holds information about the current user's preferences.
- Project
Represents an on-disk project.
- PropertyAccessor
- PropertyAccessorBodyChangeAttribute
- PropertyAttribute
- PureAttribute
- RangeAttribute
Mark this property as a ranged float/int. In inspector we'll be able to create a slider
instead of a text entry.
TODO: Replace this with the S…
- ReadOnlyAttribute
Display this in the inspector - but don't let anyone edit it
- RealTime
Access to time.
- RealTimeSince
A convenience struct to easily measure time since an event last happened, based on Sandbox.RealTime.GlobalNow.<br /><br />
Typical usage would s…
- RealTimeUntil
A convenience struct to easily manage a time countdown, based on Sandbox.RealTime.GlobalNow.<br /><br />
Typical usage would see you assigning t…
- Rect
Represents a rectangle.
- RectInt
Represents a rectangle but with whole numbers
- RenderAttributes
- RenderOptions
- RenderTarget
Essentially wraps a couple of textures that we're going to render to. The color texture and the depth texture.
- 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 GameObject for the component…
- Resource
A resource loaded in the engine, such as a Sandbox.Model or Sandbox.Material.
- AnimationGraph
- GameResource
Assets defined in C# and created through tools.
You can define your own Custom Asset Types.
- Clothing
A piece of player model customization.
- DecalDefinition
A decal which can be applied to objects and surfaces.
- ResourceExtension<T>
A GameResource type that adds extended properties to another resource type. You should prefer to use
the type with to generic arguments, and def…
- ResourceExtension<T,TSelf>
An extension of ResourceExtension[t], this gives special helper methods for retrieving resources targetting
specific assets.
- PrefabFile
- SceneFile
- Soundscape
A soundscape is used for environmental ambiance of a map by playing a set of random sounds at given intervals.
- SoundEvent
A sound event. It can play a set of random sounds with optionally random settings such as volume and pitch.
- Surface
A physics surface. This is applied to each <see cref="T:Sandbox.PhysicsShape">PhysicsShape</see> and controls its physical properties and physics …
- TerrainMaterial
Description of a Terrain Material.
- TerrainStorage
Stores heightmaps, control maps and materials.
- VoxResource
- ActionGraphResource
- Material
A material. Uses several Sandbox.Textures and a Sandbox.Shader with specific settings for more interesting visual effects.
- Model
A model.
- ParticleSnapshot
A particle snapshot that can be created procedurally.
Contains a set of vertices that particle effects can address.
- ParticleSystem
A particle effect system that allows for complex visual effects, such as
explosions, muzzle flashes, impact effects, etc.
- Shader
A shader is a specialized and complex computer program that use
world geometry, materials and textures to render graphics.
- SoundFile
A sound resource.
- Texture
A texture is an image used in rendering. Can be a static texture loaded from disk, or a dynamic texture rendered to by code.
Can also be 2D, 3D …
- ResourceLibrary
Keeps a library of all available Sandbox.GameResource.
- RigidbodyFlags
- Rpc
- RpcAttribute
Marks a method as being an RPC. This means that it can be called over the network.
- BroadcastAttribute
Marks a method as being an RPC that when invoked will be called for all connected clients including the host.
The state of the object the RPC is…
- AuthorityAttribute
Marks a method as being an RPC specifically targeted to the owner of the Sandbox.GameObject, or the host
if the Sandbox.GameObject doesn't have …
- SandboxBaseExtensions
Extensions for Model
- SandboxEngineExtensions
- SandboxGameExtensions
- SandboxGameExtensions
- SandboxSystemExtensions
- SandboxToolExtensions
- SceneCamera
Represents a camera and holds render hooks. This camera can be used to draw tool windows and scene panels.
- SceneCameraDebugMode
- SceneCullingBox
A box which can be used to explicitly control scene visibility.
There are two modes:
1. Cull inside, hide any objects fully inside the box (e…
- SceneExtensions
- SceneFogVolume
Represents a volume of fog in a scene, contributing to volumetric fog effects set on Sandbox.SceneCamera.VolumetricFog.
- SceneLayerType
- SceneLoadMsg
- SceneLoadOptions
- SceneMap
Map geometry that can be rendered within a Sandbox.SceneWorld.
- SceneObject
A model scene object that can be rendered within a Sandbox.SceneWorld.
- SceneDynamicObject
- ProjectedDecalSceneObject
A projected decal. Can be placed in Sandbox.SceneWorlds.
- SceneCustomObject
A scene object that allows custom rendering within a scene world.
- SceneLight
Generic point light scene object for use with a Sandbox.SceneWorld.
- SceneCubemap
- SceneDirectionalLight
A directional scene light that is used to mimic sun light in a Sandbox.SceneWorld. Direction is controlled by this objects' Rotation.
- SceneSpotLight
A simple spot light scene object for use in a Sandbox.SceneWorld.
- SceneModel
A model scene object that supports animations and can be rendered within a Sandbox.SceneWorld.
- SceneParticles
A SceneObject used to render particles.
We need to be careful with what we do here, because this object is created for in-engine particles
as …
- SceneSkyBox
Renders a skybox within a Sandbox.SceneWorld.
- SceneRenderLayer
SceneObjects can be rendered on layers other than the main game layer.
This is useful if, for example, you want to render on top of everything w…
- SceneTrace
- SceneTraceResult
- SceneUtility
- SceneWorld
A scene world that contains Sandbox.SceneObjects. See Utility.CreateSceneWorld.
<para>You may also want a Sandbox.SceneCamera to manually ren…
- Screen
Access screen dimension etc.
- SelectionSystem
- SerializedObject
An object (or data) that can be accessed as an object
- SerializedProperty
- ShaderProgramType
- SimpleVertex
- SkipHotloadAttribute
Skip processing a specific field, or any fields in a type marked by this attribute. Field
processing will still occur if a type marked by this a…
- Sound
Single source for creating sounds
- SoundFormat
- SoundHandle
A handle to a sound that is currently playing. You can use this to control the sound's position, volume, pitch etc.
- SoundHandleExtensions
- SoundStream
- SpaceAttribute
Add a space above this property
- Sphere
Represents a sphere.
- Standalone
- StandaloneManifest
- StaticRpcMsg
- SteamId
Represents a SteamId, in the hope to avoid the "should it be a long or ulong" debate.
- StereoTargetEye
- StreamChannel
- StreamChatMessage
- StreamClip
- Streamer
- StreamPoll
- StreamPrediction
- StreamService
Streamer integration services
- StreamUser
- StreamUserFollow
- StringLiteralOnlyAttribute
Ask codegen to shit itself if the parameter isn't passed in as a string literal
- StringToken
Strings are commonly converted to tokens in engine, to save space and speed up things like comparisons.
We wrap this functionality up in the Str…
- SupportsILHotloadAttribute
- SuppressNullKeyWarningAttribute
When applied to a member with System.Collections.Generic.Dictionary`2 or System.Collections.Generic.HashSet`1 type,
don't warn if the key of an …
- SyncAttribute
Automatically synchronize a property of a networked object from the owner to other clients.
- HostSyncAttribute
Automatically synchronize a property of a networked object from the host to other clients.
Obsolete: 11/12/2024
- SyncFlags
Describes the behaviour of network synchronization.
- TaskSource
Provides a way for us to cancel tasks after common async shit is executed.
- TextAreaAttribute
When applied to a string property, show a multi-line text box instead of a single line.
- TextFlag
Flags dictating position of text (and other elements).
Default alignment on each axis is Top, Left.
Values for each axis can be combined into …
- TextRendering
- Texture2DBuilder
- Texture3DBuilder
- TextureArrayBuilder
- TextureBuilder
- TextureCubeBuilder
- ThreadSafe
MainThread related functions.
- Time
- TimeSince
A convenience struct to easily measure time since an event last happened, based on Sandbox.Time.Now.<br /><br />
Typical usage would see you ass…
- TimeUntil
A convenience struct to easily manage a time countdown, based on Sandbox.Time.Now.<br /><br />
Typical usage would see you assigning to a variab…
- TintAttribute
- TrailTextureConfig
Defines how a trail is going to be textured. Used by TrailRenderer.
- TransformProxy
- Triangle
- TypeDescription
Describes a type. We use this class to wrap and return <see cref="T:System.Type">System.Type</see>'s that are safe to interact with.
Returned…
- Vertex
- VertexAttribute
- VertexAttributeFormat
- VertexAttributeType
- VertexBuffer
- VertexLayout
Allows for the definition of custom vertex layouts
- VideoDisplayMode
- VideoPlayer
Enables video playback and access to the video texture and audio.
- VideoWriter
Allows the creation of video content by encoding a sequence of frames.
- VolumetricFogParameters
- WebSocket
A WebSocket client for connecting to external services.
- WebSurface
Enables rendering and interacting with a webpage
- WideModeAttribute
Expand the value editor to fill the next line in the inspector, leaving the title above it
- WrappedMethod
Provides data about a wrapped method in a Sandbox.CodeGeneratorAttribute callback.
- WrappedMethod<T>
Provides data about a wrapped method in a Sandbox.CodeGeneratorAttribute callback.
- WrappedPropertyGet<T>
Provides data about a wrapped property getter in a Sandbox.CodeGeneratorAttribute callback.
- WrappedPropertySet<T>
Provides data about a wrapped property setter in a Sandbox.CodeGeneratorAttribute callback.
Sandbox.ActionGraphs
Sandbox.Audio
- AudioChannel
Represents an audio channel, between 0 and 7. This is used to index into buffers.
This is used rather than an int to avoid unfortuate bugs.
- AudioMeter
Allows the capture and monitor of an audio source
- AudioProcessor
Takes a bunch of samples and processes them. It's common for these to be chained together.
It's also common for the processor to store state bet…
- DspPresetHandle
A handle to a DspPreset
- MixBuffer
Contains 512 samples of audio data, this is used when mixing a single channel
- Mixer
Takes a bunch of sound, changes its volumes, mixes it together, outputs it
- MixerHandle
A handle to a Mixer
- MultiChannelBuffer
Holds up to 8 mix buffers, which usually represent output speakers.
- PerChannel<T>
Stores a variable per channel
Sandbox.Bind
- BindSystem
Data bind system, bind properties to each other.
- Builder
A helper to create binds between two properties (or whatever you want)
<para>
Example usage: set "BoolValue" from value of "StringValue"
<co…
- Link
Joins two proxies together, so one can be updated from the other (or both from each other)
- Proxy
Gets and Sets a value from somewhere.
Sandbox.DataModel
Sandbox.Diagnostics
Sandbox.Engine
Sandbox.Engine.Settings
Sandbox.Engine.Shaders
Sandbox.Engine.Utility.RayTrace
Sandbox.Helpers
- UndoSystem
A system that aims to wrap the main reusable functionality of an undo system
Sandbox.Html
Sandbox.Internal
Sandbox.Localization
- LanguageInformation
- Languages
A list of supported languages and metadata surrounding them
- Phrase
A translated string. ie "Hello World".
It might also have variables, ie "Hello {PlayerName}".
Todo support for conditionals and plurals
- PhraseCollection
Holds a bunch of localized phrases
Sandbox.Menu
Sandbox.Modals
Sandbox.ModelEditor.Nodes
Sandbox.Navigation
- NavMesh
Navigation Mesh - allowing AI to navigate a world
Sandbox.Network
Sandbox.Physics
- PhysicsJoint
A physics constraint.
- BallSocketJoint
A ballsocket constraint.
- FixedJoint
A generic "rope" type constraint.
- HingeJoint
A hinge-like constraint.
- PulleyJoint
A pulley constraint. Consists of 2 ropes which share same length, and the ratio changes via physics interactions.
Typical setup looks like th…
- SliderJoint
A slider constraint, basically allows movement only on the arbitrary axis between the 2 constrained objects on creation.
- SpringJoint
A rope-like constraint that is has springy/bouncy.
- PhysicsPoint
Used to describe a point on a physics body. This is used for things like joints where
you want to pass in just a body, or sometimes you want to …
- PhysicsSpring
Spring related settings for joints such as Sandbox.Physics.FixedJoint.
Sandbox.Razor
- RenderFragment
Represents a segment of UI content, implemented as a delegate that
writes the content to a Sandbox.Razor.RenderTreeBuilder.
- RenderFragment<TValue>
Represents a segment of UI content for an object of type <typeparamref name="TValue" />, implemented as
a function that returns a Sandbox.Razor.…
- RenderTreeBuilder
This is a tree renderer for panels. If we ever use razor on other ui we'll want to make a copy of
this class and do the specific things to that.…
- RouteAttribute
Sandbox.Rendering
Sandbox.Services
- AchievementOverview
Activity Feed
- Achievements
Allows access to stats for the current game. Stats are defined by the game's author
and can be used to track anything from player actions to per…
- Auth
- BenchmarkSystem
Allows access to stats for the current game. Stats are defined by the game's author
and can be used to track anything from player actions to per…
- Feed
Activity Feed
- Inventory
Allows access to the Steam Inventory system
- Leaderboards
- Messaging
- News
News Posts
- Notification
Player notification
- ServerList
- Stats
Allows access to stats for the current game. Stats are defined by the game's author
and can be used to track anything from player actions to per…
Sandbox.Services.Players
- Overview
An overview of a player. Only available if their profile isn't set to private.
- Profile
Player profile
Sandbox.Speech
Sandbox.Tasks
Sandbox.UI
- Align
Possible values for <c>align-items</c> CSS property.
- BackgroundRepeat
Possible values for <c>background-repeat</c> CSS property.
- BaseStyles
Auto generated container class for majority of CSS properties available.
- Styles
Represents all supported CSS properties and their currently assigned values.
- BorderImageFill
State of <c>fill</c> setting of <c>border-image-slice</c> (<c>border-image</c>) CSS property.
- BorderImageRepeat
Possible values for <c>border-image-repeat</c> (<c>border-image</c>) CSS property.
- Box
Represents position and size of a Sandbox.UI.Panel on the screen.
- ButtonEvent
Keyboard (and mouse) key press Sandbox.UI.PanelEvent.
- CascadingParameterAttribute
A panel's property will be inherited from its parent.
- Clipboard
- DisplayMode
Possible values for <c>display</c> CSS property.
- Emoji
Helper class for working with Unicode emoji.
- FlexDirection
Possible values for <c>flex-direction</c> CSS property.
- FontSmooth
Possible values for <c>font-smooth</c> CSS property.
- FontStyle
Possible values for <c>font-style</c> CSS property.
- ImageRendering
Possible values for <c>image-rendering</c> CSS property.
- INavigatorPage
When applied to a page of a navigator, this will receive
callbacks when the page is made visible and closed
- InputFocus
Handles input focus for Sandbox.UI.Panels.
- IStyleBlock
A CSS rule - ie ".chin { width: 100%; height: 100%; }"
- IStyleTarget
Everything the style system needs to work out a style
- Justify
Possible values for <c>justify-content</c> CSS property.
- KeyFrames
Represents a CSS <c>@keyframes</c> rule.
- LayoutCascade
- Length
A variable unit based length. ie, could be a percentage or a pixel length. This is commonly used to express the size of things in UI space, usuall…
- LengthUnit
Possible units for various CSS properties that require length, used by Sandbox.UI.Length struct.
- LengthUnitExtension
- Margin
Represents a <see cref="T:Sandbox.Rect">Rect</see> where each side is the thickness of an edge/padding/margin/border, rather than positions.
- MaskMode
Possible values for <c>mask-mode</c> CSS property.
- MaskScope
Possible values for <c>mask-scope</c> CSS property.
- NavigationExtensions
- Option
An option for a Sandbox.UI.DropDown or Sandbox.UI.ButtonGroup.
- OverflowMode
Possible values for the "overflow" CSS rule, dictating what to do with content that is outside of a panels bounds.
- Panel
A simple User Interface panel. Can be styled with CSS.
- BasePopup
A panel that gets deleted automatically when clicked away from
- Image
A generic box that displays a given texture within itself.
- Label
A generic text label. Can be made editable.
- IconPanel
A panel containing an icon, typically a material icon.
- ScenePanel
Allows to render a scene world onto a panel.
- SvgPanel
A generic panel that draws an SVG scaled to size
- WebPanel
A panel that displays an interactive web page.
- RootPanel
A root panel. Serves as a container for other panels, handles things such as rendering.
- WorldPanel
An interactive 2D panel rendered in the 3D world.
- Button
A simple button Sandbox.UI.Panel.
- PopupButton
A button that opens a Sandbox.UI.PopupButton.Popup panel.
Useless on its own - you need to implement Open
- DropDown
A UI control which provides multiple options via a dropdown box.
- ButtonGroup
A group of side-by-side buttons one of which can be selected.
- Checkbox
A simple checkbox Sandbox.UI.Panel.
- NavHostPanel
A panel that acts like a website. A single page is always visible
but it will cache other views that you visit, and allow forward/backward navig…
- NavLinkPanel
A panel that will navigate to an href but also have .active class if href is active
- BaseControl
- Field
A field in a form, usually contains a label and a control
- FieldControl
A field in a form, usually contains a label and a control
- Form
- SplitContainer
A control that has two panes with a splitter in between. You can drag the splitter to change the size of the two panels.
- TabContainer
A container with tabs, allowing you to switch between different sheets.
You can position the tabs by adding the class tabs-bottom, tabs-left,…
- TextEntry
A Sandbox.UI.Panel that the user can enter text into.
- LoaderFullScreen
- PackageCard
- PackageFilterFacet
- PackageFilterOrder
- PackageFilters
- PackageList
- MenuPanel
- VirtualScrollPanel
Scroll panel that creates its contents as they become visible
TODO: we need to let panels know, or recreate them, when Data changes
- BaseVirtualScrollPanel<T>
- PanelEvent
Base Sandbox.UI.Panel event.<br />
See Sandbox.UI.Panel.CreateEvent(Sandbox.UI.PanelEvent).
- PanelEventAttribute
Add an event listener to a Sandbox.UI.Panel event with the given name.<br />
See Sandbox.UI.Panel.CreateEvent(System.String,System.Object,System…
- PanelInputType
- PanelTransform
- PointerEvents
Possible values for <c>pointer-events</c> CSS property.
- PositionMode
Possible values for <c>position</c> CSS property.
- PseudoClass
List of CSS pseudo-classes used by the styling system for hover, active, etc.
This acts as a bit-flag.
- RenderState
Describes panel's position and size for rendering operations.
- Shadow
Shadow style settings
- ShadowList
A list of shadows
- StyleBlock
A CSS rule - ie ".chin { width: 100%; height: 100%; }"
- StyleSelector
A CSS selector like "Panel.button.red:hover .text"
- StyleSheet
- StyleSheetAttribute
Will automatically apply the named stylesheet to the Panel.
- StyleSheetCollection
A collection of Sandbox.UI.StyleSheet objects applied directly to a panel.
See Sandbox.UI.Panel.StyleSheet.
- TextAlign
Possible values for <c>text-align</c> CSS property.
- TextDecoration
Possible values for <c>text-decoration</c> CSS property.
- TextDecorationStyle
Possible values for <c>text-decoration-style</c> CSS property.
- TextOverflow
Possible values for <c>text-overflow</c> CSS property.
- TextSkipInk
Possible values for <c>text-decoration-skip-ink</c> CSS property.
- TextTransform
Possible values for <c>text-transform</c> CSS property.
- TransitionDesc
Describes transition of a single CSS property, a.k.a. the values of a <c>transition</c> CSS property.
<para>Utility to create a transition by co…
- TransitionList
A list of CSS properties that should transition when changed.
Utility to create a transition by comparing the
panel style before and after …
- Transitions
Handles the storage, progression and application of CSS transitions for a single Sandbox.UI.Panel.
- WhiteSpace
Possible values for <c>white-space</c> CSS property.
- WordBreak
Possible values for <c>word-break</c> CSS property.
- WorldInput
WorldInput can be used to simulate standard mouse inputs on WorldPanels.
- Wrap
Possible values for <c>flex-wrap</c> CSS property.
Sandbox.UI.Construct
Sandbox.UI.Tests
Sandbox.Utility
- CircularBuffer<T>
Circular buffer, push pop and index access is always O(1).
- Crc32
Generate 32-bit Cyclic Redundancy Check (CRC32) checksums.
- Crc64
Generate 64-bit Cyclic Redundancy Check (CRC64) checksums.
- DataProgress
For providing a callback to describe the progress of doing something with some kind of block of data
- DisposeAction
Creates an IDisposable that will simply run an action when disposed
- Easing
Easing functions used for transitions. See https://easings.net/ for examples.
- EditorTools
Functions to interact with the tools system. Does nothing if tools aren't enabled.
- FloatBitmap
- INoiseField
A noise function that can be sampled at a 1-, 2-, or 3D position.
Samples will be between <c>0</c> and <c>1</c>. Thread-safe.
- Noise
Provides access to coherent noise utilities.
All of these functions should return between 0 and 1.
- Parallel
Wrappers of the parallel class.
- Steam
Sandbox.Utility.Svg
- PathArcSize
Controls arc size in Sandbox.Utility.Svg.ArcToPathCommand.
- PathCommand
Base class for SVG path commands.
- AddCirclePathCommand
See <see href="https://developer.mozilla.org/en-US/docs/Web/SVG/Element/circle" />.
- AddOvalPathCommand
See <see href="https://developer.mozilla.org/en-US/docs/Web/SVG/Element/ellipse" />.
- AddPolyPathCommand
See <see href="https://developer.mozilla.org/en-US/docs/Web/SVG/Element/polyline" />, <see href="https://developer.mozilla.org/en-US/docs/Web/SVG/…
- AddRectPathCommand
See <see href="https://developer.mozilla.org/en-US/docs/Web/SVG/Element/rect" />.
- AddRoundRectPathCommand
See <see href="https://developer.mozilla.org/en-US/docs/Web/SVG/Element/rect" />.
- ArcToPathCommand
See <see href="https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths#arcs" />.
- ClosePathCommand
See <see href="https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths#line_commands" />.
- CubicToPathCommand
See <see href="https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths#b%C3%A9zier_curves" />.
- LineToPathCommand
See <see href="https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths#line_commands" />.
- MoveToPathCommand
See <see href="https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths#line_commands" />.
- QuadToPathCommand
See <see href="https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths#b%C3%A9zier_curves" />.
- PathDirection
Controls arc direction in Sandbox.Utility.Svg.ArcToPathCommand.
- PathFillType
How to determine which sections of the path are filled.
- SvgDocument
Helper class for reading Scalable Vector Graphics files.
- SvgPath
A shape in a Sandbox.Utility.Svg.SvgDocument, described as a vector path.
Sandbox.Volumes
- SceneVolume
A generic way to represent volumes in a scene. If we all end up using this instead of defining our own version
in everything, we can improve thi…
Sandbox.VR
- AnalogInput
Represents a VR analog input action (e.g. trigger)
- AnalogInput2D
Represents a two-dimensional VR analog input action (e.g. joysticks)
- DigitalInput
Represents a VR digital input action (e.g. X button)
- FingerValue
Accessors for Sandbox.VR.VRController.GetFingerValue(Sandbox.VR.FingerValue)
- TrackedDeviceRole
- TrackedDeviceType
- TrackedObject
Represents a physically tracked VR object with a transform
- VRController
Represents a VR controller, along with its transform, velocity, and inputs.
- VRHandJoint
- VRHandJointData
- VRInput
- VROverlay<para>VR overlays draw over the top of the 3D scene, they will not be affected by lighting,
post processing effects or anything else in the world.<…
- VROverlayPanel<para>A Sandbox.VR.VROverlay that draws and handles input of a Sandbox.UI.RootPanel.</para><para>VR overlays draw over the top of the 3D scene, they …