Je suis en train de charger des modèles obj, voici le code (CoffeeScript)OBJ modèle ne se charge pas dans Three.js
loader = new THREE.OBJLoader manager
if loadedModels.diamondRing == null
loader.load "obj/diamond/ring1.obj", (object) ->
object.traverse (child) ->
if child instanceof THREE.Mesh
child.material = silverMaterial.clone()
object.position.y = 10
object.scale.x = object.scale.z = object.scale.y = config.p1.size*0.05
object.userData.ring = true
combine.add object
loadedModels.diamondRing = combine.clone()
loader.load "obj/diamond/diamond1.obj", (object) ->
object.traverse (child) ->
if child instanceof THREE.Mesh
child.material = silverMaterial.clone()
object.position.y = 10
object.userData.diamond = true
object.scale.x = object.scale.z = object.scale.y = config.p1.sizeDiamond*0.075
combine.add object
Mais je pris exception:
Uncaught TypeError: Cannot read property 'clone' of undefined obj.js:93
où obj.js - TROIS .OBJLoader.
en ligne 93 placé Add_Face fonction:
function add_face(a, b, c, normals_inds) {
if (normals_inds === undefined) {
geometry.faces.push(face3(
vertices[ parseVertexIndex(a) ] - 1,
vertices[ parseVertexIndex(b) ] - 1,
vertices[ parseVertexIndex(c) ] - 1
));
} else {
geometry.faces.push(face3(
vertices[ parseVertexIndex(a) ] - 1,
vertices[ parseVertexIndex(b) ] - 1,
vertices[ parseVertexIndex(c) ] - 1,
[
-- line 93 --> normals[ parseNormalIndex(normals_inds[ 0 ]) ].clone(),
normals[ parseNormalIndex(normals_inds[ 1 ]) ].clone(),
normals[ parseNormalIndex(normals_inds[ 2 ]) ].clone()
]
));
}
}
Je pense que problème dans Normales, mais je ne sais pas où exactement. problème de modèle de lecture est arrivé sur la dernière ligne, comme ceci:
f 6802//6802 6803//6803 6804//6804
Si dans le modèle obj supprimer les lignes affectées:
Dans le modèle de l'éditeur 3D une apparence normale. Peut-être quelqu'un a fait face à un tel problème.
Savez-vous quel modèle est le problème? Avez-vous essayé de charger le modèle (sans faire la mise à l'échelle et d'autres choses)? Avez-vous essayé avec javascript standard? Quel programme 3D utilisez-vous? Exportez-vous le .obj du programme 3d ou faites-vous une sorte de conversion? – 2pha