首页 > 解决方案 > 为什么三个js阴影不平滑?

问题描述

我为定向光设置了阴影,阴影贴图大小为 2048,阴影偏差 -0.0001,阴影类型为 PCSoftshadow,但渲染的阴影看起来质量低下,不平滑且不正确(下图)。

在此处输入图像描述

我怎样才能使阴影更平滑?这是我的渲染阴影代码

    const dirLight = new THREE.DirectionalLight(0xffffff, 0.75);
    dirLight.color.setHSL(0.1, 1, 0.95);
    dirLight.position.set(-1, 1.75, 1);
    dirLight.position.multiplyScalar(30);
    this.scene.add(dirLight);

    dirLight.castShadow = true;
    dirLight.shadow.mapSize.width = 2048;
    dirLight.shadow.mapSize.height = 2048;

    const d = 80;
    dirLight.shadow.camera.left = -d;
    dirLight.shadow.camera.right = d;
    dirLight.shadow.camera.top = d;
    dirLight.shadow.camera.bottom = -d;
    dirLight.shadow.camera.far = 1000;
    dirLight.shadow.bias = -0.0001;

标签: three.js

解决方案


推荐阅读