Presentación

Conviértete en uno de los mejores programadores de la industria de los videojuegos con este Máster de Formación Permanente Semipresencial”

##IMAGE##

La industria del videojuego tiene un gran potencial. El incremento de la demanda y las exigencias de los propios Gamers ha llevado a este sector a una carrera por la perfección en sus títulos. El alto nivel de calidad en cada una de las creaciones lleva detrás a un equipo de profesionales de la programación que poseen una excelente cualificación. 

Este Máster de Formación Permanente Semipresencial en Programación de Videojuegos da respuesta a las necesidades actuales del mercado, que reclama a profesionales cada vez más especializados y con un alto grado implicación en las creaciones. La creatividad juega una baza importante, pero sin unos conocimientos sólidos no sería posible obtener unos videojuegos de gran nivel.  

Por esta razón, esta titulación ofrece al alumnado un conocimiento exhaustivo de los fundamentos de la programación e ingeniería software, profundiza en la estructura de datos y algoritmo, además de enseñar la programación orientada a objetos y especificaciones de los motore. Asimismo, este programa aborda la programación en tiempo real para ofrecer al profesional de los videojuegos un Máster de Formación Permanente Semipresencial completo.  

Para alcanzar el objetivo de progreso en la carrera profesional de la Programación de Videojuegos, el alumnado contará con un cuadro docente experto en esta área que lo guiará y lo tutorizará en todo momento. Además, el contenido interactivo con vídeo resúmenes, casos prácticos y lecturas adicionales complementarán el amplio temario puesto a disposición por TECH en esta titulación 100% online y con prácticas en empresa. 

Así, el alumnado podrá completar este recorrido académico con una estancia presencial e intensiva, de 3 semanas de duración, en un estudio puntero en la Programación de Videojuegos. Un entorno profesional ideal, donde podrá comprobar In Situ, los métodos de trabajo, programas y técnicas más sofisticadas para la creación de títulos de alta calidad. Una oportunidad única, que tan solo te ofrece TECH, la universidad digital más grande del mundo. 

Domina la técnica Backtracking y crea los mejores videojuegos de aventura con este Máster de Formación Permanente Semipresencial” 

este Máster de Formación Permanente Semipresencial en Programación de Videojuegos contiene el programa científico más completo y actualizado del mercado. Sus características más destacadas son: 

  • Desarrollo de más de 100 casos de Programación de Videojuegos presentados por profesionales de la programación y profesores universitarios de amplia experiencia en la industria de los videojuegos
  • Sus contenidos gráficos, esquemáticos y eminentemente prácticos con los que están concebidos, recogen una información científica y asistencial sobre aquellas disciplinas médicas indispensables para el ejercicio profesional
  • El desarrollo de casos prácticos presentados por expertos en programación y desarrollo de videojuegos
  • Los contenidos gráficos, esquemáticos y eminentemente prácticos con los que está concebido recogen una información científica y práctica sobre aquellas disciplinas indispensables para el ejercicio profesional
  • Los ejercicios prácticos donde realizar el proceso de autoevaluación para mejorar el aprendizaje
  • Su especial hincapié en metodologías innovadoras
  • Las lecciones teóricas, preguntas al experto, foros de discusión de temas controvertidos y trabajos de reflexión individual
  • La disponibilidad de acceso a los contenidos desde cualquier dispositivo fijo o portátil con conexión a internet
  • Todo esto se complementará con lecciones teóricas, preguntas al experto, foros de discusión de temas controvertidos y trabajos de reflexión individual
  • Disponibilidad de los contenidos desde cualquier dispositivo fijo o portátil con conexión a internet
  • Además, podrás realizar una estancia de prácticas clínicas en uno de los mejores centros hospitalarios

Este programa 100% online te brinda la oportunidad de realizar prácticas en un estudio y ponerte a prueba con los mejores programadores”

En esta propuesta de Máster, de carácter profesional y modalidad semipresencial, el programa está dirigido a la actualización de profesionales de los videojuegos que desarrollan sus funciones en grandes estudios creativos, y que requieren un alto nivel de cualificación. Los contenidos están basados en la última evidencia científica, y orientados de manera didáctica para integrar el saber teórico en la práctica de la industria Gaming y los elementos teórico-prácticos facilitarán la actualización del conocimiento y permitirán la toma de decisiones en la Programación de Videojuegos. 

Gracias a su contenido multimedia elaborado con la última tecnología educativa, permitirán al profesional de los videojuegos un aprendizaje situado y contextual, es decir, un entorno simulado que proporcionará un aprendizaje inmersivo programado para entrenarse ante situaciones reales. El diseño de este programa está centrado en el Aprendizaje Basado en Problemas, mediante el cual deberá tratar de resolver las distintas situaciones de práctica profesional que se le planteen a lo largo del mismo. Para ello, contará con la ayuda de un novedoso sistema de vídeo interactivo realizado por reconocidos expertos. 

