Personaje modular

Started by Danielo515, October 01, 2010, 08:37:22 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Danielo515

Si, ya se que la ayuda que pido es para el mismo proyecto, pero el tema es muy distinto.
Quiero hacer un personaje modular, es decir, que cada parte del cuerpo tenga cierta independencia del resto. Quiero que las piernas puedan ser más grandes o más pequeñas, los brazos más largos o más cortos y todo dependa de ciertas variables del programa.

He pensado en hacer varios personajes (basándome en el mismo) y luego cortar las partes de cada uno e ir combinándolas en el programa. Las animaciones no son muchas, pero si atendemos a que lo tengo que animar en 4 tipos distintos por ejemplo, pues crecen.

¿Cual es la mejor manera de hacer esto? ¿Alguno lo habéis hecho alguna vez? ¿Tal vez con gráficos vectoriales?

Gracias gente.

Windgate

Creo que Splinter lo hizo en la Crap usando puntos de control, es una parte de Bennu que apenas he tocado más que para poner el punto de referencia de centrado de gráficos, pero hay documentación en la wiki y el manual.
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

Danielo515

La wiki se donde encontrarla, pero ¿a que manual te refieres?

Muchas gracias.

Splinter! Comenta algo!

Noivern

#3
Al manual de osk creo que se refiere windgate.

Y el juego que hizo Splinter para la crap 4, el de zombies
Chequea la pagina, se llama... resident evil asdasda potencia de 2 asdfasda
re65535d(-1)

http://www.crapcompo.org/?page_id=28

EDIT: olvidé mencionar que el juego en sí es crap, pero el engine no es para nada crap, creo que por eso no ganó ese concurso XD

SplinterGU

Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Danielo515

Vale, si el juego lo conozco, lo que esperaba es que me comentase un poco (por encima) la metodología que usó y esas cosillas.

Por cierto, gracias por el enlace, me ha servido para encontrar un proyecto que presenté a la crap 3  :P

Danielo515

Bueno, me he mirado el manual, y me he topado con esto
[code language="bennu"]
/*Obtengo el punto de control 1 del proceso prota (puede ser por ejemplo, la mano que
empuña la espada)*/
get_point(father.file,father.graph,1,&punto_controlX,&punto_controlY);
//Obtengo el punto de control 0 (el centro) del proceso prota
get_point(father.file,father.graph,0,&punto_origenX,&punto_origenY);
/*Controlo la orientación izquierda-derecha del gráfico, y coloco horizontalmente la
espada en consecuencia*/
flags=father.flags;
if(flags==0)
x=(father.x-punto_origenX)+punto_controlX;
else
x=(father.x+punto_origenX)-punto_controlX;
end
//Coloco verticalmente la espada
y=(father.y-punto_origenY)+punto_controlY;[/code]

Si he entendido bien, primero le resta a la posición el punto de origen (es decir, el punto de control 0) para obtener ¿que? La esquina superior izquierda del gráfico, y a partir de ahí recolocar con las segundas coordenadas? Por favor que alguien me lo confirme.

Drumpi

Get_point te da la posición del punto de control respecto al pixel superior izquierdo del mapa. Lo de restarle la posición del centro es para saber cuantos píxeles está desplazado respecto al centro.

Por ejemplo: imaginemos un gráfico de 5 pixeles de ancho, cuyo centro es el pixel (3,3), y un punto de control situado en (5,3). Si usamos get_point con el punto de control 1, este nos devolverá los valores (5,3), sin embargo, en pantalla estrá situado a 2 pixeles más a la derecha de la posición del gráfico, que es el resultado de 5-3 (x_pto1-x_pto0).

En este caso, casi es más recomendable usar get_real_point, ya que devuelve la coordenada de pantalla de dicho punto, teniendo en cuneta escalados, rotaciones y demás deformaciones.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

Danielo515

Muchas gracias Drumpi, creo que ahora lo he pillado mejor, pero mirare de nuevo tu explicación mañana porque ahora son las dos de la mañana y no estoy muy bollante. De todos modos teniendo get real point no le encuentro utilidad a buscarse las vueltas gon get point. 

Por cierto, el buscador del foro es un poco malucho, ya que cuesta encontrar las cosas incluso sabiendo lo que buscas. Ahí queda

Danielo515

Chicos, por si a aguno le sirve, flash, para crear animaciones de personajes modulares es todo un sueño.

De momento estoy haciendo una animación que tiene tres partes animadas por separado, cada una con su propio fpg y lo único que tengo que hacer por código es cargar el fpg y aumentar el contador de gráficos, ya que flash exporta todo exactamente en la posición que le corresponde, aunque sea por partes, cada parte está exactamente donde debe.

Ya digo, si necesitais esto, flash es la solución, además que quedan animaciones realmente fluidas

Drumpi

Hay uno muy similar, que admite gráficos vectoriales y este tipo de animaciones, lo que pasa es que nunca me acuerdo del nombre... ¡¡¡MOMIAAAA!!!
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

Danielo515

Pues me vendría muy bien porque no hay manera de pasar de inkscape a flash, así que si ese fuera compatible, un sueño hecho realidad.

MOMIAA!!

Windgate

¿Anime Studio? De hecho creo recordar que tenemos un negocio a medias Momia y yo gracias a ese programita xD
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es