Gracias Gracias:  0
Resultados 1 al 2 de 2

Tema: Limitar rotación a un solo eje Unity (SOLUCIONADO)

  1. #1
    Usuario Senior Avatar de Jhonatan00_00
    Fecha de ingreso
    Oct 2016
    Mensajes
    172

    Post Limitar rotación a un solo eje Unity (SOLUCIONADO)

    Buenas noches, estoy portando todo lo que tenia hecho de Blitz3D a Unity, tanto modelados, como animaciones y lo peor, la programación, que ya me costó un hevo realizar con montones de ecuaciones y matemática y me encuentro con que si ya era complicado, ahora Unity te amarga mucho mas la existencia con el tema de los ángulos quaternion QUE No HAY QUIEN LOS ENTIENDA.
    Programo al personaje para qué gire en una dirección (dependiendo de la tecla qué pulsemos y con relación al ángulo de la cámara, que ya es decir) y en momentos gira bien, pero de pronto le da algo al personaje y se pone a dar vueltas como una peonza porque me confunde los ángulos quaternion con los euler y no sabe qué hacer.
    He probado con comandos que te facilitan la vida en estos temas de ángulos en Unity, como son quaternion, lokrotation y quaternion, slerp, que básicamente lo que hacen es que el personaje mire hacia la posición de otro objeto girando siempre por el angulo mas corto (como si de una cámara se tratase) y así me lo hace bien, pero tiene el invonceniente de que gira al personaje desde todos los ejes que considere necesarios para mirar al objeto, no solo desde el eje Y que es el eje que yo necesito rotar solamente, por lo que si el objeto que indica donde tiene que mirar está muy alto o muy bajo el personaje se gira hacia arriba o hacia abajo y eso impide que puedas programar fisicas y otras cosas en condiciones.
    ¿Sabe alguien si hay algún comando para indicarle que gire solo el eje Y hacia otro angulo? He probado de todo y no encuentro el puñetero comando, PAREZCO INGENIERO DE LA NASA EN LUGAR DE PROGRAMADOR DE VIDEOJUEGOS CON TANTOS NUMEROS.
    Última edición por Jhonatan00_00; 03-02-2019 a las 23:55

  2. #2
    Usuario Senior Avatar de Jhonatan00_00
    Fecha de ingreso
    Oct 2016
    Mensajes
    172

    Re: Limitar rotación a un solo angulo Unity (SOLUCIONADO)

    Por fin lo he solucionado. LA MADRE QUE ME PARIO.
    CONCLUSION:
    Los ángulos Quaternion son infinítamente mas fáciles de utilizar que los ángulos Euler sabiendo los comandos (no entiendo por que en el manual de Unity te dicen lo contrario) y si conviertes los ángulos Quaternion a Euler para qué sea mas fácil de comprender y hacer operaciones no solo te va a doler mucho mas la cabeza, si no que va a provocar fallos inesperados.
    Para evitar problemas en rotaciones complejas mejor utilizar ya comandos de Unity que facilitan el trabajo con operaciones con Quaternion como son: http://unityscripts, blogspot.com/20...uaternion.html.
    Y para conseguir limitar el angulo de giro un objeto en su rotación tan solo tenemos que crear una variable que contenga los vectores o ángulos quaternion del objeto que queremos rotar y despues limitar el eje que quéramos escribiendo la variable, y, variable.x o variable, z = 0.
    Ejemplo:
    Variable = Objeto, transform, position - transform, position;
    Variable, y = 0;.
    Con esto ya podemos usar los valores que van a salir de "Variable" para cualquier rotación sin que el objeto gire desde otro eje que no sea el Y. Un saludo.

Temas similares

  1. Conocer ángulo de rotación de un objeto (SOLUCIONADO)
    Por Jhonatan00_00 en el foro Programación y Scripts
    Respuestas: 2
    : 16-01-2019, 00:47
  2. Blender Ayuda limitar rotación game engine
    Por Juani en el foro Peticiones y Búsquedas
    Respuestas: 21
    : 08-08-2015, 08:43
  3. 3ds Max Tutorial rotacion en angulo
    Por 3djdavid en el foro 3DStudio Max
    Respuestas: 4
    : 21-12-2013, 05:35
  4. Limitar la rotación de un objeto
    Por shenmue en el foro Animación y Rigging
    Respuestas: 5
    : 09-02-2006, 16:35
  5. Limitar rotación
    Por Percewall en el foro Animación y Rigging
    Respuestas: 2
    : 25-01-2006, 00:37

Actualmente estos son sus permisos de publicación en el foro.

  • -No puedes crear nuevos temas al no estar registrado o no haber iniciado sesión en el foro.
  • -No puedes responder temas al no estar registrado o no haber iniciado sesión en el foro.
  • -No puedes subir archivos adjuntos al no estar registrado o no haber iniciado sesión en el foro.
  • -No puedes editar tus mensajes al no estar registrado o no haber iniciado sesión en el foro.
  •