Este Máster de Formación Permanente Semipresencial te permitirá ser un referente en el área de la Programación de Videojuegos. Inscríbete ya"

magister semipresencial programacion videojuegos

Desarrolla aplicaciones de manera eficiente aplicadas a motores de videojuegos gracias a este Máster de Formación Permanente Semipresencial.

Temario

Este Máster de Formación Permanente Semipresencial en Programación de Videojuegos ofrece al alumnado un completo y amplio contenido en desarrollo de videojuegos estructurado en 10 módulos especializados. El cuerpo docente que integra esta titulación podrá profundizar en los fundamentos de la programación y adquirir a la vez un conocimiento actualizado y orientado a la práctica. De esta forma, el alumnado recibe una enseñanza de calidad, con contenido novedoso en formato multimedia y descargable para ser consultado en cualquier momento. La capacitación teórica 100% online le concede libertad para distribuir la carga lectiva en función de sus necesidades.

posgrado semipresencial programacion videojuegos

Los contenidos que necesitas para especializarte en programación de videojuegos”  

Módulo 1. Fundamentos de programación 

1.1. Introducción a la programación 

1.1.1. Estructura básica de un ordenador  
1.1.2. Software  
1.1.3. Lenguajes de programación 
1.1.4. Ciclo de vida de una aplicación informática  

1.2. Diseño de algoritmos  

1.2.1. La resolución de problemas  
1.2.2. Técnicas descriptivas  
1.2.3. Elementos y estructura de un algoritmo  

1.3. Elementos de un programa  

1.3.1. Origen y características del lenguaje C++  
1.3.2. El entorno de desarrollo  
1.3.3. Concepto de programa  
1.3.4. Tipos de datos fundamentales  
1.3.5. Operadores  
1.3.6. Expresiones  
1.3.7. Sentencias  
1.3.8. Entrada y salida de datos    

1.4. Sentencias de control  

1.4.1. Sentencias 
1.4.2. Bifurcaciones  
1.4.3. Bucles    

1.5. Abstracción y modularidad: funciones  

1.5.1. Diseño modular  
1.5.2. Concepto de función y utilidad  
1.5.3. Definición de una función  
1.5.4. Flujo de ejecución en la llamada de una función  
1.5.5. Prototipo de una función  
1.5.6. Devolución de resultados  
1.5.7. Llamada a una función: parámetros  
1.5.8. Paso de parámetros por referencia y por valor  
1.5.9. Ámbito identificador    

1.6. Estructuras de datos estáticas  

1.6.1. Arrays  
1.6.2. Matrices. Poliedros  
1.6.3. Búsqueda y ordenación  
1.6.4. Cadenas. Funciones de E/S para cadenas  
1.6.5. Estructuras. Uniones  
1.6.6. Nuevos tipos de datos    

1.7. Estructuras de datos dinámicas: punteros  

1.7.1. Concepto. Definición de puntero  
1.7.2. Operadores y operaciones con punteros 
1.7.3. Arrays de punteros  
1.7.4. Punteros y arrays  
1.7.5. Punteros a cadenas  
1.7.6. Punteros a estructuras  
1.7.7. Indirección múltiple 
1.7.8. Punteros a funciones 
1.7.9. Paso de funciones, estructuras y arrays como parámetros de funciones    

1.8. Ficheros  

1.8.1. Conceptos básicos 
1.8.2. Operaciones con ficheros  
1.8.3. Tipos de ficheros  
1.8.4. Organización de los ficheros 
1.8.5. Introducción a los ficheros C++  
1.8.6. Manejo de ficheros    

1.9. Recursividad  

1.9.1. Definición de recursividad 
1.9.2. Tipos de recursión  
1.9.3. Ventajas e inconvenientes  
1.9.4. Consideraciones  
1.9.5. Conversión recursivo-iterativa  
1.9.6. La pila de recursión    

1.10. Prueba y documentación  

1.10.1. Pruebas de programas  
1.10.2. Prueba de la caja blanca 
1.10.3. Prueba de la caja negra  
1.10.4. Herramientas para realizar las pruebas  
1.10.5. Documentación de programas 

Módulo 2. Estructura de datos y algoritmos 

2.1. Introducción a las estrategias de diseño de algoritmos  

2.1.1. Recursividad 
2.1.2. Divide y conquista 
2.1.3. Otras estrategias    

2.2. Eficiencia y análisis de los algoritmos  

