【发布时间】:2017-10-20 03:42:51
【问题描述】:
我正在尝试在加载了对象加载器的场景上使用细分修改器。尝试此操作时出现以下 javascript 错误:
“BufferSubdivisionModifier.js:514 Uncaught TypeError: Cannot read property 'array' of undefined”
我的代码如下加载带有细分修饰符的对象。
var loader = new THREE.ObjectLoader();
loader.load("../js/brain2.json", function(object) {
var material = new THREE.MeshPhongMaterial( { color: 0x888888, specular: 0x222222, shininess: 20} );
object.traverse( function ( child ) {
if ( child instanceof THREE.Mesh ) {
var modifier = new THREE.BufferSubdivisionModifier( 1 );
child.material = material;
child.geometry.computeFaceNormals();
modifier.modify( child.geometry );
child.material.overdraw = 1
};
});
object.scale.set(15, 15, 15);
object.position.x = 1;
object.position.y = 1;
object.position.z = 1;
object.rotation.set( 1, 1, 1 );
scene.add( object );
});
如果我不得不猜测,是细分修饰符不喜欢“child.geometry”对象吗?
【问题讨论】:
标签: javascript json three.js