Simulacion de telas Game Engine

Preguntas y respuestas relacionadas con el desarrollo de videojuegos y aplicaciones 3D interactivas, usando Blender Game Engine.
Responder
Sandokan22
Mensajes: 7
Registrado: Vie Feb 22, 2013 6:19 am
Nombre:

Simulacion de telas Game Engine

Mensaje por Sandokan22 » Vie Feb 22, 2013 6:46 am

Hola que tal comunidad Blender, mi nombres es dius y soy animador blender, soy nuevo en esto del Game Engine que blender brinda asi que tengo una terrible duda con respecto a este asunto espero que me puedan ayudar y resolver mi problema, estaria agradecido y de paso subiria los resultados :))) bien aca va mis dudas....

He buscado y practicado TODO lo que se me ha ocurrido y se encontraba dentro de mis posibilidades para hacerme mas facil este proceso de animar ropa para un personaje que pueda importar en este caso al engine game de blender; me refiero al tipo de \"ropa movil\" que todos conocemos en los juegos, capas, faldas, faldones, incluso banderas, etc. He modelado un personaje low poly que tiene un faldon en 3d Max 2010, le he hecho el rigging, y todos los ciclos de animacion necesarios para ponerlo a caminar, correr y hasta volar! en blnder, No he tenido problemas para importar el personaje con sus animaciones y texturas; sin embargo, algo que es tan sencillo de realizar con 3D max, la animacion de ropa (ya saben, modificador cloth y listo), se vuelve un tormento a la hora de hacerlo para este motor, ya que en blender (como muchos otros) solo importa animacion por bones, y no importara ninguna animacion basada en deformacion de la malla si a esta no se le ha hecho el skinning. O sea que necesitas una estructura de huesos y el modificador skin/physique en la malla para conseguir que te importe la animacion dentro de Unity.


Como todos sabemos, animar ropa con bones no es tarea facil o de un \"ratito\", y ademas el resultado no es el mejor, al menos no puede compararse con una buena simulacon de ropa. Mi pregunta es si existe algun metodo \"magico\" jaja o al menos mas sencillo de animar ropa con bones para juegos, he visto a algunos utilizando interesantes scripts para ciclos de animacion cortos (caminar por ejemplo), pero yo tengo todos los ciclos de animacion juntos, en una misma tira... Bueno, para ahorraros tiempo, antes de cualquier cosa, a continuacion presentare un muy breve resumen de las cosas que he probado, y cuyo resultado no me ha gustado:

- Le he colocado IK Spline a las cadenas de huesos que moveran la ropa, y luego he colocado el modificador \"Flex\" a la spline que hay en cada cadena de huesos. El resultado es una animacion en tiempo real de cada cadena de huesos, pero incluso tras utilizar decenas de configuraciones en las propiedades de \"Flex\", el resultado no es ni mucho menos como el comportamiento esperable de una tela, este metodo es genial para animar mechones de pelo sin esfuerzo, pero de una u otra forma, la animacion de la ropa utilizando este metodo resulta muy \"rigida\", pareciera que la prenda tiene una estructura semi rigida y elastica debajo, no queda bien para una capa o un faldon por ejemplo.

- Otro metodo que utilice, fue el de los huesos flotantes, el cual pense que \"seria mi salvacion\",asi he creado muchos huesos pequeñitos, como \"bolitas\", entonces clone la malla de la prenda de ropa (supongamos un faldon), oculte la malla \"original\" del faldon, y ahora comienzo a unir cada hueso a la malla clonada con \"Attachment constraint\", luego presiono en \"Set position\" en el panel de la derecha, y coloco este hueso en cualquiera de las caras de la malla, la que yo quiera, el hueso como sabeis, quedara completamente adaptado al movimiento de la malla, obviamente hare esto con cada hueso, y luego a su vez \"linkeare\" todos los huesos por ejemplo a la pelvis del biped. Cuando tengo todos mis huesos posicionados en las caras que he elegido de la malla clonada, desoculto el faldon original y le aplico el modificador skin añadiendo todos estos huesitos, vuelvo a ocultarla y al faldon clonado le aplico el modificador cloth, de esta manera los movimientos del faldon resultantes de la simulacion de ropa seran \"transmitidos\" al faldon original, el cual tiene su modificador skin, con los mismos huesos añadidos. Vale, pues esto queda mu feo cuando lo importo en Unity, la animacion del faldon resultante en Unity no es sino una burda y horrenda sombra de lo que deberia haber sido, de hecho incluso en 3D max el resultado de la animacion del faldon original no es muy realista, ya que nunca seran suficientes huesos como para llevar al faldon original una reproduccion exacta de los movimientos conseguidos en el faldon clonado simulado con cloth... Triste y descorazonador..