2.2.1. Medidas de eficiencia  
2.2.2. Medir el tamaño de la entrada 
2.2.3. Medir el tiempo de ejecución  
2.2.4. Caso peor, mejor y medio  
2.2.5. Notación asintótica
2.2.6. Criterios de Análisis matemático de algoritmos no recursivos  
2.2.7. Análisis matemático de algoritmos recursivos  
2.2.8. Análisis empírico de algoritmos    

2.3. Algoritmos de ordenación  

2.3.1. Concepto de ordenación 
2.3.2. Ordenación de la burbuja 
2.3.3. Ordenación por selección 
2.3.4. Ordenación por inserción 
2.3.5. Ordenación por mezcla (Merge_Sort)  
2.3.6. Ordenación rápida (Quick_Sort)    

2.4. Algoritmos con árboles  

2.4.1. Concepto de árbol 
2.4.2. Árboles binarios 
2.4.3. Recorridos de árbol 
2.4.4. Representar expresiones 
2.4.5. Árboles binarios ordenados 
2.4.6. Árboles binarios balanceados    

2.5. Algoritmos con heaps  

2.5.1. Los heaps 
2.5.2. El algoritmo heapsort  
2.5.3. Las colas de prioridad    

2.6. Algoritmos con grafos  

2.6.1. Representación  
2.6.2. Recorrido en anchura 
2.6.3. Recorrido en profundidad  
2.6.4. Ordenación topológica    

2.7. Algoritmos greedy  

2.7.1. La estrategia greedy 
2.7.2. Elementos de la estrategia greedy 
2.7.3. Cambio de monedas 
2.7.4. Problema del viajante 
2.7.5. Problema de la mochila    

2.8. Búsqueda de caminos mínimos  

2.8.1. El problema del camino mínimo 
2.8.2. Arcos negativos y ciclos 
2.8.3. Algoritmo de Dijkstra    

2.9. Algoritmos greedy sobre grafos  

2.9.1. El árbol de recubrimiento mínimo 
2.9.2. El algoritmo de Prim 
2.9.3. El algoritmo de Kruskal 
2.9.4. Análisis de complejidad    

2.10. Backtracking  

2.10.1. El Backtracking 
2.10.2. Técnicas alternativas 

Módulo 3. Programación orientada a objetos 

3.1. Introducción a la programación orientada a objetos  

3.1.1. Introducción a la programación orientada a objetos  
3.1.2. Diseño de clases  
3.1.3. Introducción a UML para el modelado de los problemas    

3.2. Relaciones entre clases  

3.2.1. Abstracción y herencia 
3.2.2. Conceptos avanzados de herencia  
3.2.3. Polimorfismo 
3.2.4. Composición y agregación    

3.3. Introducción a los patrones de diseño para problemas orientados a objetos  

3.3.1. ¿Qué son los patrones de diseño? 
3.3.2. Patrón Factory 
3.3.3. Patrón Singleton  
3.3.4. Patrón Observer  
3.3.5. Patrón Composite  

3.4. Excepciones  

3.4.1. ¿Qué son las excepciones?  
3.4.2. Captura y gestión de excepciones 
3.4.3. Lanzamiento de excepciones 
3.4.4. Creación de excepciones  

3.5. Interfaces de usuarios  

3.5.1. Introducción a Qt 
3.5.2. Posicionamiento  
3.5.3. ¿Qué son los eventos?  
3.5.4. Eventos: definición y captura  
3.5.5. Desarrollo de interfaces de usuario  

3.6. Introducción a la programación concurrente  

3.6.1. Introducción a la programación concurrente 
3.6.2. El concepto de proceso e hilo  
3.6.3. Interacción entre procesos o hilos  
3.6.4. Los hilos en C++ 
3.6.5. Ventajas e inconvenientes de la programación concurrente  

3.7. Gestión de hilos y sincronización  

3.7.1. Ciclo de vida de un hilo 
3.7.2. La clase Thread 
3.7.3. Planificación de hilos 
3.7.4. Grupos hilos 
3.7.5. Hilos de tipo demonio 
3.7.6. Sincronización 
3.7.7. Mecanismos de bloqueo 
3.7.8. Mecanismos de comunicación 
3.7.9. Monitores    

3.8. Problemas comunes dentro de la programación concurrente  

3.8.1. El problema de los productores consumidores 
3.8.2. El problema de los lectores y escritores 
3.8.3. El problema de la cena de los filósofos  

3.9. Documentación y pruebas de software  

3.9.1. ¿Por qué es importante documentar el software? 
3.9.2. Documentación de diseño 
3.9.3. Uso de herramientas para la documentación  

3.10. Pruebas de software  

