飞机在自己身上投下阴影

时间:2017-12-01 20:26:38

标签: javascript three.js

我在Blender中创建了一个简单的网格,它只包含一个纹理平面。 Blender screenshot 我使用以下代码在three.js中导入它:

var texture2 = new THREE.TextureLoader().load('models/TexturesCom_Branches0030_1_S.png');
loader.load("models/plant.json", function (geometry, materials) {
    materials.forEach(function (material) {
        material.alphaTest = 0.5;
    });
    mesh = new THREE.Mesh( geometry, materials );
    mesh.customDepthMaterial = new THREE.MeshDepthMaterial( {
        side: THREE.DoubleSide,
        depthPacking: THREE.RGBADepthPacking,
        map: texture2,
        alphaTest: 0.5
    } );
    mesh.castShadow = true;
    mesh.receiveShadow = true;
    scene.add(mesh);
});

这就是网格在three.js中的样子:#1 #2

正如您所看到的,物体不仅在地面上投射阴影,而且在其自身投射阴影。 我可以关闭receiveShadow,但这对我来说不是解决方案。如果我手动创建THREE.PlaneGeometry,这个问题不会消失。

0 个答案:

没有答案