ID3D11DeviceContext::D rawAuto 方法 (d3d11.h)

绘制未知大小的几何图形。

语法

void DrawAuto();

返回值

备注

绘制 API 将工作提交到呈现管道。 此 API 提交由输入汇编程序、顶点着色器和流输出阶段处理的未知大小的工作;工作可能已经历几何着色器阶段,也可能未完成。

将数据流式传输到流输出阶段缓冲区后,这些缓冲区可以再次绑定到输入槽 0 处的输入汇编程序阶段,DrawAuto 将绘制它们,而无需应用程序知道写入缓冲区的数据量。 当数据流出数据时,在内部维护写入 SO 阶段缓冲区的数据量的度量。这意味着 CPU 不需要在重新绑定作为输入数据流式传输的数据之前提取度量值。 尽管此数量在内部跟踪,但应用程序仍有责任使用输入布局来描述 SO 阶段缓冲区中的数据格式,以便在缓冲区再次绑定到输入汇编程序时布局可用。

下图显示了 DrawAuto 过程。

当数据通过多个阶段移动到缓冲区,然后返回输入装配器阶段时,DrawAuto 示意图

调用 DrawAuto 不会更改再次绑定为输入的流式输出缓冲区的状态。

DrawAuto 仅在使用一个输入缓冲区作为输入绑定到槽 0 处的 IA 阶段时工作。 应用程序必须使用绑定标志 (D3D11_BIND_VERTEX_BUFFERD3D11_BIND_STREAM_OUTPUT)创建 SO 缓冲区资源。

此 API 不支持索引或实例化。

如果应用程序需要检索流式处理输出缓冲区的大小,它可以使用 D3D11_QUERY_SO_STATISTICS 查询流式处理输出的统计信息。

要求

要求
目标平台 Windows
标头 d3d11.h
Library D3D11.lib

另请参阅

ID3D11DeviceContext