3.10.1. Introducción a las pruebas del software 
3.10.2. Tipos de pruebas 
3.10.3. Prueba de unidad 
3.10.4. Prueba de integración
3.10.5. Prueba de validación 
3.10.6. Prueba del sistema 

Módulo 4. Consolas y dispositivos para videojuegos 

4.1. Historia de la programación en videojuegos  

4.1.1. Periodo Atari (1977-1985) 
4.1.2. Periodo NES y SNES (1985-1995) 
4.1.3. Periodo PlayStation / PlayStation 2 (1995-2005) 
4.1.4. Periodo Xbox 360, PS3 y Wii (2005-2013) 
4.1.5. Periodo Xbox One, PS4 y Wii U-Switch (2013-actualidad) 
4.1.6. El futuro    

4.2. Historia de la jugabilidad en videojuegos  

4.2.1. Introducción 
4.2.2. Contexto social 
4.2.3. Diagrama estructural 
4.2.4. Futuro    

4.3. Adaptación a los tiempos modernos  

4.3.1. Juegos basados en movimiento 
4.3.2. Realidad virtual 
4.3.3. Realidad aumentada 
4.3.4. Realidad mixta    

4.4. Unity: Scripting I y ejemplos  

4.4.1. ¿Qué es un script
4.4.2. Nuestro primer script 
4.4.3. Añadiendo un script 
4.4.4. Abriendo un script 
4.4.5. MonoBehaviour 
4.4.6. Debugging    

4.5. Unity: Scripting II y ejemplos  

4.5.1. Entrada de teclado y ratón 
4.5.2. Raycast 
4.5.3. Instanciación 
4.5.4. Variables 
4.5.5. Variables públicas y serializadas    

4.6. Unity: Scripting III y ejemplos  

4.6.1. Obteniendo componentes 
4.6.2. Modificando componentes 
4.6.3. Testeo
4.6.4. Múltiples objetos 
4.6.5. Colliders y triggers 
4.6.6. Cuaterniones    

4.7. Periféricos  

4.7.1. Evolución y clasificación  
4.7.2. Periféricos e interfaces 
4.7.3. Periféricos actuales 
4.7.4. Futuro próximo    

4.8. Videojuegos: perspectivas futuras  

4.8.1. Juego basado en la nube 
4.8.2. Ausencia de controladores 
4.8.3. Realidad inmersiva 
4.8.4. Otras alternativas    

4.9. Arquitectura  

4.9.1. Necesidades especiales de los videojuegos 
4.9.2. Evolución de la arquitectura 
4.9.3. Arquitectura actual 
4.9.4. Diferencias entre arquitecturas    

4.10. Kits de desarrollo y su evolución  

4.10.1. Introducción 
4.10.2. Tercera generación de kits de desarrollo 
4.10.3. Cuarta generación de kits de desarrollo 
4.10.4. Quinta generación de kits de desarrollo 
4.10.5. Sexta generación de kits de desarrollo  

Módulo 5. Ingeniería de software 

5.1. Introducción a la ingeniería del software y al modelado  

5.1.1. La naturaleza del software 
5.1.2. La naturaleza única de las Webapps 
5.1.3. Ingeniería del software 
5.1.4. El proceso del software 
5.1.5. La práctica de la ingeniería del software 
5.1.6. Mitos del software 
5.1.7. ¿Cómo comienza todo? 
5.1.8. Conceptos orientados a objetos 
5.1.9. Introducción a UML   

5.2. El proceso del software  

5.2.1. Un modelo general de proceso 
5.2.2. Modelos de proceso prescriptivos 
5.2.3. Modelos de proceso especializado  
5.2.4. El proceso unificado  
5.2.5. Modelos del proceso personal y del equipo  
5.2.6. ¿Qué es la agilidad? 
5.2.7. ¿Qué es un proceso ágil?  
5.2.8. Scrum  
5.2.9. Conjunto de herramientas para el proceso ágil    

5.3. Principios que guían la práctica de la ingeniería del software  

5.3.1. Principios que guían el proceso 
5.3.2. Principios que guían la práctica 
5.3.3. Principios de comunicación 
5.3.4. Principios de planificación 
5.3.5. Principios de modelado 
5.3.6. Principios de construcción 
5.3.7. Principios de despliegue    

5.4. Comprensión de los requisitos  

5.4.1. Ingeniería de requisitos  
5.4.2. Establecer las bases  
5.4.3. Indagación de los requisitos 
5.4.4. Desarrollo de casos de uso 
5.4.5. Elaboración del modelo de los requisitos 
5.4.6. Negociación de los requisitos 
5.4.7. Validación de los requisitos  

5.5. Modelado de los requisitos: escenarios, información y clases de análisis  