-Tambien utilice otro metodo. Utilice el script de harrison Yu (Real time Spring), y aunque el resultado me gusta mucho mas que lo que sucede cuando utilizas el modificador flex + IK spline en una cadena de huesos, el hecho de que no puedan añadirse objetos de colision causa que tengas que trabajar muchisimo \"frame a frame\" simulando estas colisiones manualmente, ademas, no se muy bien como utilizar este script, ya que realmente no puedo \"conducir\" o \"dirigir\" el movimiento que deseo que la animacion en tiempo real de los huesos siga, ya que no me deja reposicionar los huesos cuando activo el \"Auto key\" de max...

Llevo ya dos semanas trabajando sobre esto, buscando y buscando alguna solucion, y quisiera saber si a dia de hoy ya existe algo que facilite esta labor... de verdad, lo necesito o enloquecere =P. No se nada sobre utilizar la funcion \"point cache\", pero mas de uno ha comentado sobre esta posibilidad, para exportar animaciones por vertices de deformacion en la malla sin necesidad de utilizar huesos a Unity u otros moteres similares para juegos, pero desconozco como esto seria posible, si por favor alguien puede darme luz acerca de esto estare muy pero que muy agradecido (se que es un autentico reto para la mayoria pero tenia que preguntar).

De antemano, muchisimas gracias amigos!

Avatar de Usuario
ebarranco
Mensajes: 406
Registrado: Vie Oct 06, 2006 3:31 am
Nombre: Enrique Barranco
Ubicación: Jalisco
Contactar:

Re: Simulacion de telas Game Engine

Mensaje por ebarranco » Lun Feb 25, 2013 7:22 am

Que tal, me gustaría decir, que los métodos que aquí mencionas, funcionan perfectamente, al final desde luego depende mucho de saber lo que estas haciendo y porque. Hay uno que no mencionas que considero podría servirte. Y es; sí, la simulación en tiempo real de Soft body, es importante tener bien claro que las simulaciones en tiempo real siempre se hacen en el Game Engine donde vas a trabajar, No vas hacerlas en uno y esperar que funcione en otro, no es posible. Unity tiene su propio simulador de cloth en tiempo real, de esta forma haces tus animación normales y lo aplicas a los elementos que requieren simulación. Por supuesto es trabajo, hay Scripts y soluciones de pago que hacen de este labor algo distinto más no sencillo, como el buen Unity acostumbra. Ahora, Blender en su motor de juego tiene distintas soluciones, pero tienes que ser astuto, planear y pensar inteligentemente identificando que resultado quieres y como lo resolverás en el modelado, con una buena topología y un adecuado conteo de polígonos, así como la disposición de los elementos con rig, sin el y su función antes de animarlos. Todo esto debe planearse, no saltar con cualquier modelo, rigearlo hacer unas acciones y esperar que una simulación lo resuelva solo: No va a pasar. Esta pregunta que haces ya la han posteado en ocasiones anteriores, he respondido con ejemplos, archivos de muestra y la recomendación siempre ignorada de leer el manual. Ahí esta todo. En serio no hace daño. Pero claro, en este punto, ya no espero que lo hagan, en fin por lo mismo hice un pequeño ejemplo que me tomó unos cuantos minutos, demostrando lo sencillo que es cuando sabes lo que haces. Puedes verlo > que abrí sobre el tema. Cuando mencionas que llevas dos semanas, me hiciste sonreír. Como sabes algunos juegos han tomado más de una década en terminarse y con más de una persona trabajando tiempo completo en ellos, no considero que sea poco tiempo, pero esta lejos de ser significativo. Sin más por el momento espero que te sea de utilidad y nos estamos leyendo.
Un artista mediocre es aquel quien culpa a sus herramientas, por su trabajo.

Sandokan22
Mensajes: 7
Registrado: Vie Feb 22, 2013 6:19 am
Nombre:

Re: Simulacion de telas Game Engine

Mensaje por Sandokan22 » Mar Feb 26, 2013 10:41 pm

Gracias!! vi su video y aprendi algo que de verdad habia pasado por alto, aun asi seria estupendo que le pudiese agregar algun scrip para mejorar un poco el flameo de de la tela y quede como mas apegada al cuerpo y a la vez no se traspasen entre si en ciertas ocasiones.

Responder