Je souhaite pouvoir faire pivoter un quadruple à partir du centre. Pour ce faire, je suis, procédez comme suit:Tampon de traduction après rotation
- Traduire en (0, 0)
- faites pivoter
- revenir au point de destination
Je suis coincé au point trois. Quand j'ai fait pivoter la matrice, je veux la déplacer d'un point vers la droite par rapport à l'écran, mais elle se déplace d'un point vers la droite par rapport à la rotation à la place.
Voici mon code:
var moveBackX = ((-usedSprite.originX)/usedViewWidth);
var moveBackY = (((usedSprite.originY)))/usedViewHeight;
//The translation is already at (0, 0, 0)
mat4.rotateZ(mvMatrix, mvMatrix, rotation);
mat4.translate(mvMatrix, mvMatrix, [(moveBackX)/scaleX, moveBackY/scaleY, 0.0]);
mat4.translate(mvMatrix, mvMatrix, [((xPos)/scaleX), (-(yPos)/scaleY), 0.0]);
Comment puis-je résoudre ce problème?