5.5.1. Análisis de los requisitos  
5.5.2. Modelado basado en escenarios  
5.5.3. Modelos UML que proporcionan el caso de uso  
5.5.4. Conceptos de modelado de datos  
5.5.5. Modelado basado en clases
5.5.6. Diagramas de clases    

5.6. Modelado de los requisitos: flujo, comportamiento y patrones  

5.6.1. Requisitos que modelan las estrategias 
5.6.2. Modelado orientado al flujo 
5.6.3. Diagramas de estado 
5.6.4. Creación de un modelo de comportamiento 
5.6.5. Diagramas de secuencia 
5.6.6. Diagramas de comunicación 
5.6.7. Patrones para el modelado de requisitos    

5.7. Conceptos de diseño  

5.7.1. Diseño en el contexto de la ingeniería del software 
5.7.2. El proceso de diseño 
5.7.3. Conceptos de diseño 
5.7.4. Conceptos de diseño orientado a objetos 
5.7.5. El modelo del diseño    

5.8. Diseño de la arquitectura  

5.8.1. Arquitectura del software  
5.8.2. Géneros arquitectónicos 
5.8.3. Estilos arquitectónicos 
5.8.4. Diseño arquitectónico 
5.8.5. Evolución de los diseños alternativos para la arquitectura 
5.8.6. Mapeo de la arquitectura con el uso del flujo de datos    

5.9. Diseño en el nivel de componentes y basado en patrones  

5.9.1. ¿Qué es un componente? 
5.9.2. Diseño de componentes basados en clase  
5.9.3. Realización del diseño en el nivel de componentes 
5.9.4. Diseño de componentes tradicionales 
5.9.5. Desarrollo basado en componentes 
5.9.6. Patrones de diseño 
5.9.7. Diseño de software basado en patrones 
5.9.8. Patrones arquitectónicos 
5.9.9. Patrones de diseño en el nivel de componentes 
5.9.10. Patrones de diseño de la interfaz de usuario  

5.10. Calidad del software y administración de proyectos  

5.10.1. Calidad 
5.10.2. Calidad del software 
5.10.3. El dilema de la calidad del software  
5.10.4. Lograr la calidad del software  
5.10.5. Aseguramiento de la calidad del software  
5.10.6. El espectro administrativo  
5.10.7. El personal 
5.10.8. El producto  
5.10.9. El proceso  
5.10.10. El proyecto 
5.10.11. Principios y prácticas   

Módulo 6. Motores de videojuegos 

6.1. Los videojuegos y las TICs  

6.1.1. Introducción 
6.1.2. Oportunidades 
6.1.3. Desafíos 
6.1.4. Conclusiones  

6.2. Historia de los motores de videojuegos  

6.2.1. Introducción 
6.2.2. Época Atari 
6.2.3. Época de los 80 
6.2.4. Primeros motores. Época de los 90 
6.2.5. Motores actuales  

6.3. Motores de videojuegos  

6.3.1. Tipos de motores 
6.3.2. Partes de un motor de videojuegos 
6.3.3. Motores actuales 
6.3.4. Selección de un motor para nuestro proyecto  

6.4. Motor Game Maker  

6.4.1. Introducción 
6.4.2. Diseño de escenarios 
6.4.3. Sprites y animaciones 
6.4.4. Colisiones 
6.4.5. Scripting en GML  

6.5. Motor Unreal Engine 4: Introducción  

6.5.1. ¿Qué es Unreal Engine 4? ¿Cuál es su filosofía? 
6.5.2. Materiales  
6.5.3. UI  
6.5.4. Animaciones  
6.5.5. Sistema de partículas  
6.5.6. Inteligencia artificial  
6.5.7. FPS  

6.6. Motor Unreal Engine 4: Visual Scripting  

6.6.1. Filosofía de los Blueprints y el Visual Scripting 
6.6.2. Debugging 
6.6.3. Tipos de variables 
6.6.4. Control de flujo básico  

6.7. Motor Unity 5  

6.7.1. Programación en C# y Visual Studio 
6.7.2. Creación de Prefabs 
6.7.3. Uso de Gizmos para el control del videojuego 
6.7.4. Motor adaptativo: 2D y 3D  

6.8. Motor Godot  

6.8.1. Filosofía de diseño de Godot 
6.8.2. Diseño orientado a objetos y composición 
6.8.3. Todo incluido en un paquete 
6.8.4. Software libre y dirigido por la comunidad  

6.9. Motor RPG Maker  

6.9.1. Filosofía de RPG Maker 
6.9.2. Tomando como referencia 
6.9.3. Crear un juego con personalidad 
6.9.4. Juegos comerciales de éxito  

