要执行的图形命令的列表。
命令缓冲区可保存渲染命令列表(“设置渲染目标、绘制网格等等”)。可将渲染命令设置为在摄像机渲染(请参阅 Camera.AddCommandBuffer)、光源渲染(请参阅 Light.AddCommandBuffer)期间的各个点执行,或者立即执行(请参阅 Graphics.ExecuteCommandBuffer)。
通常,渲染命令用于通过一些自定义方式扩展 Unity 的渲染管线。例如,您可以在所有常规对象处理完毕后将一些其他对象渲染到延迟渲染 G 缓冲区,或对光源
阴影贴图执行自定义处理。有关更多详细信息,请参阅command buffers overview页面。
命令缓冲区创建后,可根据需要多次执行。
另请参阅:Camera.AddCommandBuffer、Light.AddCommandBuffer、CameraEvent、LightEvent、Graphics.ExecuteCommandBuffer、command buffers overview。
name | 此命令缓冲区的名称。 |
sizeInBytes | 此命令缓冲区的大小,以字节为单位(只读)。 |
CommandBuffer | 创建新的空命令缓冲区。 |
BeginSample | 添加命令,以开始对配置文件进行采样。 |
Blit | 添加“对渲染纹理执行 blit 操作”命令。 |
Clear | 清除缓冲区中的所有命令。 |
ClearRandomWriteTargets | 为 Shader Model 4.5 级别的像素着色器清除随机写入目标。 |
ClearRenderTarget | 添加“清除渲染目标”命令。 |
ConvertTexture | 转换源纹理并将其复制到具有不同格式或尺寸的目标纹理。 |
CopyCounterValue | 添加用于复制 ComputeBuffer 计数器值的命令。 |
CopyTexture | 添加用于将纹理复制到其他纹理中的命令。 |
CreateGPUFence | 创建一个 GPUFence,该栅栏的传递时机是此调用前 GPU 中完成的最后一个 Blit、Clear、Draw、Dispatch 或 Texture Copy 命令之后。 |
DisableScissorRect | 添加用于禁用硬件剪辑矩形的命令。 |
DisableShaderKeyword | 添加用于禁用全局着色器关键字的命令。 |
DispatchCompute | 添加用于执行 ComputeShader 的命令。 |
DrawMesh | 添加“绘制网格”命令。 |
DrawMeshInstanced | 添加“通过实例化绘制网格”命令。如果 Material.enableInstancing 为 false,该命令不会立即失败并抛出异常,但如果检测到此类情况,则会记录错误并在每次执行命令时跳过渲染。如果当前平台不支持此 API(即,如果 GPU 实例化不可用),则会抛出 InvalidOperationException。请参阅 SystemInfo.supportsInstancing。 |
DrawMeshInstancedIndirect | 添加“通过间接实例化绘制网格”命令。 |
DrawProcedural | 添加“绘制程序化几何体”命令。 |
DrawProceduralIndirect | 添加“绘制程序化几何体”命令。 |
DrawRenderer | 添加“绘制渲染器”命令。 |
EnableScissorRect | 添加用于启用硬件剪辑矩形的命令。 |
EnableShaderKeyword | 添加用于启用全局着色器关键字的命令。 |
EndSample | 添加命令,以开始对配置文件进行采样。 |
GenerateMips | 生成渲染纹理的多级渐进纹理级别。 |
GetTemporaryRT | 添加“获取临时渲染纹理”命令。 |
GetTemporaryRTArray | 添加“获取临时渲染纹理阵列”命令。 |
IssuePluginCustomBlit | 向本机代码插件发送用户定义的 blit 事件。 |
IssuePluginCustomTextureUpdate | 向本机代码插件发送纹理更新事件。 |
IssuePluginEvent | 向本机代码插件发送用户定义的事件。 |
IssuePluginEventAndData | 向本机代码插件发送具有自定义数据的用户定义的事件。 |
ReleaseTemporaryRT | 添加“释放临时渲染纹理”命令。 |
RequestAsyncReadback | 向命令缓冲区添加异步 GPU 回读请求命令。 |
SetComputeBufferParam | 添加用于在 ComputeShader 中设置输入或输出缓冲区参数的命令。 |
SetComputeFloatParam | 添加用于在 ComputeShader 中设置浮点参数的命令。 |
SetComputeFloatParams | 添加用于在 ComputeShader 中设置多个连续浮点参数的命令。 |
SetComputeIntParam | 添加用于在 ComputeShader 中设置整数参数的命令。 |
SetComputeIntParams | 添加用于在 ComputeShader 中设置多个连续整数参数的命令。 |
SetComputeMatrixArrayParam | 添加用于在 ComputeShader 中设置矩阵数组参数的命令。 |
SetComputeMatrixParam | 添加用于在 ComputeShader 中设置矩阵参数的命令。 |
SetComputeTextureParam | 添加用于在 ComputeShader 中设置纹理参数的命令。 |
SetComputeVectorArrayParam | 添加用于在 ComputeShader 中设置向量数组参数的命令。 |
SetComputeVectorParam | 添加用于在 ComputeShader 中设置向量参数的命令。 |
SetGlobalBuffer | 添加“设置全局着色器缓冲区属性”命令。 |
SetGlobalColor | 添加“设置全局着色器颜色属性”命令。 |
SetGlobalDepthBias | 添加用于设置全局深度偏差的命令。 |
SetGlobalFloat | 添加“设置全局着色器浮点属性”命令。 |
SetGlobalFloatArray | 添加“设置全局着色器浮点数组属性”命令。 |
SetGlobalInt | 为所有着色器设置给定的全局整数属性。 |
SetGlobalMatrix | 添加“设置全局着色器矩阵属性”命令。 |
SetGlobalMatrixArray | 添加“设置全局着色器矩阵数组属性”命令。 |
SetGlobalTexture | 添加“设置全局着色器纹理属性”命令(引用 RenderTexture)。 |
SetGlobalVector | 添加“设置全局着色器向量属性”命令。 |
SetGlobalVectorArray | 添加“设置全局着色器向量数组属性”命令。 |
SetInvertCulling | 向缓冲区添加“设置反转剔除”命令。 |
SetProjectionMatrix | 添加用于设置投影矩阵的命令。 |
SetRandomWriteTarget | 为 Shader Model 4.5 级别的像素着色器设置随机写入目标。 |
SetRenderTarget | 添加“设置活动的渲染目标”命令。 |
SetShadowSamplingMode | 添加“设置阴影采样模式”命令。 |
SetViewMatrix | 添加用于设置视图矩阵的命令。 |
SetViewport | 添加用于设置渲染视口的命令。 |
SetViewProjectionMatrices | 添加用于设置视图和投影矩阵的命令。 |
WaitOnGPUFence | 指示 GPU 等待,直至给定的 GPUFence 完成传递。 |