Cocos3D 1.2.0 shadowMap问题?

是这样。
我们的项目中,需要物体阴影投射到另外的物体上,而非Planar。庆幸咱们1.2版本开始支持了。
但是我使用期间发现了一个现象,不确定是不是问题。


从现象看,如果场景阴影设置了shadowMap模式。灯的照射就会变成固定区域。因此阴影也只有该区域有阴影,
这就导致我开发时相机锁看到的不一定都有阴影(相机与灯光角度不同)。

所以目前就两个勉强可以的办法:
1.相机跟随主角,灯光跟随主角。。。。
2. OrthoSize设置超大(这现象更怪)

所以有些困惑到底该怎么用咱们的新版本阴影。麻烦引擎大大们告知。

附上demo
ShadowQuestion.zip (6.4 KB)

你好,非常感谢您使用 Cocos-v1.2 版本。我们在1.2版本开始支持 shadow map ,并在后续版本中推出阴影参数自动配置的操作方式。
不管是目前的手动配置,还是即将推出的自动配置,都在完成这样一个工作:

  • 修改OrthoSize使其边界包含 && 略微大于场景(这样整个场景就会产生阴影效果,且不需要灯光跟随人物)。
  • 修改near / far,使得主光源在深度上包含 && 略微大于场景深度(这样做能确保阴影能投在所有物体上)
  • 如果您的场景非常大(boundingBox.length >> 2000)就需要修改 shadow Map size (使得阴影效果保持正确,不至于走样)

问题分析

  • 需要设置 >= 场景边界大小的 OrthoSize ,500是很大了,会导致生成一张超级大的shadow map 而小球却只在这个map上体现了一像素,所以采样出来就走样了
  • 如果阴影显示不完整,需要将far调大一点
  • 如果场景很大,在均衡性能的前提下,需要提高shadow Map的分辨率(例如 10241024 20482048等等)

感谢回复。我会试试效果。希望cocos越来越好~

有大神教育下吗
底部用的平面 微信真机实测阴影这个样子 找了论坛都没人解决该问题

shadowmap 如果你要用 得到 3.4.2+的版本才行。最好是3.6.x 低版本底层实现的不太好。

我是用的3.6.1

太难受了 已经翻遍了论坛
现在是摄像机移动的话 立方体上莫名其妙会有闪动的阴影

有demo可以看下么



image
我刚刚直接新建了 然后就单纯加几个物体 构建去微信真机看

直接就这样 边边就好像破陋了


就微信小游戏真机会 网页是正常的

回复在你原帖子上了