是否可以将滤镜应用于要使用Compute Shader渲染的几何数据,然后将结果用作顶点着色器中的输入缓冲区?这样可以省去回读数据的麻烦(和时间)。
非常感谢任何帮助。
答案 0 :(得分:4)
绝对是的。首先,您使用ID3D11Buffer
,BIND_VERTEX_BUFFER
和BIND_SHADER_RESOURCE
使用标记以及相关联的无人机和SRV创建两个相同的BIND_UNORDERED_ACCESS
结构。
第一步是将您的过滤器应用于输入源缓冲区,并在计算过程中写入目标缓冲区。
然后在绘制过程中,您只需将目标缓冲区绑定到IA
阶段。如果你需要在顶点上累积计算,你可以做一些乒乓球(我假设通过过滤器你的意思是functional map,用于参考功能编程术语。)