I have this error message in the console:
TypeError: Cannot read property ‘index’ of undefined
at BufferGeometryLoader.parse (three.module.js:40525)
at Object.onLoad (three.module.js:40462)
at XMLHttpRequest. (three.module.js:36471)
my code is:
const loader= new THREE.BufferGeometryLoader();
meteor = loader.load("obj/meteor.json", function (geometry) {
geometry.computeVertexNormals();
geometry.scale( 1, 1, 1 );
const material = new THREE.MeshStandardMaterial();
meteor = new THREE.InstancedMesh( geometry, material, count );
meteor.instanceMatrix.setUsage( THREE.DynamicDrawUsage );
meteor.name = 'meteor';
scene.add( meteor );
});
const meteor = scene.getObjectByName('meteor');
function animate() {
requestAnimationFrame( animate );
const meteor = scene.getObjectByName('meteor');
if(meteor) {
for (i=0; i<amount; i++) {
var angle = Math.random()*Math.PI*2;
var d = Math.random()*300 + 1300;
var x = Math.cos(angle)*d;
var z = Math.sin(angle)*d;
var y = (Math.random()*100)-50;
var size = Math.random()+1;
meteor.rotation.y += 0.2;
meteor.position.set(x, y, z);
meteor.scale.set(size, size, size);
meteor.position.x = x;
meteor.position.z = z;
meteor.position.y = y;
scene.add(meteor);
}
}
controls.update();
composer.render(render);
}
function render() {
renderer.render( scene, camera );
}
if you can help me that would be nice. I have been struggling since yesterday