RARE COURSE

💻 INTRODUCCIÓN A LA PROGRAMACIÓN DE JUEGOS EN C/C++

C • C++ • raylib • Algoritmos

⏱️ 4 Meses Duración
📚 8 Unidades Módulos
🎯 4000 XP Experiencia
🏆 LVL 1-40 Nivel Final
course_info.txt

[ SOBRE EL CURSO ]

$ Curso intensivo de 16 semanas (128 horas) con 2 clases por semana de 4 horas cada una. Foco en C con bases sólidas y "puentes" a C++ cuando suma valor (strings, structs/clases, organización de código).

$ Metodología 100% práctica: 30-45 min de teoría + demo guiada, 2h de práctica incremental con ejercicios cortos, 60-90 min de mini-proyecto/desafío, y 10 min de cierre con errores comunes y checklist.

$ Al finalizar construirás 3 juegos en consola (Adivina el número PRO, Ta-Te-Ti, RPG por turnos) y 2-3 juegos simples en raylib (Pong, Space Shooter o Breakout).

[ OBJETIVOS DE APRENDIZAJE ]

🧠

Pensamiento Algorítmico

Explicar qué es programar, qué es un programa, qué hace un compilador y el flujo código → compilación → ejecutable.

📐

Diseño de Soluciones

Diseñar soluciones con algoritmos, pseudocódigo y diagramas de flujo antes de escribir código.

💻

Fundamentos de C

Dominar variables, tipos, control de flujo, funciones, arrays, structs, punteros (nivel usable) y archivos.

🎮

Juegos en Consola

Construir 3 juegos completos en consola (texto): Adivina el número PRO, Ta-Te-Ti y RPG por turnos.

🕹️

Juegos con raylib

Crear 2-3 juegos simples con gráficos 2D usando raylib: Pong, Space Shooter, Breakout o Top-down collect.

📁

Organización de Proyectos

Organizar un proyecto: archivos .h/.c, módulos, build básico y depuración.

🎯

OBJETIVO DEL CURSO

Formar programadores con bases sólidas en C/C++ capaces de entender el "ecosistema" de desarrollo, resolver problemas con pasos claros y crear juegos funcionales desde cero.

👤

PERFIL DEL ESTUDIANTE

  • ✅ Pasión por los videojuegos
  • ✅ Ganas de aprender programación desde cero
  • ✅ Pensamiento lógico
  • ✅ No se requiere experiencia previa
  • ✅ PC con compilador de C/C++
🏆

CERTIFICACIÓN

Certificado oficial como Programador de Juegos en C/C++ avalado por profesionales activos de la industria.

💼

SALIDA LABORAL

  • 💻 Programador Jr. en C/C++
  • 🎮 Desarrollador de Juegos Indie
  • 🔧 Programador de Herramientas
  • 📚 Base sólida para motores AAA
  • 🚀 Continuar a Unreal Engine C++

[ PROGRAMA DEL CURSO ]

8 Unidades • 16 Semanas • 128 Horas • De Principiante a Desarrollador

01

Qué es Programar + Herramientas + Pensamiento Algorítmico

⏱️ 2 semanas 🎯 Nivel: Beginner

Entender el "ecosistema" y empezar a resolver problemas con pasos claros. Qué es un programa, qué es la programación, rol del programador en videojuegos. Lenguajes alto/bajo nivel, compilados vs interpretados. Por qué C/C++ en juegos. Qué es un algoritmo, etapas de resolución de problemas, estrategias top-down/bottom-up. Pseudocódigo + diagrama de flujo (Flowgorithm). Herramientas: editor/IDE, compilador, terminal. Primer programa en C: main, printf, return.

Algoritmos Pseudocódigo Diagramas de Flujo Hola Mundo
SEMANAS 1-2
02

Variables, Tipos, Operadores, Entradas/Salidas, Control de Flujo

⏱️ 2 semanas 🎯 Nivel: Beginner

