• Viernes 8 de Noviembre de 2024, 19:50

Autor Tema:  animacion 3d  (Leído 2324 veces)

satmon

  • Nuevo Miembro
  • *
  • Mensajes: 12
    • Ver Perfil
animacion 3d
« en: Miércoles 9 de Junio de 2010, 14:04 »
0
Hola a todos, acabo de terminar un exportador de blender para archivos maj que es un formato que inventé para cargar los modelos animados en un motor de juegos que estoy desarrollando.

Tengo las matrices de transformacion para cada hueso, las matrices offset, y las frame matrices.

Pero no se como convinarlas para que aplicadas a un vertice este siga el movimiento del hueso ni si quiera se que significan cada matriz.

me ayudan??

diego.martinez

  • Miembro MUY activo
  • ***
  • Mensajes: 297
    • Ver Perfil
Re: animacion 3d
« Respuesta #1 en: Lunes 19 de Julio de 2010, 11:53 »
0
buenas:

lo que tu necesitas se llama skinning , tienes ejemplos por internet. Pero grosso modo es que guardes los bones de forma jerarquica junto con los pesos de cada vertice. Despues por cada bone calculas la matriz definitiva y la aplicas sobre todos los vertices multiplicado por el peso del vertice.
Eso para hacerla por software, lo que no recomiendo, ya que hay shaders que se encargan de todo.

satmon

  • Nuevo Miembro
  • *
  • Mensajes: 12
    • Ver Perfil
Re: animacion 3d
« Respuesta #2 en: Lunes 19 de Julio de 2010, 13:53 »
0
Muchas gracias, lo que pasa es que no todas las tarjetas soportan shaders, y trato que las aplicaciones corran en todas partes, además que por shaders el numero de matrices es muy limitado,  y el máximo numero de influencias por vértice es 4, la matriz que buscaba era la inversa de la matriz del hueso en reposo multiplicada por la matriz del hueso cuando es animado. Ya domine la animación, ahora voy por detección de colisiones.