首页 > 解决方案 > 渲染时的 THREE.js 对角线。showdow.bias 有帮助,但“castShadow”没有帮助

问题描述

screen_shot_showing_diagonal_lines

我的 THREE.js 项目正在渲染这些奇怪的对角线。我在网上搜索,发现问题是由于对象自身投射阴影造成的

虽然更改shadow.bias 属性确实有所帮助,但它还在投射阴影的对象和接收阴影的平面之间产生了间隙(“ peter-panning ”)。请注意,这里的定向光是我场景中唯一投射阴影的光源。

this.directionalLight.shadow.bias = -0.001

我想我可以通过在它正在读取的 json 文件中将地平面网格的“castShadow”属性更改为 false来解决这个问题,因此它不会在自身上投射阴影,但这似乎不会改变渲染中的任何内容。

"castShadow": false,
"receiveShadow": true

我想知道阴影投射属性是否设置在其他地方?或者问题根本不在于阴影(shadow.bias 有效,所以它应该是阴影问题)?或者可能有其他方法可以解决这个问题。

谢谢!

标签: three.jsrenderingshadow

解决方案


推荐阅读