使用 GLTF 加载器加载 gltf/glb 没有 textures/colors 问题

Loading gltf/glb without textures/colors issue using GLTF loader

首先 - 我是 Three.js 的初学者。通过创建这个问题,我想留下有关如何在加载的 gltf 模型没有纹理时解决该问题的信息。

const loader = new GLTFLoader();
loader.load(
    // resource URL
    // PVPanelDataURI,
    process.env.PUBLIC_URL + 'staticPresets/PVPanel.gltf',
    (gltf) => {
        this.scene.add(gltf.scene);
        console.log('gltf', gltf)
    },
    function(xhr) {
        console.log((xhr.loaded / xhr.total * 100) + '% loaded');
    },
    function(error) {
        console.log('An error happened: ', error);
    }
);

另外,我想去掉这个警告:

我将不胜感激。

这有很多原因。有时您甚至可以拥有损坏的 GLTF 文件。但是如果你很幸运那么你需要为你的模型创建光,一切都会好起来的!

const ambientLight = new AmbientLight(0xFFFFFF);
ambientLight.intensity = 4;
this.scene.add( ambientLight );

请注意,有时强度必须很重要,而光线应该不同。我用了

const spotLight = new THREE.SpotLight( 0xffffff );
spotLight.intensity = 10;
spotLight.position.set( 1000, 1000, 1000 );

能够看到我模型的黑色表面。此外,您可能需要在 canvas 上导航以查看差异。