- 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
- 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.
- 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
- 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…
- 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
- RuntimeAddonPage
- 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…
- 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
- HammerSession
This is our CQHammerMainWnd
- 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.
- 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 !:ActionNodeAt…
- 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
Qt
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
- 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 …
- 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
- BroadcastAttribute
Marks a method as being an RPC that when invoked will be called for all connected clients including the host.
You can filter who receives the RP…
- 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
- 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.
- 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.
- 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
- 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).
- 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
- ComputeBuffer<T>
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…
- 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.ComputeBuffer`1 or a Sandbox.Te…
- 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.
- 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.
- DrawIndirectArguments
- 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
- 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…
- 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.
- 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".
- 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…
- 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
- 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.
- 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
- 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
- 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
- Sphere
Represents a sphere.
- Standalone
- StandaloneManifest
- StaticRpcMsg
- 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.
- 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
- 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.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.Services
- 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…
- Inventory
Allows access to the Steam Inventory system
- Leaderboards
- Messaging
- 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.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.
- 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
- Popup
- 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.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 …
Steamworks.Data