Escalar malla con bones

Preguntas y respuestas relacionadas con animación en Blender 3D
Responder
themonkeyzen
Mensajes: 34
Registrado: Mar Mar 15, 2016 3:58 pm
Nombre: Rubén

Escalar malla con bones

Mensaje por themonkeyzen » Lun Abr 11, 2016 1:54 pm

Hola a todos,

Tengo un problema con la animación de una cuerda que no se muy bien como atajar.
La animación se trata de lanzar una cuerda hacia delante cuyo extremo es un lazo fijo, desde un punto de reposo. Va por bones, cuerda "low poly" y sin físicas.

En el momento en el que está en reposo, tiene un tamaño inferior, y cuando se lanza hacia delante simplemente se agranda (estira hacia delante).

El problema viene en el número de bones. Al ser pequeña, tiene X bones, pero a la hora de agrandarlo, esos bones se quedan cortos para una malla tan larga.

Existe alguna manera de poder crear muchos bones, y al hacer un estiramiento, se coloquen de forma que ocupen toda esa malla estirada? (de forma proporcional y sin necesidad de ir recolocando uno a uno) o hay alguna mejor manera de poder hacer esto?

Gracias

Avatar de Usuario
soliman
Mensajes: 5501
Registrado: Jue Sep 01, 2005 1:13 pm
Nombre: soliman
Contactar:

Re: Escalar malla con bones

Mensaje por soliman » Lun Abr 11, 2016 2:24 pm

No me he enterado... no se muy bien a que te refieres.
Si es una malla larga, puedes crear muchos bones (huesos) y hay la opción de ESTIRAR estos bones por constraint (Stretch To) pero eso te estirará la malla.
Pero no entiendo eso de que la malla la estiras.. ¿te refieres a que le has puesto Shape KEY para estirar la malla sola y luego quieres poner la armature?

themonkeyzen
Mensajes: 34
Registrado: Mar Mar 15, 2016 3:58 pm
Nombre: Rubén

Re: Escalar malla con bones

Mensaje por themonkeyzen » Lun Abr 11, 2016 5:48 pm

Es complicado explicar.... Básicamente se trata de que un objeto con un tamaño determinado (y armature), acaba siendo alargado/estirado una de sus partes, y que esta parte estirada no se deforme y mantenga unos bones.
He creado una prueba ( bastante tosca ) para ilustrar un poco mejor a lo que me refiero.

En la primera imagen se puede ver cuerda + lazo, en una posición "recogida". En la segunda foto se vería como la malla de la cuerda, al cambiar el hueso de location, se estira.

Para poder hacer este estiramiento, el primer hueso de la parte izquierda (foto 2) no va emparentada al resto de cuerda que va con el lazo.
rope1.png
rope2.png
Aquí hay varios problemas:
- El estiramiento de esta manera produce roturas/cambios de volumen en la malla.
- Al no tener esa parte bones, no me es posible articularlo.

Quizá sería más sencillo crear una bezier con bones añadidos por hooks y tratar todo eso de esta manera, pero no me serviría para la exportación a Unity (problemas con modificadores), a no ser que pase el bezier a un mesh...pero sigo viendo lagunas ::)

Avatar de Usuario
soliman
Mensajes: 5501
Registrado: Jue Sep 01, 2005 1:13 pm
Nombre: soliman
Contactar:

Re: Escalar malla con bones

Mensaje por soliman » Mar Abr 12, 2016 1:36 am

Bueno, antes ya te he dicho que con una Constraint si se podría hacer, aunque lo mas seguro es que se deforme la malla, y además, no creo que Unity soporte ese tipo de Constraints de Blender (aunque tendrías que probarlo).

Prueba a buscar por squash y stretch a ver si encuentras algo que se amolde a lo que quieres
https://youtu.be/nhFk64mQZjc

De todas formas subo un pequeño vídeo de como se podría hacer algo parecido. en blender, por supuesto).
https://youtu.be/B0_coH5EHYU

themonkeyzen
Mensajes: 34
Registrado: Mar Mar 15, 2016 3:58 pm
Nombre: Rubén

Re: Escalar malla con bones

Mensaje por themonkeyzen » Mar Abr 12, 2016 8:13 am

El problema es cuando el lazo también lleva bones (como las imágenes que puse anteriormente, empieza el bone1 en la parte final de la cuerda y llega hasta el lazo, rodeándolo). De esta manera, al tirar de la linea recta por donde van los stretchs, el lazo también se deforma.
Hay alguna manera de evitar esto? Quizá con 2 armatures distintos...pero lo ideal es que fuera en uno.

Probablemente al lazo le ponga únicamente un bone central, ya que solo se usa para girar el lazo y no para cambiarlo de forma.

themonkeyzen
Mensajes: 34
Registrado: Mar Mar 15, 2016 3:58 pm
Nombre: Rubén

Re: Escalar malla con bones

Mensaje por themonkeyzen » Mar Abr 12, 2016 9:30 am

Tenga un bone o tenga varios alrededor, sigue deformando el lazo al tirar de la cuerda....

Avatar de Usuario
soliman
Mensajes: 5501
Registrado: Jue Sep 01, 2005 1:13 pm
Nombre: soliman
Contactar:

Re: Escalar malla con bones

Mensaje por soliman » Mar Abr 12, 2016 10:11 am

Y además creo que no te va a servir para Unity.. :(

themonkeyzen
Mensajes: 34
Registrado: Mar Mar 15, 2016 3:58 pm
Nombre: Rubén

Re: Escalar malla con bones

Mensaje por themonkeyzen » Mar Abr 12, 2016 11:51 am

soliman escribió:Y además creo que no te va a servir para Unity.. :(
Antes he creado una prueba rápida y creo que si va. No obstante tengo que probarlo más a fondo.

juani
Mensajes: 158
Registrado: Mié Oct 28, 2015 1:34 am
Nombre: Juan Antonio Sanchez Flores

Re: Escalar malla con bones

Mensaje por juani » Mar Abr 12, 2016 12:24 pm

¿ No puedes escalar los huesos en el eje que corresponda?
Adjuntos

[La extensión blend ha sido desactivada y no se mostrará en adelante]


Avatar de Usuario
soliman
Mensajes: 5501
Registrado: Jue Sep 01, 2005 1:13 pm
Nombre: soliman
Contactar:

Re: Escalar malla con bones

Mensaje por soliman » Mar Abr 12, 2016 1:36 pm

Pensándolo bien, se podría hacer como dices, pero a la hora de hacer el estiramiento, se podría escalar en coordenada Y y de esa forma no engordaría, y a la vez, se podría controlar el grosor si se escala sin coordenadas. O sea, mezclando las dos opciones (escalar en Y y escalar sin coordenadas) tal vez se consiga algo decente.

themonkeyzen
Mensajes: 34
Registrado: Mar Mar 15, 2016 3:58 pm
Nombre: Rubén

Re: Escalar malla con bones

Mensaje por themonkeyzen » Mar Abr 12, 2016 3:27 pm

juani escribió:¿ No puedes escalar los huesos en el eje que corresponda?
Eso fue lo primero que probé. El problema es que al no ser una línea recta y tener los bones en distintos ángulos, la malla se deforma bastante....teniendo más volumen por unos lados que por otros.

Responder