代码之家  ›  专栏  ›  技术社区  ›  bobobobo

(x,y,z)处的DirectX文本

  •  0
  • bobobobo  · 技术社区  · 14 年前

    如果有人玩过机械战士2,他们会用它来获得导航点。文本有一个三维位置,但它总是显示一个固定的大小。导航点实际上是空间中某一点的一段文字。

    除此之外,放置3d文本的能力几乎是无用的。。你总是希望文本是二维的,对吧?

    我终于找到了想要这个功能的地方。我有这些空间点,我需要分配文本信息,也就是说,我需要在一个固定的大小,但与一个三维位置绘制文本。这可以从DirectX完成吗?

    2 回复  |  直到 14 年前
        1
  •  1
  •   Goz    14 年前

    ID3DXFont 使用二维位置。但是你仍然可以使用它。D3DX还带有 D3DXVec3Project

        2
  •  0
  •   MSN    14 年前

    假设要在三维四边形上渲染文本,则需要根据与摄影机的z距离缩放文本四边形。确切的公式取决于您的世界->查看->屏幕变换,但它应该很容易计算,采取反变换的一个给定的高度向量,例如,(0,1,0)在同质屏幕空间坐标。