Detalle del libro
Ver Índice
ACERCA DEL AUTOR
PREFACIO
CAPÍTULO 1. INTRODUCCIÓN A UNITY Y C#
1.1 EMPEZANDO
1.1.1 Instalación
1.1.2 Crea un nuevo proyecto
1.2 USAR C# EN UNITY
1.3 EXPLORANDO LA DOCUMENTACIÓN
1.4 FUNDAMENTOS DE C#
1.4.1 Variables y métodos
1.4.2 Clases y comentarios
1.4.3 Estructuras de control
1.4.4 Collections
1.4.5 Bucles
1.5 MANOS A LA OBRA EN UNITY
1.5.1 Diseño del juego, construcción de un nivel
1.5.2 Iluminación básica
1.5.3 Animación
1.6 MOVIMIENTO, CONTROL DE CÁMARA Y COLISIONES
1.6.1 Creando el jugador
1.6.2 Añadir una cámara que sigue al jugador
1.6.3 Trabajando con físicas de Unity
1.6.4 Acceso al componente Rigidbody
1.6.5 Colliders & Collisions
1.6.6 Recoger items
1.6.7 El enemigo
1.7 MECÁNICAS
1.7.1 Saltos
1.7.2 Layer masks (máscaras de capa)
1.7.3 Organizando la jerarquía
1.7.4 Un salto cada vez
1.7.5 Instanciando proyectiles
1.7.6 Mecánica de disparo
1.7.7 Destruyendo proyectiles
1.8 EL GAME MANAGER
1.8.1 Estados globales
1.9 HEAD UP DISPLAY(HUD)
1.9.1 Mostrar las estadísticas del jugador
1.10 VICTORIA Y DERROTA
1.10.1 Pausar y reiniciar el juego
1.10.2 Recapitulando
CAPÍTULO 2. NPCS & IA
2.1 HISTORIA Y EVOLUCIÓN EN VIDEOJUEGOS
2.2 DIFERENCIAS ENTRE IA EN JUEGOS Y IA TRADICIONAL
2.3 NAVEGACIÓN EN EL ESPACIO 3D
2.3.1 NavMesh
2.3.2 Baking
2.3.3 NavMeshAgent
2.3.4 NavMeshAgent Destination
2.4 IR A POR EL JUGADOR
2.5 RECIBIR PELOTAZOS
2.6 LÓGICA DE VICTORIA Y DERROTA
CAPÍTULO 3. APRENDIZAJE AUTOMÁTICO
3.1 EVOLUCIÓN DE LAS TÉCNICAS EN IA
3.1.1 Todo empezó con un gato
3.1.2 Experimento de Hubel y Wiesel
3.1.3 Línea temporal
3.2 ML-AGENTS & PYTORCH
3.2.1 ML-Agents
3.2.2 Fases del desarrollo
3.2.3 Impacto
3.2.4 Instalación de pytorch
3.3 ESCENA Y ENTORNO DE ENTRENAMIENTO (PLANTANDO)
3.3.1 Instalación de “ML Agents” mediante el Package Manager
3.3.2 Creación del entorno
3.4 SCRIPTS
3.4.1 Acciones
3.4.2 Observaciones
3.4.3 Colisiones
3.4.4 Recompensas y penalizaciones
3.4.5 Episodios
3.4.6 Decisiones
3.4.7 Indicador visual de éxitos y fracasos
3.5 CICLO DE ENTRENAMIENTO (REGANDO)
3.6 CICLO DE INFERENCIA (COSECHANDO)
CAPÍTULO 4. CONECTANDO
4.1 LÍNEA TEMPORAL
4.1.1 Los Primeros Pasos (1970-1980)
4.1.2 Experimentación (1980-1990)
4.1.3 Expansión en LAN y el Auge de los FPS (1990-2000)
4.1.4 Era de Internet y Consolas Online (2000-2010)
4.1.5 Juego en Red Moderno (2010-Actualidad)
4.1.6 Soluciones de comunicación en red para Unity
4.1.7 Otras soluciones de Red
4.2 PROYECTO MULTIJUGADOR PARTE 1
4.2.1 Idea de juego y configuración previa
4.2.2 Añadiendo el player
4.2.3 El script de la pelota
4.2.4 Las Paredes y la Escena
4.2.5 El Network Manager
4.2.6 Sincronizando la posición
4.2.7 Inicialización del User Interface(UI)
4.2.8 UI Manager
4.2.9 Script ClientNetworkTransform
CAPÍTULO 5. JUGADORES EN LA RED
5.1 PROYECTO MULTIJUGADOR PARTE 2
5.1.1 Diferenciando jugadores mediante ServerRpc
5.1.2 Conceptos Clave de los Eventos en C#
5.1.3 Game State Manager
5.1.4 UI Manager
5.1.5 Ball Manager
5.2 SELECCIONANDO EL JUGADOR ACTIVO
5.3 ALTERNANDO TURNOS
5.4 SCORE MANAGER
5.4.1 Detección de la caída al agua
5.4.2 Conceptos clave de Corrutinas en C#
5.5 REUTILIZANDO LA PELOTA
5.6 PANELES DE VICTORIA Y DERROTA
5.7 LÓGICA DE VICTORIA Y DERROTA
CAPÍTULO 6. ANDROID APP
6.1 CONECTANDO VÍA IP
6.2 COMPILANDO PARA ANDROID
GLOSARIO DE TÉRMINOS
BIBLIOGRAFÍA
MATERIAL ADICIONAL
Este libro es una guía completa para aprender a desarrollar videojuegos desde cero utilizando Unity y el lenguaje de programación C#, integrando además conceptos fundamentales y avanzados de inteligencia artificial y programación en red.
Con un enfoque didáctico y práctico e impreso a color, la obra comienza desde la instalación de Unity, el diseño de personajes, mecánicas de juego, animaciones, físicas y HUD, hasta alcanzar temas más complejos como el control de NPCs mediante IA, navegación en entornos 3D, y el uso de ML-Agents y PyTorch para el entrenamiento de agentes inteligentes.
A lo largo de sus capítulos, el lector también descubrirá cómo implementar multijugador con soluciones como Mirror y Netcode, sincronizar estados de juego, y desplegar juegos en dispositivos Android. Cada sección incluye ejemplos detallados, scripts comentados y prácticas que permiten al lector construir un proyecto funcional y escalable.
Este libro está dirigido a estudiantes, desarrolladores y cualquier autodidacta que quiera dominar la programación de videojuegos con IA, aprender C# en el entorno Unity y llevar sus juegos al siguiente nivel con conectividad en red y aprendizaje automático.
Contenidos adaptados al Curso de Especialización en Desarrollo de Videojuegos y Realidad Virtual.