Jump to content
Sign in to follow this  
Bousing

[Ayuda] Problemas con Collider

Recommended Posts

Saludos amigos, espero que estén bien.

   Escribo porque tengo una problema que me tiene estresado. He creado un personaje con MakeHuman, pero el problema es que cuando le agrego un character collider o capsule collider al personaje tengo problemas. Utilizo Unity 5, en el 4 no tenía tantos problemas en 3D, por eso detesto el 5, pero quiero aprenderlo a usar. Mi problema es que el personaje flota, o cae muy lentamente, aún cuando le aumento la masa en el RigidBody. Y otro problema es que el collider, tanto capsule como chracter controller se bajan unas unidades en el eje Y y hace que llegue al suelo primero el collider que el personaje haciendo que este flote en el aire, tal como muestra la foto que adjunté.

   Una solución que se me ocurrió fue ponerle box collider a los zapatos del personaje pero fue terrible porque aunque funcionó el personaje tiembla siempre. 

  En resumen, necesito ayuda :(:( 

 

 

problema.png

Share this post


Link to post
Share on other sites

No he tocado mucho el tema (y menos con MakeHuman) pero por la posición del collider, yo diría que hay una asignación incorrecta del pivote base del esqueleto, de ahí que el capsule se alinee incorrectamente. Creo recordar que hay una opción en las propiedades de importación de los modelos, para indicar sobre qué hueso se basa el pivote.

Recuerda, además, que siempre puedes modificar la propiedad Center (u Offset) del CharacterController o del CapsuleCollider, para reajustar el collider. Tan sólo súbelo un poco más hasta centrarlo y que el final de la cápsula toque exactamente con la planta de los pies.

¿Podría ser eso? Lamento no ser de más ayuda.

Share this post


Link to post
Share on other sites

Gracias pioj, pero ya lo intenté... a lo mejor se debe a un defecto de esos muñecos hechos en MakeHuman, aunque sospecho más que es algo de Unity 5 porque he usado personajes de MH en Unity 4 y no he tenido ese problema. Ni idea de como solucionarlo.

Edited by Bousing

Share this post


Link to post
Share on other sites

Pues como dice Pioj, tienes la propiedad center en el character controller que sirve para ajustar la posicion del collider,tampoco he tocado MakeHuman nunca y no se como sacara la jerarquia.pero con eso deberia bastar. Lo de que caiga lentamente pos ni idea, pon una pelota con un rigid sin tocar nada y dale al play a ver si tambien le pasa.

 

lml

Share this post


Link to post
Share on other sites

Según esa imagen, le falta poner un 1 en el Centre Y para indicarle a la cápsula que su centro está más arriba. No es algo específico del MH si no que es algo que puede ocurrir con los modelos de donde sean por múltiples motivos.

Share this post


Link to post
Share on other sites
Guest Xpartano

Buenas. He estado probando a importar algun personaje a unity posicionando el pivot en diferentes puntos para ver que sucedía. Lo que ocurre es que el collider se alinea con el pivote local del personaje y te obliga a ponerle los valores a mano en unity. Por cómo lo tienes tú, diría que el pivot lo tienes en los pies (me refiero al local, no al global). Por lo tanto, y como bien ha dicho Adngel, debes cambiar el center en Y de tu character controller. Con eso se solucionaria tu problema con el collider. Por otro lado, el problema de físicas que tienes no se soluciona cambiando la masa ya que, si lo piensas, en la vida real si tiras dos objetos de diferente masa (por ejemplo un garbanzo y una pelota de baloncesto) y desde la misma altura, ambos llegaran al suelo al mismo tiempo. Si cambias la masa lo que harás es modificar la fuerza que ejercerá tu personaje contra el suelo. Para modificar los parametros de gravedad, deberás ir a Edit/Project Settings/Physics y deberas cambiar el parametro que está en -9,8 a un valor menor. Juega con esos parámetros ;) Espero haberte ayudado. Un saludo!

Share this post


Link to post
Share on other sites

Gracias por la respuesta. Pero una pregunta, como logro cambiarle el pivote ? Intente subir el collider como sugirieron pero el pivote sigue estando en los pies. Y otra cosa, noto también que el Collider baja posiciones en el eje Y cuando le doy Run 

 

Edited by Bousing

Share this post


Link to post
Share on other sites

Puede que sea problema de las animaciones entonces (y no del modelo en sí).

Para cambiar la posición del pivote en el modelo, tendrías que hacerlo en el programa de modelado (por ejemplo, Blender).

Para cambiar la posición del pivote en las animaciones, puedes hacerlo en el programa de modelado, o también, en la configuración de la animación, la seleccionas en la ventana del proyecto, y en el inspector aparecerá un menú con 3 pestañas arriba, vete a la 2 que es la de Rig, y ponla como Humanoid, después dale a la 3 pestaña que es la de animación, y ahí verás las animaciones de ese archivo con varias opciones:

- Una de las que tienes que mirar, es ,
- Otra opción que tal vez ayude, es la del offset en el eje Y. Ponle valores para que la animación de Idle esté a menos nivel, (o a la de Run para que esté más arriba).

SI tu personaje no usa el Rig humanoid por la razón que sea, entonces ya sólo quedará la opción de corregir las animaciones en Blender (o añadirle el offset mediante código poniéndolo el LateUpdate, pero esto último me parecería ya demasiado lio).


Aunque estos cambios en las animaciones, se implementaron en Unity 4, por lo que si allí no los tenías, puede que lo que te esté pasando sea por otra cosa, aún así imagino que vale la pena echarle un vistazo a las opciones de animación antes de proceder al Blender.

Share this post


Link to post
Share on other sites
Sign in to follow this  

UnitySpain © Todos los derechos reservados 2020
×
×
  • Create New...