gpt4 book ai didi

math - 反向透视投影

转载 作者:行者123 更新时间:2023-12-01 01:38:01 26 4
gpt4 key购买 nike

我正在使用

worldview_inverse * (projection_inverse * vector)

将屏幕空间坐标转换为世界空间坐标。
我以为
(x,y,1,1)

将转换为远平面上的一个点,而
(x,y,-1,1)

转换为近平面上的一个点,并连接线我可以查询与该线相交的视锥体中的所有对象。
转换后,我将结果点除以它们各自的 .w 分量。
这适用于远平面,但近平面上的点以某种方式转换为世界空间原点。

我认为这与我在逆投影中输入的 1 的 w 分量有关,因为通常它在投影之前是 1,而不是在投影之后,而我正在做反向投影。我究竟做错了什么?

最佳答案

我知道这只是一种解决方法,但是您可以仅使用远点和查看位置来推断近平面点。

near_point = view_position
+ (far_point - view_position) * (near_distance / far_distance)

至于你真正的问题。首先,不要忘记除以W!此外,根据您的投影矩阵,您是否尝试过 (x,y,0,1) 而不是 z=-1。
near_point = worldview_inverse * (projection_inverse * vector)
near_point /= near_point.W

关于math - 反向透视投影,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/592699/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com