Según
leo el formato MD5Anim guarda las rotaciones en forma de quaternion, pero sin la componente w que se calcula asin:
float term = 1.0f - (x*x) - (y*y) - (z*z);
float qw;
if (term < 0.0f)
qw = 0.0f;
else
qw = - (float) sqrt(term);
Mi "question" es;
¿ese "-" (menos) que ponen en la ultima linea es obligatorio?
Lo pregunto pq si lo pongo mi visor saca mal el modelo (estilo yoga a lo bestia), y si no lo saca bien.... <_<
Lo cierto es que yo sí tuve que poner eso en el importador MD5->MAX que hice. De lo contrario los bones se descontrolaban.
En cualquier caso, si quitando el signo '-' te funciona pues adelante. Yo dentro de poco (si todo va bien) estaré con esa parte con el visor que estoy haciendo así que ya te contaré.
Por cierto, ¿estás utilizando Direct3D u OpenGL?.
Saludos.
Por ahora, al cargar el md5mesh, a la hora de calcular la componente w del quaternion, utilizo exactamente el mismo código que has puesto y funciona perfectamente (con el signo '-'). Supongo que con la animación será igual. Todo esto utilizando Direct3D.
Saludos.
Gracias por la ayuda Bersk. (ole)
You're welcome :lol: