Page 1 of 2
Animacion flash

Posted:
Wed Oct 31, 2012 10:52 pm
by shao
Hola, en los juegos con animaciones hechas en flash, quiero decir que se mueven como por huesos, como se usa algo asi en gemix?, como consigo esas animaciones en gemix? ya que gemix no aguanta archivos flash o animaciones flash.
Tampoco creo que haya que extraer frame a frame esas animaciones, si no serian demasiados frames.
Entonces lo que pregunto es, como reproduzco una animacion de flash en gemix?, no se como funciona muy bien flash pero creo que para hacerlo se necesitaria compatibilidad con flash?.
Se habilitara esa compatibilidad mas adelante?.
Re: Animacion flash

Posted:
Wed Oct 31, 2012 11:09 pm
by kozka
es un poco como o que esta haciendo erkos, pero sin las fisicas que se a empeñado en añadirle XD.
Re: Animacion flash

Posted:
Wed Oct 31, 2012 11:27 pm
by shao
Entonces los juegos que se ven habitualmente con animaciones flash tampoco son necesariamente compatibles con flash?.
Es decir para crear una de esas animaciones, no hay que usar flash? una vez creada con flash, por ejemplo la animacion de correr, pues obtienes un archivo con esa animacion que luego desde tu engine reproduces, no es asi como lo hacen los juegos que salen ultimamente con esas animaciones?.
Re: Animacion flash

Posted:
Wed Oct 31, 2012 11:33 pm
by GINO
Es difícil de incluir eso. Recuerda que Gemix usa sprites y flash dibujos vectoriales (aunque permite imágenes también). Básicamente si quieres usar gráficos vectoriales no se puede por ahora. Si te interesa más lo de la animación, aunque sea con sprites, básicamente tienes que trocear los gráficos en partes según quieras que se articulen y luego implementar un sistema que use keyframes. Digamos que quieres que en el momento 1 las partes estén en tal posición/rotación/escala/etc. y en el momento 2 estén en otra posición (dependerá de la animación, por ejemplo el momento 1 es en el tiempo 0 de la misma y el momento 2 es en el segundo 1). Luego teniendo las posiciones de los fotogramas clave, las posiciones intermedias las calculas con interpolación (puedes usar el módulo tween para ello).
Lo de los huesos ya facilitaría la edición sobre todo, pero una vez hecha ya no son necesarios (ya que la animación estará predeterminada) a no ser que quieras físicas (la animación se crea sobre la marcha según las variables de la simulación física).
Re: Animacion flash

Posted:
Wed Oct 31, 2012 11:46 pm
by shao
Entiendo, mas o menos, pues es algo que esta muy en boga sobretodo para dispositivos moviles asi que creo que se deberia ver de implementarlo, me refiero a poder reproducir esas animaciones en graficos vectoriales, si no entonces tenemos que prescindir de esa modalidad de animacion? y tirar a pixels o 3d si o si, sin contar la animacion por huesos por que eso es algo que no seria muy necesario si se pudiesen reproducir dichas animaciones.
A parte si alguien que trabaja normalmente con vectores y ese tipo de animaciones se acerca a gemix y ve que no hay soporte para eso, mmm puede tirar para atras y a nosotros los usuarios tambien, si quisieramos usar ese tipo de animacion.
Dices que es dificil pero bueno, nadie dijo que hacer un gran producto sea facil, no?.
Re: Animacion flash

