descargar pdf del curso
Transcripción
descargar pdf del curso
Técnicas Avanzadas Desarrollo de Videojuegos Courses Online Digital Innovation Objetivos El objetivo de este CURSO , titulado «Técnicas Avanzadas de Desarrollo» que pertenece al area del Curso de Experto en Desarrollo de Videojuegos, es profundizar es aspectos de desarrollo más avanzados que complementen el resto de contenidos de dicho curso y permitan explorar solución es más eficientes en el contexto del desarrollo de videojuegos. En este módulo se introducen aspectos básicos de jugabilidad y se describen algunas metodologías de desarrollo de videojuegos. Así mismo, también se estudian los fundamentos básicos de la validación y pruebas en este proceso de desarrollo. Por otra parte, en este módulo también se estudia un aspecto esencial en el desarrollo de videojuegos: la simulación física. No obstante, uno de los componentes más importantes del presente módulo está relacionado con aspectos avanzados del lenguaje de programación C++, como por ejemplo el estudio en profundidad de la biblioteca SDL, y las optimizaciones. Finalmente, el presente módulo se complementa con el estudio de la gestión de widgets y el estudio de la plataforma de desarrollo de videojuegos Unity, especialmente ideada para el desarrollo de juegos en plataformas móviles. ¿A quién va dirigido? Tiene un perfil principalmente técnico. Orientado a la capacitación de profesionales de la programación de videojuegos. Se asume que el lector es capaz de desarrollar programas de nivel medio en C y C++. Aunque se describen algunos aspectos clave de C++ a modo de resumen, es recomendable refrescar los conceptos básicos con alguno de los libros recogidos en la bibliografía del curso. De igual modo, se asume que el lector tiene conocimientos de estructuras de datos y algoritmia. El libro está orientado principalmente para titulados o estudiantes de últimos cursos de Ingeniería en Informática. 2 Temario 1. Aspectos de Jugabilidad y Metodologías de Desarrollo 2. Jugabilidad y Experiencia del Jugador Introducción Caracterización de la Jugabilidad Facetas de la Jugabilidad Calidad de un juego en base a la Jugabilidad Metodologías de Producción y Desarrollo Pre-Producción Producción Post-Producción Metodologías Alternativas Proceso Unificado del Juego Desarrollo Incremental Desarrollo Ágil y Scrum Desarrollo Centrado en el Jugador C++ Avanzado Programación genérica Algoritmos Predicados Functors Adaptadores Algoritmos idempotentes Algoritmos de transformación Algoritmos de ordenación Algoritmos numéricos Ejemplo: inventario de armas Aspectos avanzados de la STL Eficiencia Semántica de copia Extendiendo la STL 3 3. Allocators Estructuras de datos no lineales Árboles binarios Recorrido de árboles Quadtree y octree Patrones de diseño avanzados Forma canónica ortodoxa Smart pointers Handle-body Command Curiously recurring template pattern Acceptor/Connector C++11: Novedades del nuevo estándar Compilando con g++ y clang Cambios en el núcleo del lenguaje Cambios en la biblioteca de C++ Plugins Entendiendo las bibliotecas dinámicas Plugins con libdl Plugins con Glib gmodule Carga dinámica desde Python Plugins como objetos mediante el patrón Factory o Method Plugins multi-plataforma Técnicas específicas Serialización de objetos Streams Serialización y Dependencias entre objetos Serialización con Boost C++ y scripting Consideraciones de diseño Invocando Python desde C++ de forma nativa Librería boost Herramienta SWIG Conclusiones 4 4. Optimización 5. Perfilado de programas El perfilador de Linux perf Obteniendo ayuda Estadísticas y registro de eventos Multiplexación y escalado Métricas por hilo, por proceso o por CPU Muestreo de eventos Otras opciones de perf Otros perfiladores Optimizaciones del compilador Variables registro Código estático y funciones inline Eliminación de copias Volatile Conclusiones Validación y Pruebas 6. Programación defensiva Sobrecarga Desarrollo ágil TDD Las pruebas primero rojo, verde, refactorizar Tipos de pruebas Pruebas unitarias con google-tests Dobles de prueba Dobles de prueba con google-mock Limitaciones Empaquetado y distribución Empaquetado y distribución en Windows Creación de un paquete básico Interacción con el usuario Otras características 5 7. Empaquetado y distribución en GNU/Linux Pidiendo un paquete Obteniendo el fuente original Estructura básica Construcción del paquete Parches: adaptación a Debian Actualización del paquete Subir un paquete a Debian Otros formatos de paquete Representación Avanzada Fundamentos Billboards Sistemas de partículas Uso de Billboards Tipos de Billboard Aplicando texturas Uso de Sistemas de Partículas Emisores Efectores Ejemplos de Sistemas de Partículas Introducción a los Shaders Un poco de historia ¿Y qué es un Shader? Pipelines Gráficos Fixed-Function Pipeline Programmable-Function Pipeline Aplicaciones de los Shader Lenguajes de Shader Desarrollo de shaders en Ogre Primer Shader Comprobando la interpolación del color Usando una textura Jugando con la textura Jugando con los vértices Iluminación mediante shaders Optimización de interiores 6 8. Introducción Técnicas y Algoritmos Manejo de escenas en OGRE Optimización de Exteriores Introducción Estructuras de datos Determinación de la resolución Técnicas y Algoritmos Exteriores y LOD en OGRE Conclusiones Plataformas Móviles Método de trabajo con un motor de videojuegos Generación de contenido externo al motor Generación de contenido interno al motor Creación de escenas Creación de prefabs Programación de scripts Algunos scripts básicos Triggers Invocación de métodos retardada Comunicación entre diferentes scripts Control del flujo general de la partida Programación de enemigos Programación del control del jugador Programación del interface Optimización Light mapping Occlusion culling Resultado final Acerca del curso El usuario dispone de 3 meses para realizar el curso a partir de la fecha de inicio del mismo. 7 Reserva enviado un mail a [email protected] , con tus datos de contacto y código de cupón. Una vez efectuada la reserva, recibirás un correo con tus claves de acceso. A través del Campus Online y la atención personalizada de tu profesorlograrás alcanzar tus objetivos. En el momento que contratas un curso empiezas a estudiar, a tu ritmo, sin horarios e irás progresando de forma efectiva: no hay pérdidas de clases o conocimientos. Una vez superes los ejercicios se da acceso al siguiente tema y así sucesivamente. Dispondrás del apoyo y seguimiento de un tutor personal, experto y especializado en la materia, que responderá a tus dudas y preguntas. Puedes seguir el curso en tu tableta. Recibirás un diploma acreditativo del Centro de Estudios Tecnológicos CODI , tras la superación de todas las pruebas de evaluación. Programa del Curso Duración: 80 h, a lo largo de 3 meses. Enfoque global y práctico, para la aplicación inmediata. Incluye power points, documentación en pdf y un test de evaluación final (30 preguntas ) Disponible 24 h al día, 7 días a la semana, en soporte web o por mail. Níngún requisito , ¡solo tu creatividad! Recibirás tu diploma una vez terminado el curso con aprovechamiento. Certificados disponibles : Firma y sello de Centro Formativo CODI. Camerfirma . Certificado digital de los documentos expedidos. Opcionables : Sello de certificación de calidad del fondo Social Europeo. Apostillado de La Haya. Precio PVP : 390 euros 8 ¿A quién va destinado este curso? Aprender a crear un videojuego desde el punto de vista del programador. Apropiado para todos los que tengan conocimientos de programación informática y quieran introducirse en el próspero mundo de los videojuegos. Emprendedores que quieran llevar a cabo su proyecto. Diseñadores de Niveles que quieran profundizar en la creación de videojuegos. Fanáticos de los videojuegos. Preguntas frecuentes Q: ¿ Conseguiré un certificado después de acabar las clases ? Si. Los alumnos que completen de forma satisfactoria la formación, recibirán un certificado firmado por el tutor. Q: ¿ Qué recursos necesito para terminar este curso ? Aptitud para la programación informática. Q: ¿ Es un curso válido para los dispositivos móviles ? Desde luego que sí, ya que la muchos de los juegos que se elaboran hoy en día son para Smartphones y Tablets. 9