Contenido del Curso
Unity para Principiantes
Unity para Principiantes
Rigidbody en Unity
En Unity, el concepto de un cuerpo rígido se refiere a un componente que puede ser adjuntado a un objeto del juego para simular un comportamiento físico realista. El sistema de cuerpos rígidos de Unity permite a los desarrolladores crear objetos que responden a fuerzas como la gravedad, colisiones e interacciones del usuario de manera realista.
Basado en Componentes:
Un cuerpo rígido es uno de esos componentes que se puede añadir a un objeto del juego para darle propiedades físicas.
Simulación Física:
Cuando un objeto del juego tiene un componente de cuerpo rígido adjunto, el motor de física de Unity se encarga de simular cómo ese objeto interactúa con otros objetos en la escena. Esto incluye simular la gravedad, aplicar fuerzas, detectar colisiones y resolverlas de manera realista.
Propiedades:
Los cuerpos rígidos en Unity tienen varias propiedades que se pueden ajustar para afinar su comportamiento. Estas incluyen masa (cuán pesado es el objeto), arrastre (resistencia al aire), arrastre angular (resistencia rotacional al aire) y restricciones (qué ejes puede mover o rotar el objeto).
Interacciones:
Los cuerpos rígidos pueden interactuar entre sí y con otros objetos basados en física en la escena. Por ejemplo, si dos cuerpos rígidos colisionan, el motor de física de Unity calcula las fuerzas resultantes y los cambios en el movimiento en consecuencia. Esto permite simulaciones realistas de objetos rebotando entre sí, rodando, deslizándose y más.
Integración de Scripts:
Los desarrolladores también pueden controlar cuerpos rígidos a través de scripts utilizando la API de scripting de Unity. Esto permite la manipulación dinámica de objetos basada en la lógica del juego, la entrada del usuario u otros factores.
Ejemplo de nosotros usando la integración de script de Rigidbody2D
.
Ya hemos explicado este script en el último capítulo de la segunda sección, puedes revisarlo si lo olvidas.
Este es el ejemplo en el video:
float x = Input.GetAxis("Horizontal"); and float y = Input.GetAxis("Vertical");
Estas líneas recuperan la entrada horizontal y vertical del jugador. La función Input.GetAxis()
de Unity devuelve un valor flotante entre -1 y 1 basado en el eje de entrada definido en la configuración del Administrador de Entradas. En este caso, son "Horizontal" y "Vertical", que generalmente están asociados con las teclas de flecha o las teclas WASD en el teclado.
Vector2 direction = new Vector2(x, y);
Esta línea crea un nuevo vector 2D llamado dirección utilizando los valores de entrada horizontal y vertical obtenidos en el paso anterior. Este vector representa la dirección en la que se moverá el objeto Rigidbody2D
.
rb.AddForce(direction, ForceMode2D.Force);
Esta línea aplica una fuerza al objeto Rigidbody2D
rb
en la dirección especificada por el vector de dirección. El parámetro ForceMode2D.Force
indica que la fuerza se aplicará continuamente a lo largo del tiempo, simulando aceleración.
Puedes buscar más sobre el lado del script del cuerpo rígido en los documentos de Unity aquí: Rigidbody2D
Casos de Uso:
Los cuerpos rígidos se utilizan comúnmente para simular objetos como personajes, vehículos, proyectiles y elementos ambientales en juegos. Son esenciales para crear experiencias de juego realistas e inmersivas.
¡Gracias por tus comentarios!