光线跟踪

lhb_976 2005-05-30 10:12:36
求助 光线与长方体相交原理及算法
...全文
117 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
summer54 2005-05-31
  • 打赏
  • 举报
回复
你问的是不是光线与物体表面的求交算法?

光线与物体表面的求交算法:
一束光线可以由出事位置P0和单位向量u来描述,沿光线方向离P0距离为s的任意点P的坐标,可以由光线方程表示为:
P = P0 + su
其中单位向量u可以由投影参考点和象素的位置得到:
Ppix - Pprp
u = ——————
|Ppix - Pprp|
每次光线与物体相交时,向量P0和u由交点处的从属光线更新。

为了计算表面交点,可以联立求解光线方程和场景中各物体表面的方程。

对于长方体,可用包围体进行求交测试以加快绘制速度。

假设找到了物体的“前”表面。设N为该面的法向量。该面方程Ax+By+Cz+D=0
则:
N*(P0 + su) = -D
求出    D + N*P0
  s = ————
   N*u
这样得到了多边形所在平面的一个点,但该点不一定在多边形边界内,因此还必须测试来确定光线是否与多边形的该表面相交。
寻开心 2005-05-30
  • 打赏
  • 举报
回复
www.google.com 上搜索 raytrace box Intersection 你可以找到很多
这里是一个
http://www.siggraph.org/education/materials/HyperGraph/raytrace/rtinter3.htm

8,303

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