I’m really new to three.js and animation in general, so apologies if the question doesn’t make sense here.
So I have a sequence of frames, where for each frame I have a 3D coordinates of a single human body (e.g. left eye, right eye, left shoulder etc). I’d like to have an animated character to move based on the coordinates provided.
Seem like we i need to do is to compute and assign the rotation
attribute to the Object3D (which is returned from currentVrm.humanoid.getBoneNode
) and on the doc it says it’s euler angles. After some readings on euler angles, they are a sequence of angles that you apply one after the other (so subsequent rotations is based on the previous frame) to get to a certain position. But what im really confused about is,
- the rotation attribute has
x
,y
,z
instead of theta, phi, psi e.g. are they the euler angle as how i understood? - if so, i only have the coordinates (i suppose in the base three.js frame i.e. y points up, x points to right of screen and z comes out of screen) for human body parts e.g. left eye and right eye, etc, how can i compute the euler angle and assign it to the Object3D?
- if not, what exactly are them then? are they simply the angle between the vector (e.g. left eye=(1.5, 2, 0.4)) and the x, y and z axis?
thanks!