ICommandList
public interface ICommandList
对将发送到 GPU 进行渲染的命令序列进行编码。
方法
| 方法 | 描述 |
|---|---|
| bindDescriptorSet(IDescriptorSet descriptorSet) | 将描述符集绑定到当前管线 |
| bindIndexBuffer(IIndexBuffer indexBuffer) | 绑定用于渲染的索引缓冲区 |
| bindPipeline(IPipeline pipeline) | 绑定用于渲染的管线实例 |
| bindVertexBuffer(IVertexBuffer vertexBuffer) | 绑定用于渲染的顶点缓冲区 |
| draw() | 在没有索引缓冲区的情况下绘制 |
| draw(int start, int count) | 在没有索引缓冲区的情况下绘制 |
| drawIndex() | 在命令列表中发出索引绘制 |
| drawIndex(int start, int count) | 在命令列表中发出索引绘制 |
| pushConstants(int stage, byte[] data) | 将常量推送到管线 |
| pushConstants(int stage, byte[] data, int size) | 将常量推送到管线 |
bindDescriptorSet(IDescriptorSet descriptorSet)
public abstract void bindDescriptorSet(IDescriptorSet descriptorSet)
将描述符集绑定到当前管线
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| descriptorSet | IDescriptorSet |
bindIndexBuffer(IIndexBuffer indexBuffer)
public abstract void bindIndexBuffer(IIndexBuffer indexBuffer)
绑定用于渲染的索引缓冲区
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| indexBuffer | IIndexBuffer |
bindPipeline(IPipeline pipeline)
public abstract void bindPipeline(IPipeline pipeline)
绑定用于渲染的管线实例
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| pipeline | IPipeline |
bindVertexBuffer(IVertexBuffer vertexBuffer)
public abstract void bindVertexBuffer(IVertexBuffer vertexBuffer)
绑定用于渲染的顶点缓冲区
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| vertexBuffer | IVertexBuffer |
draw()
public abstract void draw()
在没有索引缓冲区的情况下绘制
draw(int start, int count)
public abstract void draw(int start, int count)
在没有索引缓冲区的情况下绘制
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| 开始 | int | |
| 计数 | int |
drawIndex()
public abstract void drawIndex()
在命令列表中发出索引绘制
drawIndex(int start, int count)
public abstract void drawIndex(int start, int count)
在命令列表中发出索引绘制
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| 开始 | int | 要绘制的第一个索引 |
| 计数 | int | 要绘制的索引计数 |
pushConstants(int stage, byte[] data)
public abstract void pushConstants(int stage, byte[] data)
将常量推送到管线
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| 阶段 | int | 哪个着色器阶段将使用常量数据 |
| 数据 | byte[] | 将发送到着色器的数据 |
pushConstants(int stage, byte[] data, int size)
public abstract void pushConstants(int stage, byte[] data, int size)
将常量推送到管线
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| 阶段 | int | 哪个着色器阶段将使用常量数据 |
| 数据 | byte[] | 将发送到着色器的数据 |
| 大小 | int | 写入管线的字节数 |