Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/403.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 三.js“;无法读取属性';设置';“未定义”的定义;遍历由';o';标签_Javascript_Three.js - Fatal编程技术网

Javascript 三.js“;无法读取属性';设置';“未定义”的定义;遍历由';o';标签

Javascript 三.js“;无法读取属性';设置';“未定义”的定义;遍历由';o';标签,javascript,three.js,Javascript,Three.js,我试图在运行时更新对象的颜色。在我将对象文件替换为.obj文件中有“o”标记的文件之前,一切都很顺利 现在,我在控制台中收到这个 这是我的密码 var mtlLoader = new THREE.MTLLoader(); mtlLoader.setPath( 'obj/Nissan/' ); mtlLoader.load( 'nissan-gt-r-nismo-1.mtl', function( materials ) { materials.preload(); var o

我试图在运行时更新对象的颜色。在我将对象文件替换为.obj文件中有“o”标记的文件之前,一切都很顺利

现在,我在控制台中收到这个

这是我的密码

var mtlLoader = new THREE.MTLLoader();
mtlLoader.setPath( 'obj/Nissan/' );
mtlLoader.load( 'nissan-gt-r-nismo-1.mtl', function( materials ) {

    materials.preload();

    var objLoader = new THREE.OBJLoader();
    objLoader.setMaterials( materials );
    objLoader.setPath( 'obj/test/' );
    objLoader.load( 'lol.obj', function( object ) {

        object.scale.set(100,100,100);
        object.traverse( function( child ) { 
            if ( child instanceof THREE.Mesh ) { 
                child.material.color.set(0xffffff); //this.
                console.log(child.material.color); // also, this is returning 'undefined'
            }    
        } );
    scene.add( object );
    });
});
另外,
console.log
返回“undefined”,好像找不到材质的颜色属性一样

我做错了什么? 如何遍历“o”标记并找到material.color属性

编辑: 我能找到的关于对象材质的所有信息如下:


不,颜色属性。我应该如何找到它或遍历“o”标记来找到它?

您可以查看
console.log(child.material)并查看材质类型和其他属性。没有颜色属性。这就是我要问的,如何遍历“o”对象的子节点,以便找到
color
属性。您在控制台日志中得到的是什么类型的材质?刚才在问题中提到过。希望有帮助@Prisoner849使用
for
forEach()
循环将有助于在材料阵列中运行。