查看: 2492|回复: 2

OSG中阴影贴图的问题。

[复制链接]

该用户从未签到

发表于 2008-7-7 12:13:51 | 显示全部楼层 |阅读模式
在项目中发现了阴影贴图的问题,所以构建了一个简单的场景果然这个问题很严重。

场景里面只有4个节点。

一个灯光节点,照射普通灯光用来投影。

3个模型节点。 一个地板,一个墙壁。这两个为接受阴影物体。还有一个就是投影物体一个圆球。

问题就是:圆球把影子很正常的投射到了墙壁上。但是穿过墙壁,在墙另一边的地板上也同样有一个圆球的投影。

墙上投影和地板上的投影都是正确的。

按照常理来说,影子不能穿墙,墙另一面的地板上是不能有影子的。

如何解决这种问题。

该用户从未签到

发表于 2008-7-7 13:04:07 | 显示全部楼层
OSG不会主动去判断投影是否被别的物体遮挡,因为这样做无疑会大大加重图形开发库的负担(每次都需要遍历整个场景树)。所以还是自己研究方法来解决的好。
我能想到的最直接的办法是:地板被墙壁分成很多块,不同的房间以不同的地板块为投影对象。如果是做家居漫游的话,我想性能上应该没有太大的问题,仅供参考

该用户从未签到

 楼主| 发表于 2008-7-7 13:33:12 | 显示全部楼层
BZ的解决办法很直接很实用,谢谢。
  依照这种办法来做,问题能够解决。

  已实现于代码中,谢谢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表