Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Asset Manager

Iniciado por blau, 08 de Enero de 2012, 09:19:58 PM

« anterior - próximo »

blau

Buenas,

esta semana he retomado un editor de sprites que estaba haciendo y le he dado un pequeño avance...

como siempre se me ha ido la olla y me he metido en más de lo que que me había planteado...

mi intención era integrar un sistema esqueletal de transformaciones 2d, con interpoladores para posición, rotación y escalado,  más unos interpoladores de color y de frame actual, y hacerlo independientemente del framework xna, y de estar forma crear un package con el spritesheet y las animaciones que le afecten de forma independiente.

Casi todo lo tenia hecho de un proyeto anterior... pero se me vino a la mente la idea de deformar un sprite usando el sistema esqueletal, es decir, si triangulizo un sprite, aplicarle las transformaciones a esos vertices por separado, vamos, haciendo blending de transformaciones por vertice.

El tema es que lo he implementado, pero no me termina de convencer, y creo que hay dos motivos:
   1. Para interpolar uso las transformaciones absolutas de los bones, debería hacerlo de forma relativa
   2. Asigno el mismo peso a todos los vertices influenciados por un bone.

No soy mucho ducho en editores 3D y no se como lo hacen, pero me imagino que tendrán que solucionarlo de una manera parecida.

Mi primer proposito es atacar el punto 1, pero no se como atacar el punto 2...

Aquí dejo un enlace a mi ultima build del proyecto. Tienes que clickar el botón de animaciones para mostrar la parte que estoy desarrollando actualmente.

Seguramente cascará.. y no se pueden añadir bones ni imágenes todavía... porque me he centrado en la funcionalidad.

En el árbol se pueden ver distintos tipo de bones:

   Normales:
   Imagen: Muestran un sprite.
   Influencia: Es un bone que inlfuencia a una imagen y tiene un nodo shape asociado
   Shape: Permite seleccionar los vertices de la imagen influenciados por el bone de influencia asociado al bone imagen.

   En el shape es donde tengo que cambiar los pesos... pero no se me ocurre algo que pueda hacerse de forma gráfica...umm...
  salvo alguna especie de puntos de fuerza con un radio de accion y un ratio de atenuacion....
  Aunque intuyo que haciendo las influencias de forma relativa mejorará bastante.

También si alguien tiene un rasterizador de triangulos para winforms me vendría muy bien... :)


blau

Bueno, he consultado con la almohada, y no he cambiado mucho, simplemente he organizado mejor las transformaciones, porque las otras ideas aunque a la hora de trabajar seguro que son mas intuitivas, a la hora de codificarlas añaden una complejidad que no me apetece desarrollar...

El caso es que hace lo que quería... he actualizado el enlace con la ultima versión... solo hay que rotar el "Bone 2" para ver la transformación de la malla del sprite.

Esta noche colgare un vídeo. ;)

Aunque lo que me sigue faltando es un rasterizador de triángulos 2d para winforms... que ya les vale a los chicos de ms.

blau

Ahí va el vídeo ....

http://www.youtube.com/watch?v=-jmV73tl_7g

Dentro de lo que cabe hace lo que quería... la pena es que no es facil texturizar los triángulos en winforms... y de momento no me merece la pena ponerme a currarme un rasterizador... entre otras cosas porque a través del gdi y en software supongo que iría matado...

en fin ... ya se verá dijo el ciego...

Un saludo

Vicente

Como te gustan las tools :) Muy chulo el video la verdad.

XÑA

Qué chulo!!!!  Se pueden hacer cosas muy interesantes con bones en 2D  :P

blau

@Vicente: Es lo mio... a ver si empujoncito a empujoncito consigo unificar todo... :)

@Xña: La verdad que si... :)

Saludos...

Hechelion

Pues se ve bastante bien, felicitaciones

blau


jmtu

Me sumo a todas la felicitaciones que te están llegando. Me gusta, estoy viendo como ha chocado el coche contra la cabina..

blau

Puff... temo que para que un coche choque, si que falta mucho...  ^_^'

Un saludo


Vicente

Mola mucho si señor :) Tuitealo hombre con los tags de XNA que seguro que lo ve mas gente!

flipper83

Es la puta ostia!!! se sale!!
un cobarde forero en el tanatorio al mes sería un placentero trofeo digno de merecer

jmtu

Bueno, considera que por ahora es el coche invisible del señor invisible en la ciudad invisible contra la cabina que NO es invisible....uff, sin comas.
  Esto es el generador de sprites, ¿no? El coche ya llegará con el juego...quien dice coche dice tipo enorme que juega a rugby y no se ha dado cuenta de que se ha salido del campo de juego.
En serio, se ve espectacular.

XÑA


blau

Gracias por los ánimos...  ;)

Cita de: jmtu en 18 de Enero de 2012, 07:36:33 AM
  Esto es el generador de sprites, ¿no?

Si, es la siguiente evolución, la ide es facilitar el manejo de sprites al máximo, tanto para animación tradicional como para animación skeletal.

El lo que tiene no ser artista, que tengo que suplirlo con estas cosas... :D






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.