Je souhaite déplacer la lumière avec mon appareil photo. je l'ai écrit:three.js Mauvaise position de la caméra lors du déplacement de la lumière avec TrackballControls
scene = new THREE.Scene();
camera = new THREE.PerspectiveCamera(40, windowWidth/windowHeight, 1, 10000);
camera.position.z = 50;
scene.add(camera);
var dirLight = new THREE.DirectionalLight(0xffffff);
**dirLight.position = camera.position;**
dirLight.position.normalize();
scene.add(dirLight);
renderer = new THREE.WebGLRenderer();
renderer.setSize(windowWidth, windowHeight);
i_container.appendChild(renderer.domElement);
controls = new THREE.TrackballControls(camera);
controls.rotateSpeed = 1.0;
controls.zoomSpeed = 1.2;
controls.panSpeed = 0.8;
controls.noZoom = false;
controls.noPan = false;
controls.staticMoving = true;
controls.dynamicDampingFactor = 0.3;
controls.keys = [65, 83, 68];
controls.addEventListener('change', render);
Tout fonctionne: la lumière se déplace avec la caméra. Mais il y a un problème: quand la scène est en train d'initialiser la caméra est à l'intérieur de mon objet. Donc, je devrais zoomer pour voir l'objet entier.
Sans cette ligne - "dirLight.position = camera.position;" la scène s'initialise ok: je vois tout l'objet.
Pourriez-vous m'expliquer ce qui ne va pas? Je ne change pas la position de la caméra. Pourquoi suis-je à l'intérieur de l'objet?
Merci, Zhenya