10.- Colisionadores y Rigidbody en Unity

Todos los GameObjects de un juego tienen algo en común, un campo de fuerza invisible que permite reaccionar a la física, su nombre... "El Colisionador".

Un colisionador es la verdadera entidad con la que nuestros objetos reaccionan en los juegos, desde chocar, tocar, recoger un objeto e inclusive tocar el suelo, todos son eventos de colisión, nuestros modelos 3d o dibujos son sólo adornos.

Para entender el concepto de colisionadores vamos a crear una esfera desde el menú: GameObject - 3d Object - Sphere ponga especial atención a las líneas verdes que cubren la esfera...

¡ Éso es el colisionador !

Crear-Esfera-Con-Colisionador-Unity





Con nuestra esfera ligeramente arriba del suelo iniciamos la simulación con Play.

Observará que la esfera se mantiene en el aire.

Esfera-Estatica-En-El%20Aire-En-Play

Vamos a hacer un experimento...

Dotaremos de masa a la esfera, del menú componentes seleccione:
Component - Physics - Rigidbody El componente Rigidbody permite aplicar la fuerza de gravedad a los objetos.

En el Inspector puede observar el colisionador tipo esfera y el componente Rigidbody incrustado a la esfera, puede cambiar el valor en kg de la masa (Mass).

A%C3%B1adir-Rigidbody-A-Esfera

Al presionar Play inicia la simulación y la esfera debe caer por su masa.
Es importante entender que la esfera golpea el suelo con el colisionador y tiene masa por el Rigidbody incrustado.
Un GameObject con sólo colisionador se convierte en un objeto fijo en el mundo 3d, sí puede colisionar, pero no cae.

En los 70's los videojuegos se diseñaban con lenguajes de programación muy básicos, ensambladores o lógica binaria con electrónica, no existian los útiles colisionadores que nos ofrece Unity.

La mejor parte de usar GameObjects con Rigidbody y colisionadores es no tener preocuparnos sobre las fórmulas de física de Isaac Newton, sólo creamos el objeto, asignamos la masa y lo soltamos al mundo 3d.
En otras palabras... el motor de físicas de Unity es lo que facilita la tarea de programación.

Esfera-Con-Fisica-En%20Play



Ya observamos como cae la esfera y puede rodar por el terreno. Ahora vamos a crear un Cubo con el menú. GameObject - 3d Object - Cube

Crear-Un-Cubo-Con-Rigidbody



El cubo cuenta con su propio colisionador (Box Collider), para que reaccione a la fuerza de gravedad le asignamos un componente Rigidbody y simulamos con Play...

Cubo-Con-Rigidbody

Vamos a probar la interacción entre varios cubos con Rigidbody... Seleccione su cubo en el panel Hierarchy, con Click derecho seleccione Duplicate, puede crear varios clones y acomodar los como se muestra (usar flechas).

Interaccion-Entre-Varios-Cubos-Con-Rigidbody

Al simular los cubos deben caer y acomodarse como lo permitan sus colisionadores. Cambie la masa de los cubos y experimente.

¡ Cuidado ! Para asignar masa a los colisionadores no debemos poner valores exagerados, podemos variar entre 1 a 1000 kg.
Una regla general en Unity es que el bjeto más pesado no debe pesar más de 1000 veces que el objeto más ligero en escena.
Por ejemplo se puede tener una esfera de 1 kg y otra de 1000 kg en la simulación, pero la segunda no debe pasar de 1000, cuando excedemos éste límite el motor de físicas puede fallar.


Siguiente:
11.- Agregando luz a la escena en Unity
Tutoriales Tecno Trainer Unity-C#-3dsmax

Cubos-Cayendo-Y-Acomodandose