Proyectos => Jad Engine => Mensaje iniciado por: Diferencial en 05 de Julio de 2006, 11:59:53 am

Título: Como se puede hacer?
Publicado por: Diferencial en 05 de Julio de 2006, 11:59:53 am
Buenas a todos,
Estoy metido en hacer efectos con espadas, el efecto consiste en que cuando se mueve una espada deja un recorrido (Parecido a las espadas de stars wars). El problema que no se por donde comenzar, si alguien me puede orientar en el tema, gracias de antemano.
Título: Como se puede hacer?
Publicado por: zupervaca en 05 de Julio de 2006, 12:41:19 pm
Tienes varias formas, la mejor (para animaciones siempre iguales), mas rapida y facil es que la espada incluya ese efecto en su propia animacion, es decir, el grafista debe de hacer ese efecto en el propio modelo o en otro separado que luego pondras junto a la espada.
Título: Como se puede hacer?
Publicado por: Diferencial en 05 de Julio de 2006, 12:49:57 pm
Gracias zupervaca por la respuesta, la verdad una solución muy buena. Pero en el caso de que no sean animaciones iguales?
Título: Como se puede hacer?
Publicado por: Zaelsius en 05 de Julio de 2006, 02:20:46 pm
Puedes crear ese efecto usando geometría en forma  de "quad strip" que siga la trayectoria de la espada. Con alpha-blending y colores por vértice tendrias el efecto solucionado.

Lo ideal sería tener un hueso asociado a la espada, y generar a partir de ahí el "quad strip" en cada frame, teniendo en cuenta  la velocidad, posición anterior, etc. Si no me he explicado bien, dímelo y luego pongo un dibujito.

Edit: bueno, me has pillado ocioso. Ejemplo:

(http://www.lemonteam.com/julio/posts/trail.png)

Cogí la imagen original de un artículo de gamasutra (http://www.gamasutra.com/features/20050428/sang_01.shtml) y la retoqué mostrando lo que seguramente sea la geometría asociada al efecto. En este ejemplo han usado una textura.
Título: Como se puede hacer?
Publicado por: [Vil] en 05 de Julio de 2006, 02:23:49 pm
tambien se puede hacer "contruyendo" la malla durante el juego. Tienes que ir creando los poligonos desde la espada... se como se hace pero no se como contarlo, jejeje.

Supones la espada como una recta unida por dos puntos. En el momento que empieza a haber estela, guardas las posicion de la espada. 10 frames (o los que sea) despues miras las nuevas posiciones de los puntos de la espada y entre esos y los anteriores creas 2 triangulos (transparentes o como quieras q sea la estela). 10 frames despues haces lo mismo con los ultimos puntos y la nueva posicion. Asi deja estela, luego cada tantas veces, vas deshaciendo la estela. Se puede variar esto mucho, pero mas o menos...

[edito]
ZaelSiuS se me adelanto con una respuesta mucho mas bonita :)
Título: Como se puede hacer?
Publicado por: zupervaca en 05 de Julio de 2006, 02:31:53 pm
Para ese caso tienes otra solucion bastante mas complicada, debes de crear el efecto en tiempo de ejecucion, cada vez que la espada cambie de angulo, posicion, etc y cada cierto tiempo, debes de modificar una malla que estes usando para ese efecto, en ese malla debes de agregarle los puntos que abarque la espada en la posicion que este e ir bajandole el alfa a los puntos anteriores, ademas cuando ese alfa sea proximo a cero significa debes de eliminar esos puntos. Como veras es muchisimo mas complicado de hacer.

Otra forma que te puede resultar mas facil es que tengas una malla prefabricada con varios puntos con el alfa precalculado y que unos sigan a otros, debes de tener varios puntos principales que siguen a ciertos puntos de la espada y los demas puntos deben de seguir a estos y asi sucesivamente (creo que esta es la que mas se usa), ten en cuenta que los puntos que siguen a los otros deben de tener diferentes velocidades, mientras mas transparente sea ese punto mas lento debe de ir.

Creo que el efecto este precalculado en la animacion te va a ser mucho mejor.
Título: Como se puede hacer?
Publicado por: Diferencial en 05 de Julio de 2006, 08:45:36 pm
Muchisimas gracias a todos por las respuestas, ahora por lo menos puedo empezar.
Título: Como se puede hacer?
Publicado por: AK47 en 05 de Julio de 2006, 11:01:31 pm
De que versión de Street Fighter 2 son las capturas del artículo de gamasutra?
Título: Como se puede hacer?
Publicado por: kirdan en 10 de Enero de 2007, 08:41:36 pm
Cita de: "AK47"
hola quisiera entrometerme y desir que efectos los puedes alcansar algunos mui fantasticos con transparensias , claro que puede  ser mui difisil perseguir el efecto que tu quieres pero bueno  tengo gran problema el motor haddd ,,,,,,   no lo puedo correr me dise que no encuentra la  DirectX.DirectX3DX.dll    y  si la pongo el las referensias pero  como  seguia disiendo sale ese error  me dise alo asi  de que no es la version adecuada  
[/url]
Título: Como se puede hacer?
Publicado por: AK47 en 10 de Enero de 2007, 08:54:51 pm
Oye, que Ak47 no escribió eso, eh?  :lol:
Título: Como se puede hacer?
Publicado por: burb en 10 de Enero de 2007, 09:07:25 pm
Tiene un problema con las ces.

En cuanto a lo del efecto no es mejor hacerlo con motion blur???