【问题标题】:How to calculate the height of object when render to screen?渲染到屏幕时如何计算对象的高度?
【发布时间】:2013-04-22 17:22:48
【问题描述】:

我正在开发一个 C++ 项目,我想将一个 3D 对象(一个字符)渲染到屏幕上。

通过API可以得到这个物体的高度,等于1.6666,不知道是什么意思。

我知道由directX(SCR_W,SCR_H)设置的视口,正交投影矩阵(由directX API创建,参数:视图宽度,视图高度,近和远)。

当这个对象被渲染到屏幕上时,我能得到它的正确高度吗?

感谢您的帮助。

【问题讨论】:

  • 你想要高度的单位是多少?

标签: c++ direct3d


【解决方案1】:

坐标 [0, 1.6666] 将乘以 Orthographic 投影矩阵得到齐次坐标([-1, -1] 是屏幕左下角, [1, 1] 是右上角)。然后将其乘以视口尺寸 / 2 得到最终的屏幕坐标。

听起来您的正交投影已创建为与屏幕分辨率匹配。这意味着 1.6666 将对应转换后的 1.6666 像素。

【讨论】:

    猜你喜欢
    • 2018-05-02
    • 1970-01-01
    • 1970-01-01
    • 2017-02-12
    • 2013-12-02
    • 1970-01-01
    • 2023-04-07
    • 1970-01-01
    • 2011-08-10
    相关资源
    最近更新 更多