6.10. Motor Source 2  

6.10.1. Filosofía de Source 2 
6.10.2. Source y Source 2: evolución 
6.10.3. Uso de la comunidad: contenido audiovisual y videojuegos 
6.10.4. Futuro del motor Source 2 
6.10.5. Mods y juegos de éxito 

Módulo 7. Sistemas inteligentes 

7.1. Teoría de agentes  

7.1.1. Historia del concepto 
7.1.2. Definición de agente 
7.1.3. Agentes en Inteligencia Artificial 
7.1.4. Agentes en Ingeniería de Software  

7.2. Arquitecturas de agentes  

7.2.1. El proceso de razonamiento de un agente 
7.2.2. Agentes reactivos 
7.2.3. Agentes deductivos 
7.2.4. Agentes híbridos 
7.2.5. Comparativa  

7.3. Información y conocimiento  

7.3.1. Distinción entre datos, información y conocimiento 
7.3.2. Evaluación de la calidad de los datos 
7.3.3. Métodos de captura de datos 
7.3.4. Métodos de adquisición de información 
7.3.5. Métodos de adquisición de conocimiento  

7.4. Representación del conocimiento  

7.4.1. La importancia de la representación del conocimiento 
7.4.2. Definición de representación del conocimiento a través de sus roles 
7.4.3. Características de una representación del conocimiento  

7.5. Ontologías  

7.5.1. Introducción a los metadatos 
7.5.2. Concepto filosófico de ontología 
7.5.3. Concepto informático de ontología 
7.5.4. Ontologías de dominio y ontologías de nivel superior 
7.5.5. ¿Cómo construir una ontología?

7.6. Lenguajes para ontologías y software para la creación de ontologías  

7.6.1. Tripletas RDF, Turtle y N3 
7.6.2. RDF Schema 
7.6.3. OWL 
7.6.4. SPARQL 
7.6.5. Introducción a las diferentes herramientas para la creación de ontologías 
7.6.6. Instalación y uso de Protégé  

7.7. La web semántica  

7.7.1. El estado actual y futuro de la web semántica 
7.7.2. Aplicaciones de la web semántica  

7.8. Otros modelos de representación del conocimiento  

7.8.1. Vocabularios 
7.8.2. Visión global 
7.8.3. Taxonomías 
7.8.4. Tesauros 
7.8.5. Folksonomías 
7.8.6. Comparativa 
7.8.7. Mapas mentales  

7.9. Evaluación e integración de representaciones del conocimiento  

7.9.1. Lógica de orden cero 
7.9.2. Lógica de primer orden 
7.9.3. Lógica descriptiva 
7.9.4. Relación entre diferentes tipos de lógica 
7.9.5. Prolog: programación basada en lógica de primer orden  

7.10. Razonadores semánticos, sistemas basados en conocimiento y Sistemas Expertos  

7.10.1. Concepto de razonador 
7.10.2. Aplicaciones de un razonador 
7.10.3. Sistemas basados en el conocimiento 
7.10.4. MYCIN, historia de los Sistemas Expertos 
7.10.5. Elementos y Arquitectura de Sistemas Expertos 
7.10.6. Creación de Sistemas Expertos

Módulo 8. Programación en tiempo real 

8.1. Conceptos básicos de la programación concurrente  

8.1.1. Conceptos fundamentales 
8.1.2. Concurrencia 
8.1.3. Beneficios de la concurrencia 
8.1.4. Concurrencia y hardware  

8.2. Estructuras básicas de soporte a la concurrencia en Java  

8.2.1. Concurrencia en Java 
8.2.2. Creación de Threads
8.2.3. Métodos 
8.2.4. Sincronización  

8.3. Threads, ciclo de vida, prioridades, interrupciones, estados, ejecutores  

8.3.1. Threads 
8.3.2. Ciclo de vida 
8.3.3. Prioridades 
8.3.4. Interrupciones 
8.3.5. Estados 
8.3.6. Ejecutores  

8.4. Exclusión mutua  

8.4.1. ¿Qué es la exclusión mutua? 
8.4.2. Algoritmo de Dekker 
8.4.3. Algoritmo de Peterson 
8.4.4. Exclusión mutua en Java  

8.5. Dependencias de estados  

8.5.1. Inyección de dependencias 
8.5.2. Implementación del patrón en Java 
8.5.3. Formas de inyectar las dependencias 
8.5.4. Ejemplo 

8.6. Patrones de diseño  

8.6.1. Introducción 
8.6.2. Patrones de creación 
8.6.3. Patrones de estructura 
8.6.4. Patrones de comportamiento 

8.7. Uso de bibliotecas Java  

