gpt4 book ai didi

c - 了解光线转换方法

转载 作者:行者123 更新时间:2023-11-30 20:21:51 26 4
gpt4 key购买 nike

出于学校的目的,我正在学习如何用 C 语言进行光线转换。

根据本教程我发现 http://permadi.com/1996/05/ray-casting-tutorial-7/ ,作者解释了他找到 deltaX 和 deltaY 的方法,以检查基于 deltaX 或 deltaY 的位置是否存在墙。

但是他通过角度 a 的正切得到 deltaX 和 deltaY,并且不适用于 0、pi/2、pi 和 3pi/2。

这样的解决方案如何工作?我错过了什么吗?

最佳答案

在 0 和 pi 处,搜索水平交点是没有意义的,因为射线是水平的。您需要明确检查这种情况。

在 pi/2 和 3pi/2 处,正切是无限的,因此 1/tan() 应该通过 float 学给出零。即使看起来很丑它也会起作用。

对于垂直交叉点,将角度移动 pi/2,同样的推理也适用。

关于c - 了解光线转换方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41302926/

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