Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

THREE.TrackballControls rotation center

I have 1 object on scene and want to rotate it relative to its axis. I use THREE.TrackballControls. But when my object in not in the center of screen, rotation is bad (it is rotating relative to center of screen). I tried to change camera position before creating controls. But it did not work.

    var scene = new THREE.Scene();
    var camera = new THREE.PerspectiveCamera(75, 1, 0.1, 1000);
    camera.position.z = 3;
    camera.position.y = 10;

    controls = new THREE.TrackballControls( camera );

Is it possible to specify the center of camera rotation in TrackballControls? (So object will rotate not relatively center of scene)

Thanks, Zhenya

like image 717
Zheden Avatar asked May 29 '13 09:05

Zheden


1 Answers

TrackballControls is rotating the camera, not the object.

You can set the controls.target like so:

controls.target.set( x, y, z );

three.js r.58

like image 75
WestLangley Avatar answered Sep 20 '22 12:09

WestLangley