8.7.1. ¿Qué son las bibliotecas en Java? 
8.7.2. Mockito-all, mockito-core  
8.7.3. Guava  
8.7.4. Commons-io  
8.7.5. Commons-lang, commons-lang3  

8.8. Programación de shaders  

8.8.1. Pipeline 3D y rasterizado 
8.8.2. Vertex Shading 
8.8.3. Pixel Shading: iluminación I 
8.8.4. Pixel Shading: iluminación II 
8.8.5. Post-effectos  

8.9. Programación de tiempo real  

8.9.1. Introducción 
8.9.2. Procesamiento de interrupciones 
8.9.3. Sincronización y comunicación entre procesos 
8.9.4. Los sistemas de planificación en tiempo real  

8.10. Planificación de tiempo real  

8.10.1. Conceptos 
8.10.2. Modelo de referencia de los sistemas de tiempo real 
8.10.3. Políticas de planificación 
8.10.4. Planificadores cíclicos 
8.10.5. Planificadores con propiedades estáticas 
8.10.6. Planificadores con propiedades dinámicas 

Módulo 9. Diseño y desarrollo de juegos web 

9.1. Orígenes y estándares de la web  

9.1.1. Orígenes de Internet 
9.1.2. Creación de World Wide Web 
9.1.3. Aparición de los estándares web 
9.1.4. El auge de los estándares web  

9.2. HTTP y estructura cliente-servidor  

9.2.1. Rol cliente-servidor 
9.2.2. Comunicación cliente-servidor 
9.2.3. Historia reciente 
9.2.4. Computación centralizada  

9.3. Programación web: introducción  

9.3.1. Conceptos básicos
9.3.2. Preparando un servidor web 
9.3.3. Conceptos básicos de HTML5 
9.3.4. Formas HTML  

9.4. Introducción a HTML y ejemplos  

9.4.1. Historia de HTML5 
9.4.2. Elementos de HTML5 
9.4.3. APIS 
9.4.4. CCS3  

9.5. Modelo de objeto de documento  

9.5.1. ¿Qué es el Modelo de Objetos del Documento? 
9.5.2. Uso de DOCTYPE 
9.5.3. La importancia de validar el HTML 
9.5.4. Accediendo a los elementos 
9.5.5. Creando elementos y textos 
9.5.6. Usando innerHTML 
9.5.7. Eliminando un elemento o nodo de texto 
9.5.8. Lectura y escritura de los atributos de un elemento 
9.5.9. Manipulando los estilos de los elementos 
9.5.10. Adjuntar múltiples ficheros a la vez  

9.6. Introducción a CSS y ejemplos  

9.6.1. Sintaxis CSS3 
9.6.2. Hojas de estilo 
9.6.3. Etiquetas 
9.6.4. Selectores 
9.6.5. Diseño web con CSS  

9.7. Introducción a JavaScript y ejemplos  

9.7.1. ¿Qué es JavaScript? 
9.7.2. Breve historia del lenguaje 
9.7.3. Versiones de JavaScript 
9.7.4. Mostrar un cuadro de diálogo 
9.7.5. Sintaxis de JavaScript 
9.7.6. Comprensión de Scripts
9.7.7. Espacios 
9.7.8. Comentarios 
9.7.9. Funciones 
9.7.10. JavaScript en la página y externo  

9.8. Funciones en JavaScript  

9.8.1. Declaraciones de función 
9.8.2. Expresiones de función 
9.8.3. Llamar a funciones 
9.8.4. Recursividad 
9.8.5. Funciones anidadas y cierres 
9.8.6. Preservación de variables 
9.8.7. Funciones multi-anidadas 
9.8.8. Conflictos de nombres 
9.8.9. Clausuras o cierres 
9.8.10. Parámetros de una función  

9.9. PlayCanvas para desarrollar juegos web  

9.9.1. ¿Qué es PlayCanvas? 
9.9.2. Configuración del proyecto 
9.9.3. Creando un objeto 
9.9.4. Agregando físicas
9.9.5. Añadiendo un modelo 
9.9.6. Cambiando los ajustes de gravedad y escena 
9.9.7. Ejecutando Scripts 
9.9.8. Controles de cámara  

9.10. Phaser para desarrollar juegos web  

9.10.1. ¿Qué es Phaser? 
9.10.2. Cargando recursos 
9.10.3. Construyendo el mundo 
9.10.4. Las plataformas 
9.10.5. El jugador 
9.10.6. Añadir físicas 
9.10.7. Usar el teclado 
9.10.8. Recoger Pickups
9.10.9. Puntos y puntuación 
9.10.10. Bombas de rebote 

Módulo 10. Redes y sistemas multijugador 

