UNITY Operaciones sobre objetos 3D

De MediaWiki
Ir a la navegación Ir a la búsqueda

Introducción

  • A todo objeto 3D se le pueden aplicar tres operaciones:
  • Escalado: Hacerlo más grande. Podemos hacerlo más grande en todos los ejes (x,y,z) o sólo en alguno de ellos, provocando deformaciones.
  • Rotación: Podemos rotarlo en cualquiera de los tres ejes (x,y,z)
  • Traslación: Podemos trasladar el objeto en cualquiera de los tres ejes (x,y,z). Esto es, moverlo.


  • Como comentamos anteriormente, toda figura 3D se dibuja en el punto (0,0,0) y después se le aplican unas modificaciones para visualizarlo en la posición y forma correctas.
Esto es posible gracias a una serie de operaciones matemáticas con matrices.
Cada uno de los objetos 3D tiene asociado una matriz de modelado (una matriz matemática de 4x4).
Inicialmente, cuando dibujamos un objeto 3D se dibuja en el punto 0,0,0 y sin rotación ya que su matriz de modelado es la matriz identidad. Dicha matriz tiene unos en una de las diagonales.
Cuando indicamos que el objeto se tiene que desplazar, rotar o escalar, estamos modificando su matriz de modelado (para nosotros es transparante) y una vez modificada, se aplica dicha matriz sobre cada uno de los puntos del objeto 3D y por eso se dibuja en la posición correcta, con la escala y con la rotación indicada.



LIBGDX UD4 Animacion 4.jpg



  • En Unity3D accedemos a esta matriz en la ventana de Inspector, bajo la sección Transform:
Unity3d operaciones 1.jpg




Escalado

  • En la siguiente imagen podéis observar un cubo que mide 1x1x1 unidades (fijaros en la cuadrícula).
Unity3d escala 1.jpg


  • Al pulsar sobre el cubo aparece en el Window Inspector las propiedades del gameobject seleccionado (en este caso el cubo).
Unity3d escala 2.jpg


  • Ahora podemos modificar la escala. Lo podemos hacer de varias formas:
  • Tecleando la nueva escala en la caja de texto correspondiente.
  • Poniendo el ratón en la ventana Inspector, encima del eje que queramos cambiar la escala y manteniendo presionado el botón izquierdo mover a derecha o izquierda.


  • Seleccionado en la barra de herramientas la opción de escala y después, gráficamente sobre la figura, presionar el botón izquierdo del ratón sobre uno de los ejes de colores y sin soltar, mover el ratón.


Rotación

  • Podemos rotar una figura en cualquiera de los tres ejes.
La rotación viene determinada por un número que representa la rotación en grados.
Así, 90 grados sería un cuarto de circunferencia de rotación, 180 sería la mitad y 360 una vuelta entera.
  • Para saber como se rota, debemos de tener en cuenta la siguiente regla.
Debemos imaginar que nuestra cabeza está atravesada por un palo, en cada uno de los ejes:


  • Veamos en ejemplo con una figura de un tigre:


  • Podemos rotar de varias formas:
  • Tecleando el valor en la caja de texto correspondiente.
  • Poniendo el ratón en la ventana Inspector, encima del eje que queramos aplicar la rotación y manteniendo presionado el botón izquierdo mover a derecha o izquierda.


  • Seleccionado en la barra de herramientas la opción de rotación y después, gráficamente sobre la figura, presionar el botón izquierdo del ratón sobre uno de los ejes de colores y sin soltar, mover el ratón.
Nota: No os extrañéis sin al modificar uno de los ejes veis que se modifica la posición. Eso es normal, ya que estamos moviendo la figura.


Traslación


-- Ángel D. Fernández González -- (2018).