Buduję aplikację, która pozwala użytkownikom przesyłać modele 3D w formacie obj/mtl. Administrator wyświetla podgląd tego, jak załadowany obiekt będzie wyglądał w naszej przeglądarce. Chciałbym zapewnić użytkownikowi możliwość ustawienia początkowej pozycji y załadowanego obiektu i początkowej pozycji z kamery. Mam już część z kamery, ale nie mam szczęścia z pozycją y. Mój kod:Dostęp Object3D załadowany przy użyciu OBJMTLLoader
var obj3d;
loader.load(model_obj, model_mtl, function (object) {
object.position.y = y_init;
scene.add(object);
render();
obj3d = object;
$('#initial_y').change(function() {
obj3d.position.y = $(this).val();
});
}, onProgress, onError);
Problem wydaje się, że gdy jestem poza funkcją load
odniesienie do Object3D
nie jest już dostępny. Powyższy kod zawiera błąd javascript:
Cannot access property 'position' of undefined.
Każda pomoc jest bardzo doceniana!
Wygląda na to, że jest to problem z zasięgiem kodu jQuery. – mrdoob
Czy błąd dotyczy "object.position" lub "obj3d.position"? – gaitat
@gaitat Błąd odnosi się do 'obj3d.position'. Pokazuje się, gdy zmieniono wpis "# initial_y". – Vince