在DirectX 11(C ++)中绘制线条的最简单方法是什么?

时间:2014-02-08 18:04:23

标签: c++ directx line directx-11

我想在DirectX 11应用程序中画一条线。我希望它具有恒定宽度(不依赖于与相机的距离),但它必须是空间中的线(3D),所以类似于对象线线框模式。我将使用一些着色器在一个充满其他对象的场景中渲染我的线条。

使用C ++(而不是C#)在DirectX 11中实现它的最佳和最简单的方法是什么?

代码示例将不胜感激;)

1 个答案:

答案 0 :(得分:3)

最常见的解决方案是在 IASetPrimitiveTopology 调用中使用D3D11_PRIMITIVE_TOPOLOGY_LINELIST。

我怀疑(但没有描述)它也是渲染线条的一种非常快速的方法。在您的评论中,您提到了切换原始拓扑设置的成本。我会说成本可以忽略不计,因为它归结为每帧一个状态切换(首先渲染图元,最后一行)。