10.1. Historia y evolución de videojuegos multijugador  

10.1.1. Década 1970: primeros juegos multijugador 
10.1.2. Años 90: Duke Nukem, Doom, Quake 
10.1.3. Auge de videojuegos multijugador 
10.1.4. Multijugador local y online 
10.1.5. Juegos de fiesta  

10.2. Modelos de negocio multijugador  

10.2.1. Origen y funcionamiento de los modelos de negocio emergentes 
10.2.2. Servicios de venta en línea 
10.2.3. Libre para jugar 
10.2.4. Micropagos 
10.2.5. Publicidad 
10.2.6. Suscripción con pagos mensuales 
10.2.7. Pagar por juego 
10.2.8. Prueba antes de comprar 

10.3. Juegos locales y juegos en red  

10.3.1. Juegos locales: inicios 
10.3.2. Juegos de fiesta: nintendo y la unión de la familia 
10.3.3. Juegos en red: inicios 
10.3.4. Evolución de los juegos en red  

10.4. Modelo OSI: capas I  

10.4.1. Modelo OSI: introducción 
10.4.2. Capa física 
10.4.3. Capa de enlace de datos 
10.4.4. Capa de red  

10.5. Modelo OSI: capas II  

10.5.1. Capa de transporte 
10.5.2. Capa de sesión 
10.5.3. Capa de presentación 
10.5.4. Capa de aplicación  

10.6. Redes de computadores e internet  

10.6.1. ¿Qué es una red de computadoras? 
10.6.2. Software 
10.6.3. Hardware 
10.6.4. Servidores 
10.6.5. Almacenamiento en red 
10.6.6. Protocolos de red  

10.7. Redes móviles e inalámbricas  

10.7.1. Red móvil 
10.7.2. Red inalámbrica 
10.7.3. Funcionamiento de las redes móviles 
10.7.4. Tecnología digital  

10.8. Seguridad  

10.8.1. Seguridad personal 
10.8.2. Hacks cheats en videojuegos 
10.8.3. Seguridad anti-trampas 
10.8.4. Análisis de sistemas de seguridad anti-trampas  

10.9. Sistemas multijugador: servidores  

10.9.1. Alojamiento de servidores 
10.9.2. Videojuegos MMO 
10.9.3. Servidores de videojuegos dedicados 
10.9.4. LAN Parties  

10.10. Diseño de videojuegos multijugador y programación  

10.10.1. Fundamentos de diseño de videojuegos multijugador en Unreal 
10.10.2. Fundamentos de diseño de videojuegos multijugador en Unity 
10.10.3. ¿Cómo hacer que un juego multijugador sea divertido?
10.10.4. Más allá de un mando: Innovación en controles multijugador

mejor master semipresencial programacion videojuegos

Avanza en tu carrera profesional. Domina Phaser y crea de forma rápida juegos para HTML 5 y navegadores web”

Máster Semipresencial en Programación de Videojuegos

Los videojuegos son una de las industrias más importantes de entretenimiento a nivel global, y su crecimiento exponencial ha abierto una gran demanda de profesionales altamente capacitados en el desarrollo de videojuegos. En TECH Universidad Tecnológica sabemos que la demanda de profesionales Experto Universitarios en el área sigue en aumento. Por eso, hemos desarrollado un Máster Semipresencial en Programación de Videojuegos, que te permitirá obtener las habilidades y herramientas necesarias para destacarte en este emocionante campo laboral. El programa se imparte en una modalidad semipresencial que te permitirá combinar el aprendizaje en línea, con clases presenciales impartidas por expertosdel sector. Las clases online te ayudarán a interactuar con otros estudiantes y con el cuerpo docente, mientras que las lecciones presenciales te brindarán la oportunidad de aplicar los conocimientos adquiridos en proyectos prácticos.

Sé un Experto Universitario en la programación de videojuegos

Los videojuegos son una de las industrias con mayor crecimiento en los últimos años, generando empleo en todo el mundo y convirtiéndose en una fuente de entretenimiento muy popular. Por ello, en TECH diseñamos este programa como una alternativa de cualificación, que te brindará las herramientas necesarias para desarrollar videojuegos de calidad. A través de nuestro plan de estudios, adquirirás las habilidades en programación y diseño de videojuegos, claves para destacarte en la industria. Además, tendrás acceso a una amplia variedad de Recursos didácticos en línea, complementado con la asistencia de un tutor personalizado que te guiará en todo el proceso de aprendizaje. Tras culminar la capacitación, serás Experto Universitario en crear y desarrollar videojuegos, utilizando herramientas y tecnologías avanzadas. ¡Inscríbete ya y sé parte de la mayor comunidad académica digital del mundo!