ID3D10Device::D rawAuto 方法 (d3d10.h)

绘制由几何着色器阶段创建的未知大小的几何图形。 请参阅备注。

语法

void DrawAuto();

返回值

备注

绘图 API 将工作提交到呈现管道。

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

下图显示了 DrawAuto 过程。

当数据通过多个阶段移动到缓冲区,然后返回到输入汇编程序阶段时,DrawAuto 示意图

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

DrawAuto 仅在使用一个输入缓冲区作为输入绑定到槽 0 的 IA 阶段进行绘图时有效。 应用程序必须使用绑定标志 (D3D10_BIND_VERTEX_BUFFERD3D10_BIND_STREAM_OUTPUT)创建 SO 缓冲区资源。

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

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

可以在 ParticlesGS 示例和 PipesGS 示例中 找到 DrawAuto 的示例

要求

要求
目标平台 Windows
标头 d3d10.h
Library D3D10.lib

另请参阅

ID3D10Device 接口