Object not loading with JSONLoader in ThreeJS: Cannot read property 'visible' of undefined
Ad
I am trying to load an object model using the following code:
var loader = new THREE.JSONLoader();
loader.load('js/spacecraft.js', modelLoadedCallback);
function modelLoadedCallback(geometry) {
spacecraft = new THREE.Mesh( geometry, new THREE.MeshFaceMaterial(geometry.materials));
spacecraft.position.x = 0;
spacecraft.position.y = 0;
spacecraft.position.z = 0;
mesh.add(spacecraft);
scene.add( mesh );
}
Nonetheless, in every renderer.render(..) call I am getting the following error:
Uncaught TypeError: Cannot read property 'visible' of undefined
I have no idea about the error because both the mesh and spacecraft objects seem to be properly loaded when inspecting in the console.
Am I missing something with the JSONLoader?
Ad
Answer
Ad
I see what was happening: the model in spacecraft.js
had an empty materials
array for some reason... I need to find out the cause because I used NodeJS three-obj library for converting .obj to .JSON
Ad
source: stackoverflow.com
Related Questions
Ad
- → How to update data attribute on Ajax complete
- → October CMS - Radio Button Ajax Click Twice in a Row Causes Content to disappear
- → Octobercms Component Unique id (Twig & Javascript)
- → Passing a JS var from AJAX response to Twig
- → Laravel {!! Form::open() !!} doesn't work within AngularJS
- → DropzoneJS & Laravel - Output form validation errors
- → Import statement and Babel
- → Uncaught TypeError: Cannot read property '__SECRET_DOM_DO_NOT_USE_OR_YOU_WILL_BE_FIRED' of undefined
- → React-router: Passing props to children
- → ListView.DataSource looping data for React Native
- → Can't test submit handler in React component
- → React + Flux - How to avoid global variable
- → Webpack, React & Babel, not rendering DOM
Ad