Escribir programas interactivos y decidir caminos lógicos. Variables, tipos básicos (int, float, char), constantes. Operadores aritméticos, relacionales, lógicos y precedencia. Entrada/salida: scanf y buenas prácticas. Control de flujo: if/else, switch, bucles while, do-while, for. Validación de datos y debug mental: "seguir el valor de variables".

Variables Operadores If/Else/Switch Bucles
SEMANAS 3-4
03

Funciones y Diseño Modular + Testing Manual

⏱️ 2 semanas 🎯 Nivel: Beginner

Dejar de escribir "un choclo en main" y empezar a pensar como dev. Funciones: firma, parámetros, retorno, alcance (scope). Variables locales/globales (cuándo NO usarlas). Diseño top-down: partir un problema en subproblemas. Librerías, headers: .h/.c, #include, prototipos. Buenas prácticas: nombres, estilo, comentarios útiles. Testing manual: casos normales/bordes.

Funciones Headers .h/.c Diseño Top-Down Testing
SEMANAS 5-6
04

Arrays, Strings (C), y Manejo Básico de Memoria

⏱️ 2 semanas 🎯 Nivel: Intermediate

Manejar colecciones y texto, base para juegos (tableros, listas). Arrays 1D: recorrido, búsqueda, máximo/mínimo, conteos. Arrays 2D: grillas (tableros). Strings en C: char[], terminador \0, funciones típicas. Intro a punteros práctica (qué es una dirección, por qué existe). Errores típicos: índices fuera de rango, \0, buffers.

Arrays 1D/2D Strings en C Intro Punteros Tableros
SEMANAS 7-8
05

Structs, Estado de Juego, y Arquitectura Simple

⏱️ 2 semanas 🎯 Nivel: Intermediate

Entender "estado" y modelado de datos (clave en videojuegos). struct: agrupar datos del "mundo". Arrays de structs: enemigos/items. Estado de juego: "lo que el juego sabe". Máquina de estados simple: menú/jugando/game over. Organización del código: game.h/.c, player.h/.c, etc. Proyecto: simulador RPG por turnos con HP/ATK/DEF.

Structs Game State State Machine Arquitectura
SEMANAS 9-10
06

Archivos, Persistencia, y Pulido "de Producto"

⏱️ 2 semanas 🎯 Nivel: Intermediate

Guardar/cargar datos (scores, settings) y mejorar calidad. Archivos: lectura/escritura (fopen, fprintf, fscanf, binario opcional). Guardar puntajes (highscore) y configuración. Manejo de errores (archivo no existe, formato inválido). Pulido: UX de consola, logs, mensajes claros. Reorganizar proyectos en carpetas: src/, include/.

Archivos Save/Load Highscores Organización
SEMANAS 11-12
07

Introducción a raylib: Ventana, Loop, Input, Dibujo 2D

⏱️ 2 semanas 🎯 Nivel: Intermediate

Pasar del mundo consola al mundo "game loop real". Qué es un motor/lib gráfica, qué hace raylib. Setup de proyecto raylib. Concepto game loop: update/draw, delta time. Coordenadas 2D, colores, formas básicas. Input teclado/mouse. Colisiones simples (AABB). Sprites (texturas y rectángulos). Proyecto: Pong o Dodge con menú simple + score.

raylib Setup Game Loop Input Colisiones AABB
SEMANAS 13-14
08

Proyecto Final raylib: Juego Completo Simple

⏱️ 2 semanas 🎯 Nivel: Advanced

Integrar todo: estado, estructura, gameplay, UI, audio opcional. Arquitectura mínima de juego: GameState, Init/Update/Draw/Unload. UI: textos, botones simples (hitbox + mouse). Spawns, dificultad progresiva, balance básico. Audio (si se llega): efectos y música. Export/build final. Opciones: Space Shooter 2D, Breakout, o Top-down collect.

Arquitectura UI Básica Audio Build Final
PROYECTO FINAL
💻

¡APRENDE LAS BASES!

INSCRÍBETE EN INTRODUCCIÓN A C/C++

Bases sólidas en programación
5 juegos completos + código
Metodología 100% práctica
Preparación para motores AAA

💾 Cupos limitados • Inicio próxima cohorte: Marzo 2026