Unity Gizmos para visualizar distancia al suelo

Clase 11 de 53Curso de C# para Videojuegos

Resumen

Domina los gizmos en Unity para ver lo que el raycast no muestra a simple vista. Con un rayo visual podrás medir la distancia al suelo en tiempo real y afinar parámetros de diseño como masa, fuerza y gravedad. Además, aplicarás la segunda ley de Newton para lograr un salto coherente y sentir el control del gameplay.

¿Cómo activar y usar gizmos en Unity para medir distancia?

Con el botón Gizmos en la pestaña Game puedes ver ayudas visuales durante el play. Al activarlos, aparecen elementos como el collider en forma de cápsula alrededor del personaje. Lo útil: dibujar una línea vertical hacia abajo para comprobar el alcance del detector de suelo (por ejemplo, 1.5 metros) y verificar si el cálculo coincide con lo esperado.

  • Activa Gizmos en la pestaña Game durante el play.
  • Identifica el collider del personaje y su centro: transform.position.
  • Dibuja un rayo vertical hacia abajo que siga al personaje en todo momento.
  • Coloca el código al final de Update para localizarlo fácil y retirarlo antes de producción.

¿Qué diferencia hay entre draw ray y draw line?

  • Debug.DrawRay: dibuja un rayo desde un punto con una dirección y longitud.
  • Debug.DrawLine: dibuja una línea entre dos puntos específicos.
  • Para medir distancia al suelo desde el personaje, un rayo vertical suele ser suficiente.

¿Qué código necesitas para dibujar el rayo en el update?

Dentro de Update, usa la clase Debug para dibujar el rayo. Define origen, dirección, longitud y color. Recuerda: las clases en mayúscula (por ejemplo, Color) y las variables en minúscula. Todas las líneas terminan en punto y coma.

void Update()
{
    Debug.DrawRay(transform.position, Vector2.down * 1.5f, Color.red);
}

Puntos clave del fragmento: - Origen: el centro del personaje con transform.position. - Dirección: hacia abajo con Vector2.down. - Longitud: 1.5f metros para el alcance del detector. - Color: Color.red para una referencia clara.

¿Cómo elegir el color del gizmo sin complicarte?

  • Usa colores por defecto: Color.red, Color.green, Color.blue, entre otros.
  • Si lo prefieres, define tu color con componentes red, green, blue, hue, saturation y value.
  • Opta por un color contrastado para verlo bien durante el play.

¿Cómo ajustar masa, fuerza y gravedad según la segunda ley de Newton?

Recordatorio esencial: fuerza es igual a masa por aceleración. Por tanto, aceleración = fuerza / masa. Si aumentas la masa, disminuye la aceleración que puedes dar con la misma fuerza; si reduces la masa, el salto se vuelve más intenso. Este equilibrio es clave para un salto natural.

  • Masa = 2: el personaje salta menos, le cuesta despegar.
  • Masa = 0.5: con la misma fuerza, el salto es mucho mayor.
  • Masa automática (automasa en el rigidbody): Unity calcula, por ejemplo, 2.42 kg; con esa masa, casi no se mueve con la fuerza anterior.
  • Solución práctica: si usas automasa, aumenta la fuerza de salto, por ejemplo, hasta 20 para recuperar un salto similar al original.
  • Extra útil: ajusta la gravedad y la fuerza de salto en relación a la masa para simular entornos como “espacio” o escenarios de baja gravedad.

Buenas prácticas de game design con física: - Ajusta primero la masa del rigidbody y verifica el comportamiento del salto. - Usa el rayo de gizmo para medir la distancia al suelo y validar el detector. - Equilibra fuerza, masa y gravedad hasta lograr fluidez y coherencia visual. - Mantén el código de gizmos en Update y bórralo antes de publicar.

¿Tienes una mejor combinación de masa y fuerza para tu personaje o un color de gizmo que te funcione mejor? Comparte tu configuración y resultados en los comentarios.

      Unity Gizmos para visualizar distancia al suelo