Fundamentos de C# en Unity: variables, métodos y Debug.Log

Aprende la base de scripting en Unity con C#: declarar variables, crear métodos y mostrar trazas útiles para depurar.

En Unity, un script C# es un componente que se adjunta a un GameObject para definir comportamiento.

Las variables públicas exponen parámetros en el Inspector y permiten ajustar gameplay sin recompilar código.

Los métodos agrupan lógica reutilizable; Start y Update marcan puntos clave de ejecución.

Debug.Log es una herramienta de observabilidad básica para verificar estado y detectar errores temprano.

  • En Unity no programas en vacío: programas componentes que viven en GameObjects.
  • Cuando creas un script en Unity, defines una clase que hereda de MonoBehaviour. Esa clase se adjunta a un objeto y se ejecuta dentro del ciclo del motor.
  • Esto implica que tu lógica depende del contexto del objeto: su Transform, sus componentes vecinos y su estado en escena.
  • Piensa cada script como una responsabilidad concreta (movimiento, salud, audio) y evita meter todo en una sola clase.
  • Script = componente de comportamiento.

El script como componente

En Unity no programas en vacío: programas componentes que viven en GameObjects.

Cuando creas un script en Unity, defines una clase que hereda de MonoBehaviour. Esa clase se adjunta a un objeto y se ejecuta dentro del ciclo del motor.

Esto implica que tu lógica depende del contexto del objeto: su Transform, sus componentes vecinos y su estado en escena.

Piensa cada script como una responsabilidad concreta (movimiento, salud, audio) y evita meter todo en una sola clase.

  • Script = componente de comportamiento.
  • MonoBehaviour = integración con el motor.
  • Una responsabilidad por script para mantener claridad.

Variables y métodos que debes dominar

La base del gameplay empieza por declarar estado y operar sobre él con métodos simples.

Usa variables para guardar datos como velocidad, vida o daño. Si son públicas, aparecerán en el Inspector para ajuste rápido.

Los métodos encapsulan acciones: por ejemplo, aplicar daño, mover, curar o reiniciar estado. Si repites lógica, extrae método.

No nombres variables con ambigüedad. `velocidadMovimiento` comunica más que `v` y facilita mantenimiento cuando el proyecto crece.

Debug.Log con criterio

Loguear todo sin estrategia ensucia la consola; loguear bien acelera depuración.

Usa Debug.Log para confirmar transiciones relevantes: inicialización, cambios de estado y valores críticos durante pruebas.

Evita logs masivos en Update salvo depuración puntual, porque generan ruido y dificultan encontrar incidencias reales.

Combina mensajes claros con contexto mínimo (método, valor y objeto) para poder localizar problemas en segundos.

Unity
04

Fundamentos de C# en Unity: variables, métodos y Debug.Log

Aprende la base de scripting en Unity con C#: declarar variables, crear métodos y mostrar trazas útiles para depurar.

Código del tema: GameObject + Component = comportamiento

📘 Teoría

El script como componente

En Unity no programas en vacío: programas componentes que viven en GameObjects.

Cuando creas un script en Unity, defines una clase que hereda de MonoBehaviour. Esa clase se adjunta a un objeto y se ejecuta dentro del ciclo del motor.

Esto implica que tu lógica depende del contexto del objeto: su Transform, sus componentes vecinos y su estado en escena.

Piensa cada script como una responsabilidad concreta (movimiento, salud, audio) y evita meter todo en una sola clase.

  • Script = componente de comportamiento.
  • MonoBehaviour = integración con el motor.
  • Una responsabilidad por script para mantener claridad.

Variables y métodos que debes dominar

La base del gameplay empieza por declarar estado y operar sobre él con métodos simples.

1

Usa variables para guardar datos como velocidad, vida o daño. Si son públicas, aparecerán en el Inspector para ajuste rápido.

2

Los métodos encapsulan acciones: por ejemplo, aplicar daño, mover, curar o reiniciar estado. Si repites lógica, extrae método.

3

No nombres variables con ambigüedad. `velocidadMovimiento` comunica más que `v` y facilita mantenimiento cuando el proyecto crece.

Script base en Unity con variables y método
using UnityEngine;

public class PlayerStats : MonoBehaviour
{
    public float velocidad = 5f;
    public int vida = 100;

    void Start()
    {
        Debug.Log($"Inicio -> velocidad: {velocidad}, vida: {vida}");
    }

    public void RecibirDanio(int cantidad)
    {
        vida -= cantidad;
        Debug.Log($"Daño recibido: {cantidad}. Vida actual: {vida}");
    }
}

Debug.Log con criterio

Loguear todo sin estrategia ensucia la consola; loguear bien acelera depuración.

1

Usa Debug.Log para confirmar transiciones relevantes: inicialización, cambios de estado y valores críticos durante pruebas.

2

Evita logs masivos en Update salvo depuración puntual, porque generan ruido y dificultan encontrar incidencias reales.

3

Combina mensajes claros con contexto mínimo (método, valor y objeto) para poder localizar problemas en segundos.

🧪 Aprende probando

Ejemplo Ejemplo guiado Lee el script, localiza variables y adapta un método para cambiar estado de juego.

🏁 Retos

Reto Reto práctico Crea una variable pública de daño y un método que reduzca vida mostrando el resultado en consola.

¿Qué es esto?

Soy Cristian Eslava y a veces hago webs para procrastinar yo y vosotros 😉.

Esta la hice en febrero de 2026 para facilitar el aprendizaje de mis alumnxs. Aprender desarrollo web practicando. La idea es que crezca semanalmente con nuevos temas, tests y retos.

Inspirado en MDN, en W3Schools, en Codepen, en el crack de Manz y en mil sitios de documentación sobre desarrollo web. Quería aportar además de bloques teóricos con ejemplos, la gamificación de los retos y el sistema de test que ya tenía en culTest .

Si te gustó, si no te gustó, si quieres saludarme, o invitarme a 🍻 no dudes en escribirme en cristianeslava@gmail.com .