首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用镜子追踪场景中的影子射线

用镜子追踪场景中的影子射线
EN

Computer Graphics用户
提问于 2017-05-03 19:43:39
回答 1查看 604关注 0票数 3

我的实时射线追踪器中,我从眼睛发射初级光线,在命中点,我追踪到一个单一的光源,以确定物体是被阴影还是被照亮。

到目前为止还挺直接的。然而,我最近为我的场景添加了完美的镜子。反射效果很好。

然而,阴影计算失败了!

阴影点仍然可以通过镜子被光源照亮。

有没有一种简单的方法来处理反射光的阴影射线?

注:我指的不是在镜子表面可见的投影:这是阴影和发光的物体。但直接可见的场景本身,有更多的阴影物体,比应该有,因为其中一些场景是通过镜子照明。

EN

回答 1

Computer Graphics用户

回答已采纳

发布于 2017-05-04 00:36:54

这取决于你如何定义简单,以及你有什么样的约束。一般情况下,这是渲染刻薄,但这可能不是你要寻找的,如果实时是你的目标。

如果你的镜子总是平的,在你的演示中,你只想支持一个单一的反弹,我能看到的最简单的是反射你的光源在镜子的另一边的平面,在你开始一个框架。让我们称每个反射为虚拟光源。然后,对每一个,测试光线之间的阴影和虚拟光源之间的镜子(简单的平面/射线测试)。如果它真的击中,那么你跟踪的实际阴影射线到镜子,其余的影子射线从镜子到实际光源。

这显然不能很好地扩展到许多镜子。我认为,如果镜面和光线计数低,它可以适应2-3次的反弹。不过,虚拟灯的数量可能很快就会失控。

票数 5
EN
页面原文内容由Computer Graphics提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://computergraphics.stackexchange.com/questions/5057

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档