Directx 使用Direct3D的二维图形

Directx 使用Direct3D的二维图形,directx,2d,direct3d,Directx,2d,Direct3d,我正在尝试使用Direct3D渲染2D图形,这是自DirectDraw被弃用以来所有人都推荐的。我真的不在乎任何3D效果,只想能够在彼此之间绘制线条、圆圈和blit图像。我的问题是这样的 我需要从文件中加载很多图像,并将它们相互绘制。纹理会是一种方式吗 非常愚蠢的问题,但我似乎找不到任何东西:如何将一个曲面渲染到另一个曲面上 你应该把所有的东西都渲染到一个纹理上,然后把它画成一个精灵,还是只画很多纹理 如何在纹理/表面/精灵上绘制线条等?我想有比获取设备上下文并使用GDI绘制更好的方法吗 对 创

我正在尝试使用Direct3D渲染2D图形,这是自DirectDraw被弃用以来所有人都推荐的。我真的不在乎任何3D效果,只想能够在彼此之间绘制线条、圆圈和blit图像。我的问题是这样的

  • 我需要从文件中加载很多图像,并将它们相互绘制。纹理会是一种方式吗
  • 非常愚蠢的问题,但我似乎找不到任何东西:如何将一个曲面渲染到另一个曲面上
  • 你应该把所有的东西都渲染到一个纹理上,然后把它画成一个精灵,还是只画很多纹理
  • 如何在纹理/表面/精灵上绘制线条等?我想有比获取设备上下文并使用GDI绘制更好的方法吗
  • 创建两个三角形,形成一个四边形。适当设置UV值。UV值的设置范围为0到1。因此,对于1024x1024(或实际上任何分辨率纹理,这就是为什么它是这样做的)图像,左上角是0,0,右下角是1,1。我会帮你的
  • 最好在一个纹理中放置多个“帧”,以避免过于频繁地更改纹理(这是昂贵的)
  • 您可以使用D3DPT_线列表/带。。。否则,请使用2个三角形(请参见)