【问题标题】:Three.js - strange shading behaviourThree.js - 奇怪的着色行为
【发布时间】:2017-09-23 08:15:33
【问题描述】:

左边立方体的垂直阴影是从哪里来的?

https://jsfiddle.net/yz0sfr35/

//I'm using:
renderer.shadowMap.type = THREE.BasicShadowMap;

【问题讨论】:

  • 你说的是左边(镜)框的红色表面吗?
  • 是的。左边是一个红色的盒子,它接收来自中间盒子的阴影。灯在右上角。
  • 红色不是阴影而是背景。在中间盒子的反射下方,您可以看到“地板”,在它结束后,“空隙”被涂成红色 - 盒子的颜色。
  • 红色是左边方框的颜色。黑色是阴影。左侧框的底部 2/3 位于中间框的阴影中。不明白左上角三分之一的黑色方块是哪里来的(看上图)。
  • 嗯,有趣的是,如果您将 cub1 在 x 或 y 轴上移动 1px,它似乎会消失。

标签: three.js shadow


【解决方案1】:

您看到的是阴影中的像素化,因为您的阴影相机截头锥比您的场景大几个数量级。

在您的情况下,一种解决方案是减少聚光灯的角度:

light.angle = Math.PI / 180;

在场景周围保持阴影截头体紧密,以获得高质量的阴影。

https://jsfiddle.net/yz0sfr35/2/

three.js r.87

【讨论】:

    猜你喜欢
    • 2013-07-27
    • 2013-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-23
    • 2011-12-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多