【问题标题】:Unity3d, baked shadows qualityunity3d,烘焙阴影质量
【发布时间】:2015-03-13 07:55:45
【问题描述】:
  • 更新:问题出在地板尺寸上。我只是把它变小了,问题就解决了。

您好,我已经用谷歌搜索了将近 1 周...希望您能帮助我。我烘焙了我的阴影,结果和所有需要的设置都显示在图片上。问题是树上的阴影质量比地面上的阴影好得多。你猜到原因了吗?

我只是让这棵树比其他树大,这样很容易看出问题...

(阴影质量设置为最高,渲染路径为延迟闪电)

【问题讨论】:

  • 会不会是因为Differed lighting和tree->tree shadow receiver比较近,而tree->ground shadow receiver比较远。
  • @Dinal24 尝试使用正向渲染,结果完全相同。 (在相机和播放器设置中更改)
  • 缩小地面对象会发生什么?如果这可以改善情况,也许您应该增加地面在光照贴图中的重要性。
  • @tea 当我把树变小时,地面上的阴影变得如此小而透明,以至于现在几乎可以看到了,哈哈。但是树上的阴影仍然是相同的质量。是的,这都是静态阴影,因为当我移除光线时,它们会留下来。

标签: unity3d light shadows


【解决方案1】:

减小地面对象的大小解决了这个问题。

这个工作的可能原因是每个对象的纹素预算受到光照贴图大小的限制,而不管用户定义的每单位纹素如何。例如,如果光照贴​​图为 2048x2048,地面为 2x2 公里,假设 1 个单位为 1 米,则每平方米大约有 1 个像素。

虽然此处并非如此,但当动态和静态阴影使用不一致的分辨率时,可能会观察到阴影之间的不一致。

【讨论】:

  • 你没看到吗,分辨率是 1000 texel?我刚才尝试了 100000 纹素,同样的图片。没看懂你的第二段。不,所有的阴影都是静态的,因为如果我移除它们会留下的光。 @茶
  • @DealWithMeal 我建议你让地面变小,而不是树。 100000 应该被限制为更小的值。所以,这个想法是,如果你有一个非常大的地面对象,你需要分散你的纹素预算,这样阴影质量就会降低。另外,不确定这是否是堆栈溢出的好问题,您可以在统一论坛上与我(eelstork)联系,我会考虑查看您的文件,这可能是解决此问题的更快方法。如果我们发现这可以重新格式化为一个不那么特殊的问题,我们可以稍后再回来更新。
  • 嘿,你真是个天才;地板的大小才是真正的问题:))
  • @DealWithMeal - 更新我的答案,因为我们知道问题所在。
猜你喜欢
  • 2013-02-20
  • 1970-01-01
  • 1970-01-01
  • 2016-01-04
  • 2011-12-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-05-21
相关资源
最近更新 更多