# Sandbox.Rendering.CommandList

- Kind: class
- Namespace: `Sandbox.Rendering`
- Assembly: `Sandbox.Engine`
- Modifiers: sealed

## Constructors

- [`CommandList`](/api/Sandbox.Rendering.CommandList/.ctor)

## Properties

- [`Attributes`](/api/Sandbox.Rendering.CommandList/Attributes): Access to the local attributes. What these are depends on where the command list is being called. If we're calling from a renderable, these are the attributes for that renderable.
- [`DebugName`](/api/Sandbox.Rendering.CommandList/DebugName)
- [`Enabled`](/api/Sandbox.Rendering.CommandList/Enabled)
- [`Flags`](/api/Sandbox.Rendering.CommandList/Flags)
- [`GlobalAttributes`](/api/Sandbox.Rendering.CommandList/GlobalAttributes): These are the attributes for the current view. Setting a variable here will let you pass it down to other places in the render pipeline.
- [`Paint`](/api/Sandbox.Rendering.CommandList/Paint): Access to simple 2D painting functions to draw shapes and text.
- [`ViewportSize`](/api/Sandbox.Rendering.CommandList/ViewportSize): A handle to the viewport size

## Methods

- [`Blit`](/api/Sandbox.Rendering.CommandList/Blit)
- [`Clear`](/api/Sandbox.Rendering.CommandList/Clear): Clear the current drawing context to given color.
- [`ClearRenderTarget`](/api/Sandbox.Rendering.CommandList/ClearRenderTarget): Set the current render target. Setting this will bind the render target and change the viewport to match it.
- [`CopyStructureCount`](/api/Sandbox.Rendering.CommandList/CopyStructureCount): Copies the hidden append-buffer counter of `buffer` into `destBuffer`. Useful for feeding a survivor count into an indirect draw/dispatch argument buffer.
- [`DispatchCompute`](/api/Sandbox.Rendering.CommandList/DispatchCompute)
- [`DispatchComputeIndirect`](/api/Sandbox.Rendering.CommandList/DispatchComputeIndirect)
- [`Draw`](/api/Sandbox.Rendering.CommandList/Draw)
- [`DrawIndexed`](/api/Sandbox.Rendering.CommandList/DrawIndexed)
- [`DrawIndexedInstanced`](/api/Sandbox.Rendering.CommandList/DrawIndexedInstanced): Draws indexed geometry with instancing. Each instance shares the same index buffer.
- [`DrawIndexedInstancedIndirect`](/api/Sandbox.Rendering.CommandList/DrawIndexedInstancedIndirect)
- [`DrawInstancedIndirect`](/api/Sandbox.Rendering.CommandList/DrawInstancedIndirect)
- [`DrawModel`](/api/Sandbox.Rendering.CommandList/DrawModel): Draws a single model at the given Transform immediately.
- [`DrawModelInstanced`](/api/Sandbox.Rendering.CommandList/DrawModelInstanced)
- [`DrawModelInstancedIndirect`](/api/Sandbox.Rendering.CommandList/DrawModelInstancedIndirect): Draws multiple instances of a model using GPU instancing with the number of instances being provided by indirect draw arguments. Use `SV_InstanceID` semantic in shaders to access the rendered instance.
- [`DrawQuad`](/api/Sandbox.Rendering.CommandList/DrawQuad)
- [`DrawReflection`](/api/Sandbox.Rendering.CommandList/DrawReflection): Render a planar reflection using the specified camera and the specified plane.
- [`DrawRefraction`](/api/Sandbox.Rendering.CommandList/DrawRefraction): Render a planar refraction using the specified camera and the specified plane. This is for all intents and purposes a regular view with a plane clipping it. Usually used for rendering under water.
- [`DrawRenderer`](/api/Sandbox.Rendering.CommandList/DrawRenderer): Render a [Sandbox.Renderer](/api/Sandbox.Renderer) with the specified overrides.
- [`DrawScreenQuad`](/api/Sandbox.Rendering.CommandList/DrawScreenQuad)
- [`DrawText`](/api/Sandbox.Rendering.CommandList/DrawText): Draws text within a rectangle using a prepared [Sandbox.TextRendering.Scope](/api/Sandbox.TextRendering.Scope).
- [`DrawView`](/api/Sandbox.Rendering.CommandList/DrawView): Renders the view from a camera to the specified render target.
- [`GenerateMipMaps`](/api/Sandbox.Rendering.CommandList/GenerateMipMaps): Generates a mip-map chain for the specified render target. This will generate mipmaps for the color texture of the render target.
- [`GetRenderTarget`](/api/Sandbox.Rendering.CommandList/GetRenderTarget): Get a screen sized temporary render target. You should release the returned handle when you're done to return the textures to the pool.
- [`GrabDepthTexture`](/api/Sandbox.Rendering.CommandList/GrabDepthTexture): Takes a copy of the depthbuffer and returns a handle to it
- [`GrabFrameTexture`](/api/Sandbox.Rendering.CommandList/GrabFrameTexture): Takes a copy of the framebuffer and returns a handle to it
- [`InsertList`](/api/Sandbox.Rendering.CommandList/InsertList): Run this CommandList here
- [`ReleaseRenderTarget`](/api/Sandbox.Rendering.CommandList/ReleaseRenderTarget): We're no longer using this RT, return it to the pool
- [`Reset`](/api/Sandbox.Rendering.CommandList/Reset)
- [`ResourceBarrierTransition`](/api/Sandbox.Rendering.CommandList/ResourceBarrierTransition): Executes a barrier transition for the given GPU Texture Resource. Transitions the texture resource to a new pipeline stage and access state.
- [`Set`](/api/Sandbox.Rendering.CommandList/Set)
- [`SetCombo`](/api/Sandbox.Rendering.CommandList/SetCombo)
- [`SetConstantBuffer`](/api/Sandbox.Rendering.CommandList/SetConstantBuffer)
- [`SetCounterValue`](/api/Sandbox.Rendering.CommandList/SetCounterValue): Resets the hidden append/structured-buffer counter of `buffer` to `value`.
- [`SetGlobal`](/api/Sandbox.Rendering.CommandList/SetGlobal)
- [`SetRenderTarget`](/api/Sandbox.Rendering.CommandList/SetRenderTarget): Set the current render target. Setting this will bind the render target and change the viewport to match it.
- [`UavBarrier`](/api/Sandbox.Rendering.CommandList/UavBarrier): Issues a UAV barrier for the given texture, ensuring writes from prior shader invocations are visible to subsequent ones without changing the resource layout.
- [`ViewportSizeScaled`](/api/Sandbox.Rendering.CommandList/ViewportSizeScaled): A handle to the viewport size divided by a factor. Useful for dispatching at half or quarter resolution.
