1

从 Google Blocks 加载一些 OBJ 我注意到一些面孔丢失了。我有平滑的阴影,但不能让缺失的面孔出现。想法?这是我当前的模板:

mtlLoader.load(mtlUrl, (materialLoader) => {
        materialLoader.preload();

        for (let material in materialLoader.materials) {
            materialLoader.materials[material].side = THREE.DoubleSide;
        }

        let objLoader = new THREE.OBJLoader();
        objLoader.setMaterials(materialLoader);

        let onSuccess = function (object) {
            var mesh = object.children[0];
            mesh.geometry = new THREE.Geometry().fromBufferGeometry(mesh.geometry);
            mesh.geometry.computeFaceNormals();
            mesh.geometry.mergeVertices();
            mesh.geometry.computeVertexNormals();
            mesh.geometry.center();

            this.group.add(object);                
        };

        let onProgress = function (event) {
            if (event.lengthComputable) {
                let percentComplete = event.loaded / event.total * 100;
                let output = 'Download of Object: ' + Math.round(percentComplete) + '%';
            }
        };

        let onError = function (event) {
            let output = 'Error of type "' + event.type + '" occurred when trying to load: ' + event.src;
        };

        objLoader.load(objUrl, onSuccess, onProgress, onError);
    });

神器:

SNES 错误

正确的:

SNES 正确

4

1 回答 1

1

以下拉取请求说明了缺失的面孔。

https://github.com/zerohun/three.js/blob/e9abb6f0fe5966178b1c0b64289ffa4df8b3be6a/examples/js/loaders/OBJLoader.js

于 2017-08-04T23:36:49.083 回答