Posted:
Thu Nov 01, 2012 10:14 am
by erkosone
Cuando GINO dice que Gemix no soporta gráficos vectoriales no está diciendo que no se puedan usar, solo dice que por ahora y por parte del Gemix Team no se da soporte, pero claro.. si lo quieres usar solo tienes que mirar como son esos archivos y cargarlos en gemix, te haces 4 funciones que interpreten la información y ya está, por poderse usar claro que se pueden usar.
El tema es sencillo, documentarse sobre un formato de imagen vectorial concreto, estudiarlo y hacer una función que lo carge, si son gráficos estáticos está tirado, si son animados tiene un poco mas de curro pero no mucho mas.
Sinceramente, y para que nadie se llame a engaños, TODO el motor de física del programa que estoy haciendo se reduce a SOLO 2 FUNCIONES, una es la clase vector de C++ y la otra es la famosa CONSTRAINT(), con eso lo haces todo, desde montar el esqueleto hasta hacer que los huesos queden perfectamente integrados, solo hay que montar un process que ejecute una lista de constraints sobre un array de objetos tipo vector.
En que en verdad no tiene misterio ningúno, esto no hay que verlo como algo oscuro y maligno que solo los mas listos pueden manejar, es algo tan sencillo como todo lo demás, solo es tener el concepto claro y usarlo.
A gemix solo le falta una primitiva gráfica para poder cargar un archivo de imágen vectorial, las famosas curvas de bezier o como se llamen, creo que todo lo demás ya lo hace.
En serio Shao, cargar una imagen vectorial y trabajar con ella en Gemix no es complicado, sería la leche que el lenguaje tuviera un set de funciones nativas para usarlas y cargarlas.. pero también seamos realistas, no es algo que tenga que hacer un genio, lo puede hacer cualquiera.
Cual sería el formato idoneo para usar en Gemix sin pagar royalties a empresas por usar sus formatos? existe algún formato vectorial libre? yo es que no tengo ni idea de que formatos son ni si se pueden usar libremente, pero vaya, que todo es ponerse a mirar que hay y entre todos hablar sobre el tema y sacar unas sencillas funciones que los cargen e interpreten.
De verdad que es algo mas sencillo de lo que parece, supongo que teniendo las herramientas necesarias "que gemix ya tiene" como las primitivas gráficas se puede hacer sin mucho dolor de cabeza, a lo único que le tengo miedo de verdad es que Gemix no tiene funciones de filling y eso puede que si sea un gran dolor de cabeza programarlo, se que hay un sistema, pero es recursivo y nunca llegué a dominarlo en gemix.. sería volver a intentarlo haber..
Bueno pues eso.. que formato vectorial sería el aconsejable usar en Gemix? por que usar animaciones de flash suena como muy global, de que formato hablamos?
Re: Animacion flash

Posted:
Thu Nov 01, 2012 11:19 am
by GINO
Hacer una librería de primitivas gráficas vectoriales como dios manda no es para nada fácil. Es más, sugeriría que se usase algo existente y se hiciese un módulo. Ya lo tengo analizado desde todos los puntos y no es fácil.
Re: Animacion flash

Posted:
Thu Nov 01, 2012 11:31 am
by erkosone
Haber claro, es ponerse y tirarse un tiempo hasta que funcione todo, es lo que dices, si hay una ya hecha lo mejor es adoptarla.
Tiene bastante trabajo si, sobre todo por que nadie se va a limitar a hacer lineas y circulos XD.. en cuanto se empiezan a anidar objetos con deformaciones.. que dolor..
Bueno vale.. en este caso si que acepto la palabra difícil como valida

por que realmente es como hacer un motor 2d completo solo para esto.
Re: Animacion flash

Posted:
Thu Nov 01, 2012 11:48 am
by GINO
Es ponerse, tirarse un tiempo largo y seguramente para que no sirva, porque tiene que estar optimizado al máximo sino va a ser lento e inservible.
Una librería de esas características tiene muchas cosas y conceptos detrás, no es hacer lineas bresenham y listo. Por ejemplo si quieres hacer una polilínea con grosor 8px y estilos de cap end y join particulares y al mismo tiempo que este rellena de un degradado circular el cual esté transformado geométricamente (escala/rotación), y al mismo tiempo que la primitiva este rotada en su espacio de coordenadas. Ah y que tenga antialias...
Eso solo para una polilínea. Si consigues hacerlo lo suficientemente rápido como para que se puedan meter más primitivas entonces me callo, pero me parece que no has analizado ninguna de esas libs en profundidad como para decir que no es difícil. Puedes mirar las especificaciones de svg o de OpenVG para hacerte una idea de lo que tiene que implementar una librería así.
Re: Animacion flash

Posted:
Thu Nov 01, 2012 12:03 pm
by erkosone
Lo he estado mirando "por encima la verdad" y me ha entrado susto, tienes mas razón que un santo, es bastante trabajo, y sobre todo el montar todo lo necesario solo para empezar..
"Supongo" que habrá alguna lib que de soporte a SVG que se pueda usar?