首页 > 解决方案 > DirectX11:确定顶点缓冲区的大小

问题描述

我正在使用带有流输出阶段的几何着色器从点列表中创建几何。来自几何着色器的数据被流式传输到缓冲区中,用作另一个着色器中的顶点缓冲区。但是,ID3D11::Draw() 调用要求您确切知道要绘制多少个顶点,而我不提前知道这一点。简单地在缓冲区上调用 sizeof() 只会给你指向缓冲区的指针的大小。是否有确定 DirectX 11 中缓冲区大小的方法?

标签: c++directxhlsl

解决方案


您可以调用ID3D11DeviceContext::DrawAuto方法来绘制由输入组装器、顶点着色器和流输出阶段处理的未知大小的几何图形。


推荐阅读