Comment puis-je tourner autour d'une scène en webgl sur mousedrag (imitant un mouvement de caméra autour d'une position)

Bon,
Donc j'ai lu depuis quelques heures et j'ai réussi à obtenir de la souris faites glisser pour travailler sur l'axe des x à l'aide de la matrice de calcul, mais pas de chance avec l'axe y:

newX = nouvelle souris X coord
previousX = souris X coord lors de la dernière mise à jour
position = position de la caméra
mvMatrix = modèle de matrice de vue ou de la 'matrice'

angle = 0.01*(newX-previousX);
rM = mat4.create();
mat4.identity(rM);

rM[0] = Math.cos(angle);
rM[2] = Math.sin(angle);
rM[8] = -Math.sin(angle);
rM[10] = Math.cos(angle);

mat4.multiplyVec3(
    rM,
    position,
    position
)

*Notez que ce n'utilise le glMatrix Bibliothèque (http://code.google.com/p/glmatrix/)

Et aussi dans le but de toujours faire face à la position 0,0,0

mat4.lookAt(
    position,
    vec3.create([0, 0, 0]),
    vec3.create([position[0], position[1]+1, position[2]]),
    mvMatrix
);

J'ai eu la matrice de http://en.wikipedia.org/wiki/Rotation_matrix
J'ai utilisé la matrice dans "basic rotations" et Ry

Je suis sûr que cela a été fait avant, toute aide serait aprécié.

Acclamations, Josh

Ne peut pas vous aider sur ce point, mais peut-être que vous pouvez obtenir des informations à partir de github.com/mrdoob/three.js

OriginalL'auteur Josh Mc | 2011-04-01