Curso teórico-práctico sobre Desarrollo de Videojuegos (DEV) orientado hacia la creación de contenido y desarrollo de jugabilidad mediante un lenguaje de programación visual como Blueprints en Unreal Engine. Impartido en el Máster en Ingeniería Informática de la Universidad Complutense de Madrid.
Curso teórico-práctico sobre Desarrollo de Videojuegos (DEV) orientado hacia la creación de contenido y desarrollo de jugabilidad mediante un lenguaje de programación visual como Blueprints en Unreal Engine. Impartido en el Máster en Ingeniería Informática de la Universidad Complutense de Madrid.
Curso teórico-práctico sobre Desarrollo de Videojuegos (DEV) orientado hacia la creación de contenido y desarrollo de jugabilidad mediante un lenguaje de programación visual como Blueprints en Unreal Engine. Impartido en el Máster en Ingeniería Informática de la Universidad Complutense de Madrid.
Curso teórico-práctico sobre Desarrollo de Videojuegos (DEV) orientado hacia la creación de contenido y desarrollo de jugabilidad mediante un lenguaje de programación visual como Blueprints en Unreal Engine. Impartido en el Máster en Ingeniería Informática de la Universidad Complutense de Madrid.
Este documento discute varios temas relacionados con la optimización del rendimiento en el desarrollo de videojuegos con Unreal Engine. Explica que tanto Blueprints como C++ tienen sus ventajas y desventajas, y que las herramientas de depuración son importantes para evitar errores que afecten al rendimiento. También ofrece consejos sobre buenas prácticas de optimización como evitar el uso excesivo de Get All y Tick, y recomienda herramientas como Stat, Profiling e Insights para analizar y mejorar el rendim
Curso teórico-práctico sobre Desarrollo de Videojuegos (DEV) orientado hacia la creación de contenido y desarrollo de jugabilidad mediante un lenguaje de programación visual como Blueprints en Unreal Engine. Impartido en el Máster en Ingeniería Informática de la Universidad Complutense de Madrid.
Este documento introduce Unity y sus características principales. Explica cómo instalar Unity y crear un proyecto básico 3D llamado Intro. Describe la interfaz de Unity y comandos útiles como mover objetos y la cámara. También cubre componentes comunes, herencia de objetos, prefabs y la Asset Store.
Este documento resume la historia y desarrollo de los videojuegos electrónicos desde sus inicios en la década de 1950 hasta la actualidad. Cubre los avances tecnológicos de las consolas a través de las generaciones, los principales géneros de juegos, y los conceptos clave de ingeniería de software y desarrollo para la creación de juegos.
Curso teórico-práctico sobre Desarrollo de Videojuegos (DEV) orientado hacia la creación de contenido y desarrollo de jugabilidad mediante un lenguaje de programación visual como Blueprints en Unreal Engine. Impartido en el Máster en Ingeniería Informática de la Universidad Complutense de Madrid.
Curso teórico-práctico sobre Desarrollo de Videojuegos (DEV) orientado hacia la creación de contenido y desarrollo de jugabilidad mediante un lenguaje de programación visual como Blueprints en Unreal Engine. Impartido en el Máster en Ingeniería Informática de la Universidad Complutense de Madrid.
Curso teórico-práctico sobre Desarrollo de Videojuegos (DEV) orientado hacia la creación de contenido y desarrollo de jugabilidad mediante un lenguaje de programación visual como Blueprints en Unreal Engine. Impartido en el Máster en Ingeniería Informática de la Universidad Complutense de Madrid.
Este documento discute varios temas relacionados con la optimización del rendimiento en el desarrollo de videojuegos con Unreal Engine. Explica que tanto Blueprints como C++ tienen sus ventajas y desventajas, y que las herramientas de depuración son importantes para evitar errores que afecten al rendimiento. También ofrece consejos sobre buenas prácticas de optimización como evitar el uso excesivo de Get All y Tick, y recomienda herramientas como Stat, Profiling e Insights para analizar y mejorar el rendim
Curso teórico-práctico sobre Desarrollo de Videojuegos (DEV) orientado hacia la creación de contenido y desarrollo de jugabilidad mediante un lenguaje de programación visual como Blueprints en Unreal Engine. Impartido en el Máster en Ingeniería Informática de la Universidad Complutense de Madrid.
Este documento introduce Unity y sus características principales. Explica cómo instalar Unity y crear un proyecto básico 3D llamado Intro. Describe la interfaz de Unity y comandos útiles como mover objetos y la cámara. También cubre componentes comunes, herencia de objetos, prefabs y la Asset Store.
Este documento resume la historia y desarrollo de los videojuegos electrónicos desde sus inicios en la década de 1950 hasta la actualidad. Cubre los avances tecnológicos de las consolas a través de las generaciones, los principales géneros de juegos, y los conceptos clave de ingeniería de software y desarrollo para la creación de juegos.
Este documento resume la historia y desarrollo de los videojuegos electrónicos desde sus inicios en la década de 1950 hasta la actualidad. Explica los principales hitos como los primeros juegos creados en osciloscopios y computadoras, el surgimiento de las consolas domésticas y las compañías líderes del mercado, la evolución gráfica y tecnológica por generaciones de hardware, y los principales géneros y tendencias en el diseño de juegos. También describe los conceptos clave de ingeniería de software
Este documento resume la historia y desarrollo de los videojuegos electrónicos desde sus inicios en la década de 1950 hasta la actualidad. Explica los principales hitos tecnológicos de las consolas a través de las generaciones, los géneros más populares de juegos, y los conceptos clave de ingeniería de software para el desarrollo de videojuegos como el bucle de juego, gráficos, sonido, entrada, redes y motores de juegos.
Este documento resume un proyecto de desarrollo de un videojuego en Blender llamado Knight Lore. El proyecto tuvo como objetivos conocer el proceso de producción de videojuegos, analizar el juego original Knight Lore y desarrollar una adaptación usando Blender. El documento describe el análisis realizado, el diseño e implementación del juego adaptado, incluyendo mecánicas, personajes, niveles y pruebas, concluyendo con 5 errores encontrados y corregidos durante las pruebas.
Frameworks para el desarrollo de juegos para dispositivo móvilesADWE Team
Conferencia relizada en ADWE Alicante por Daniel Nebot (@daniinebot) en el espacio CAMON sobre diferentes Frameworks para el desarrollo de juegos para dispositivo móviles
Programación de videojuegos con Godot Enginepythoncanarias
El documento presenta el motor de videojuegos Godot Engine, destacando que es de código abierto, multiplataforma y gratuito. Ofrece características como gráficos 2D/3D, física, sonido, exportación a distintas plataformas y un entorno de trabajo basado en escenas y nodos programables. El lenguaje de scripting recomendado es GDPython, que permite aprovechar las ventajas de Python para crear funcionalidad personalizada.
Curso teórico-práctico sobre Desarrollo de Videojuegos (DEV) orientado hacia la creación de contenido y desarrollo de jugabilidad mediante un lenguaje de programación visual como Blueprints en Unreal Engine. Impartido en el Máster en Ingeniería Informática de la Universidad Complutense de Madrid.
El documento describe la instalación de los sistemas operativos Windows 7, Ubuntu Linux 14.4 y la configuración de una máquina virtual en VirtualBox para alojar dichas instalaciones. Se especifican los requisitos técnicos de hardware para cada sistema operativo y se detallan los pasos seguidos para la instalación y configuración correcta de ambos SO en la máquina virtual.
Droidtick es una aplicación para convertir dispositivos Android en gamepads para PC. El documento describe el desarrollo del prototipo inicial y las mejoras realizadas, incluyendo un nuevo diseño visual atractivo, la eliminación de lag, soporte para pantallas múltiples, y compatibilidad multiplataforma entre Android y Windows/Linux. El resultado final es una aplicación popular con miles de descargas que permite la configuración completa del gamepad virtual.
La creación de personajes en videojuegos requiere varios pasos: 1) Diseñar y modelar el personaje en software 3D, 2) Importar los recursos del personaje a Unreal Engine, 3) Programar el control y comportamiento del personaje, 4) Crear animaciones para el personaje usando Animation Blueprints, 5) Integrar el personaje terminado en el juego para pruebas.
GCV 03 Herramientas de desarrollo: Específicas para Videojuegos - Gestión de ...Federico Peinado
Para gestionar bien la calidad en videojuegos, se utilizan herramientas de desarrollo específicas como la reutilización de código y assets, las pruebas de concepto para iterar rápidamente sobre ideas, y las pruebas automatizadas para reducir costes y tiempo en la detección de errores. Adicionalmente, es importante la depuración, optimización, industrialización para cumplir estándares de plataformas, y realizar análisis una vez el juego esté en producción.
Este documento presenta una serie de ocho sesiones web sobre el desarrollo de juegos de video con C#. Explica los objetivos y agenda de la serie, que incluyen introducir conceptos básicos de programación, desarrollo de juegos y C#. También proporciona antecedentes sobre la industria de los juegos y DigiPen Institute of Technology.
Curso teórico-práctico sobre Diseño de Videojuegos (DV) fuertemente basado en el modelo de Mecánica-Dinámica-Estética, impartido en la Universidad Complutense de Madrid.
El documento describe diferentes programas de virtualización como Windows Virtual PC, VMware y sus manuales de uso. Windows Virtual PC permite ejecutar sistemas operativos como huéspedes dentro de una máquina virtual en un sistema anfitrión como Windows 7. VMware también permite virtualizar sistemas operativos de forma multiplataforma. Los manuales proveen instrucciones para instalar y usar estas herramientas de virtualización.
Este documento proporciona información sobre máquinas virtuales y software de virtualización. Describe Windows Virtual PC, VMware y manuales sobre Virtual PC. Windows Virtual PC permite ejecutar múltiples sistemas operativos en una sola máquina de manera virtual. VMware es un programa multiplataforma para emular o simular sistemas operativos. Los manuales de Virtual PC explican cómo instalar y usar el software para probar sistemas operativos de manera virtual sin riesgos.
El documento describe diferentes programas de virtualización como Windows Virtual PC, VMware y sus manuales de uso. Windows Virtual PC permite ejecutar múltiples sistemas operativos de manera virtual en una sola máquina física. VMware es una alternativa multiplataforma. Los manuales explican cómo instalar y usar Virtual PC para probar diferentes sistemas operativos de forma aislada sin modificar la configuración del equipo anfitrión.
El documento describe varias herramientas en Unreal Engine para crear cinemáticas y localizar contenido. Explica que Sequencer permite crear secuencias con pistas para mover, animar y reproducir audio. También cubre la importación de videos externos, la grabación de gameplay y la exportación de secuencias a video. Por último, detalla las herramientas de localización como Localization Targets y Localization Dashboard para traducir textos a diferentes idiomas.
Este documento presenta el proceso de instalación de un arranque dual de los sistemas operativos Windows 7 y Ubuntu 16.04 en una máquina virtual. Primero se describen los requisitos técnicos de cada sistema operativo. Luego, se explica cómo se creó la máquina virtual en VirtualBox y se instaló Windows 7 en la primera mitad del disco asignado. Finalmente, se detalla el procedimiento que se seguirá para instalar Ubuntu en la segunda mitad del disco y configurar el arranque dual.
Gráficos 3D en Linux con Mesa (GPUL Labs Meetup)Igalia
Por Iago Toral Quiroga.
Con motivo de la XDC 2018 que del día 26 al 28 de Septiembre tendrá lugar en la Facultad de Informática, queremos hacer una pequeña introducción a las APIs de gráficos para que todos los interesados en la temática podáis aprovechar y os
animéis a asistir a la conferencia internacional.
El proyecto Mesa 3D comenzó en el año 1993 como un proyecto personal de Brian Paul, quien estaba interesado en implementar una libreria sencilla de de gráficos 3D basada en al API de OpenGL. Desde entonces Mesa se ha convertido en uno de los proyectos de software libre más relevantes, contando con una importante inversión por parte de empresas del sector como Intel, AMD, Valve o RedHat entre otras, asi como de miembros de la comunidad de software libre.
Mesa proporciona implementaciones libres tanto de drivers hardware como software para una colección de APIs, entre las que se incluyen OpenGL y también Vulkan, el nuevo API de gráficos 3D del grupo Khronos, un API de más bajo nivel
orientada a sacar el máximo rendimiento del hardware GPU moderno.
Esta charla se centrará en dos aspectos principales: por una lado, dar una introducción al proyecto Mesa, cubriendo sus fundamentos, aplicaciones y evolución en los últimos años asi como el papel que juega en el stack gráfico de Linux, y por otro, dar una breve introducción al funcionamiento del hardware 3D moderno y como se explota desde APIs como OpenGL o Vulkan.
GPUL Labs Meetup
19 Setembro 2018
https://www.meetup.com/es-ES/GPUL-Labs/events/254337745/
Este documento describe las herramientas de autoría que son necesarias para crear contenido para videojuegos, incluyendo inteligencia artificial. Explica que las herramientas de edición de datos, guionización visual y gráficos de comportamiento son cruciales para diseñar comportamientos no jugables, navegación y toma de decisiones. También cubre herramientas para generación procedural de contenido y simulaciones tácticas.
Este documento describe las interfaces del mundo en los videojuegos y la inteligencia artificial. Explica que la interfaz del mundo representa el entorno de forma estable para apoyar los comportamientos de los agentes. Detalla dos técnicas para obtener información del entorno: sondeos y paso de mensajes. Con sondeos, las estaciones de sondeo pueden centralizar y almacenar en caché los chequeos para mejorar la escalabilidad. Con paso de mensajes, los comportamientos se suscriben a un gestor de eventos que notifica mensajes sobre eventos.
Este documento resume la historia y desarrollo de los videojuegos electrónicos desde sus inicios en la década de 1950 hasta la actualidad. Explica los principales hitos como los primeros juegos creados en osciloscopios y computadoras, el surgimiento de las consolas domésticas y las compañías líderes del mercado, la evolución gráfica y tecnológica por generaciones de hardware, y los principales géneros y tendencias en el diseño de juegos. También describe los conceptos clave de ingeniería de software
Este documento resume la historia y desarrollo de los videojuegos electrónicos desde sus inicios en la década de 1950 hasta la actualidad. Explica los principales hitos tecnológicos de las consolas a través de las generaciones, los géneros más populares de juegos, y los conceptos clave de ingeniería de software para el desarrollo de videojuegos como el bucle de juego, gráficos, sonido, entrada, redes y motores de juegos.
Este documento resume un proyecto de desarrollo de un videojuego en Blender llamado Knight Lore. El proyecto tuvo como objetivos conocer el proceso de producción de videojuegos, analizar el juego original Knight Lore y desarrollar una adaptación usando Blender. El documento describe el análisis realizado, el diseño e implementación del juego adaptado, incluyendo mecánicas, personajes, niveles y pruebas, concluyendo con 5 errores encontrados y corregidos durante las pruebas.
Frameworks para el desarrollo de juegos para dispositivo móvilesADWE Team
Conferencia relizada en ADWE Alicante por Daniel Nebot (@daniinebot) en el espacio CAMON sobre diferentes Frameworks para el desarrollo de juegos para dispositivo móviles
Programación de videojuegos con Godot Enginepythoncanarias
El documento presenta el motor de videojuegos Godot Engine, destacando que es de código abierto, multiplataforma y gratuito. Ofrece características como gráficos 2D/3D, física, sonido, exportación a distintas plataformas y un entorno de trabajo basado en escenas y nodos programables. El lenguaje de scripting recomendado es GDPython, que permite aprovechar las ventajas de Python para crear funcionalidad personalizada.
Curso teórico-práctico sobre Desarrollo de Videojuegos (DEV) orientado hacia la creación de contenido y desarrollo de jugabilidad mediante un lenguaje de programación visual como Blueprints en Unreal Engine. Impartido en el Máster en Ingeniería Informática de la Universidad Complutense de Madrid.
El documento describe la instalación de los sistemas operativos Windows 7, Ubuntu Linux 14.4 y la configuración de una máquina virtual en VirtualBox para alojar dichas instalaciones. Se especifican los requisitos técnicos de hardware para cada sistema operativo y se detallan los pasos seguidos para la instalación y configuración correcta de ambos SO en la máquina virtual.
Droidtick es una aplicación para convertir dispositivos Android en gamepads para PC. El documento describe el desarrollo del prototipo inicial y las mejoras realizadas, incluyendo un nuevo diseño visual atractivo, la eliminación de lag, soporte para pantallas múltiples, y compatibilidad multiplataforma entre Android y Windows/Linux. El resultado final es una aplicación popular con miles de descargas que permite la configuración completa del gamepad virtual.
La creación de personajes en videojuegos requiere varios pasos: 1) Diseñar y modelar el personaje en software 3D, 2) Importar los recursos del personaje a Unreal Engine, 3) Programar el control y comportamiento del personaje, 4) Crear animaciones para el personaje usando Animation Blueprints, 5) Integrar el personaje terminado en el juego para pruebas.
GCV 03 Herramientas de desarrollo: Específicas para Videojuegos - Gestión de ...Federico Peinado
Para gestionar bien la calidad en videojuegos, se utilizan herramientas de desarrollo específicas como la reutilización de código y assets, las pruebas de concepto para iterar rápidamente sobre ideas, y las pruebas automatizadas para reducir costes y tiempo en la detección de errores. Adicionalmente, es importante la depuración, optimización, industrialización para cumplir estándares de plataformas, y realizar análisis una vez el juego esté en producción.
Este documento presenta una serie de ocho sesiones web sobre el desarrollo de juegos de video con C#. Explica los objetivos y agenda de la serie, que incluyen introducir conceptos básicos de programación, desarrollo de juegos y C#. También proporciona antecedentes sobre la industria de los juegos y DigiPen Institute of Technology.
Curso teórico-práctico sobre Diseño de Videojuegos (DV) fuertemente basado en el modelo de Mecánica-Dinámica-Estética, impartido en la Universidad Complutense de Madrid.
El documento describe diferentes programas de virtualización como Windows Virtual PC, VMware y sus manuales de uso. Windows Virtual PC permite ejecutar sistemas operativos como huéspedes dentro de una máquina virtual en un sistema anfitrión como Windows 7. VMware también permite virtualizar sistemas operativos de forma multiplataforma. Los manuales proveen instrucciones para instalar y usar estas herramientas de virtualización.
Este documento proporciona información sobre máquinas virtuales y software de virtualización. Describe Windows Virtual PC, VMware y manuales sobre Virtual PC. Windows Virtual PC permite ejecutar múltiples sistemas operativos en una sola máquina de manera virtual. VMware es un programa multiplataforma para emular o simular sistemas operativos. Los manuales de Virtual PC explican cómo instalar y usar el software para probar sistemas operativos de manera virtual sin riesgos.
El documento describe diferentes programas de virtualización como Windows Virtual PC, VMware y sus manuales de uso. Windows Virtual PC permite ejecutar múltiples sistemas operativos de manera virtual en una sola máquina física. VMware es una alternativa multiplataforma. Los manuales explican cómo instalar y usar Virtual PC para probar diferentes sistemas operativos de forma aislada sin modificar la configuración del equipo anfitrión.
El documento describe varias herramientas en Unreal Engine para crear cinemáticas y localizar contenido. Explica que Sequencer permite crear secuencias con pistas para mover, animar y reproducir audio. También cubre la importación de videos externos, la grabación de gameplay y la exportación de secuencias a video. Por último, detalla las herramientas de localización como Localization Targets y Localization Dashboard para traducir textos a diferentes idiomas.
Este documento presenta el proceso de instalación de un arranque dual de los sistemas operativos Windows 7 y Ubuntu 16.04 en una máquina virtual. Primero se describen los requisitos técnicos de cada sistema operativo. Luego, se explica cómo se creó la máquina virtual en VirtualBox y se instaló Windows 7 en la primera mitad del disco asignado. Finalmente, se detalla el procedimiento que se seguirá para instalar Ubuntu en la segunda mitad del disco y configurar el arranque dual.
Gráficos 3D en Linux con Mesa (GPUL Labs Meetup)Igalia
Por Iago Toral Quiroga.
Con motivo de la XDC 2018 que del día 26 al 28 de Septiembre tendrá lugar en la Facultad de Informática, queremos hacer una pequeña introducción a las APIs de gráficos para que todos los interesados en la temática podáis aprovechar y os
animéis a asistir a la conferencia internacional.
El proyecto Mesa 3D comenzó en el año 1993 como un proyecto personal de Brian Paul, quien estaba interesado en implementar una libreria sencilla de de gráficos 3D basada en al API de OpenGL. Desde entonces Mesa se ha convertido en uno de los proyectos de software libre más relevantes, contando con una importante inversión por parte de empresas del sector como Intel, AMD, Valve o RedHat entre otras, asi como de miembros de la comunidad de software libre.
Mesa proporciona implementaciones libres tanto de drivers hardware como software para una colección de APIs, entre las que se incluyen OpenGL y también Vulkan, el nuevo API de gráficos 3D del grupo Khronos, un API de más bajo nivel
orientada a sacar el máximo rendimiento del hardware GPU moderno.
Esta charla se centrará en dos aspectos principales: por una lado, dar una introducción al proyecto Mesa, cubriendo sus fundamentos, aplicaciones y evolución en los últimos años asi como el papel que juega en el stack gráfico de Linux, y por otro, dar una breve introducción al funcionamiento del hardware 3D moderno y como se explota desde APIs como OpenGL o Vulkan.
GPUL Labs Meetup
19 Setembro 2018
https://www.meetup.com/es-ES/GPUL-Labs/events/254337745/
Este documento describe las herramientas de autoría que son necesarias para crear contenido para videojuegos, incluyendo inteligencia artificial. Explica que las herramientas de edición de datos, guionización visual y gráficos de comportamiento son cruciales para diseñar comportamientos no jugables, navegación y toma de decisiones. También cubre herramientas para generación procedural de contenido y simulaciones tácticas.
Este documento describe las interfaces del mundo en los videojuegos y la inteligencia artificial. Explica que la interfaz del mundo representa el entorno de forma estable para apoyar los comportamientos de los agentes. Detalla dos técnicas para obtener información del entorno: sondeos y paso de mensajes. Con sondeos, las estaciones de sondeo pueden centralizar y almacenar en caché los chequeos para mejorar la escalabilidad. Con paso de mensajes, los comportamientos se suscriben a un gestor de eventos que notifica mensajes sobre eventos.
Curso teórico-práctico sobre Inteligencia Artificial para Videojuegos (IAV) basado en el modelo de propone Ian Millington en su libro, impartido en la Universidad Complutense de Madrid.
Curso teórico-práctico sobre Inteligencia Artificial para Videojuegos (IAV) basado en el modelo de propone Ian Millington en su libro, impartido en la Universidad Complutense de Madrid.
Curso teórico-práctico sobre Inteligencia Artificial para Videojuegos (IAV) basado en el modelo de propone Ian Millington en su libro, impartido en la Universidad Complutense de Madrid.
Curso teórico-práctico sobre Inteligencia Artificial para Videojuegos (IAV) basado en el modelo de propone Ian Millington en su libro, impartido en la Universidad Complutense de Madrid.
Curso teórico-práctico sobre Inteligencia Artificial para Videojuegos (IAV) basado en el modelo de propone Ian Millington en su libro, impartido en la Universidad Complutense de Madrid.
Curso teórico-práctico sobre Inteligencia Artificial para Videojuegos (IAV) basado en el modelo de propone Ian Millington en su libro, impartido en la Universidad Complutense de Madrid.
El documento describe los árboles de comportamiento, una técnica ampliamente utilizada en inteligencia artificial para videojuegos. Explica que los árboles de comportamiento se popularizaron con el juego Halo 2 al ofrecer una mezcla comprensible de técnicas como máquinas de estados finitos jerárquicas y planificación reactiva. También discute el uso de árboles de comportamiento con gestores de acciones, arquitecturas de pizarra, nodos de control de flujo como selectores y secuencias, y variantes como
Curso teórico-práctico sobre Inteligencia Artificial para Videojuegos (IAV) basado en el modelo de propone Ian Millington en su libro, impartido en la Universidad Complutense de Madrid.
Curso teórico-práctico sobre Inteligencia Artificial para Videojuegos (IAV) basado en el modelo de propone Ian Millington en su libro, impartido en la Universidad Complutense de Madrid.
Curso teórico-práctico sobre Inteligencia Artificial para Videojuegos (IAV) basado en el modelo de propone Ian Millington en su libro, impartido en la Universidad Complutense de Madrid.
Búsqueda de caminos usando estrategias informadasFederico Peinado
Curso teórico-práctico sobre Inteligencia Artificial para Videojuegos (IAV) basado en el modelo de propone Ian Millington en su libro, impartido en la Universidad Complutense de Madrid.
Curso teórico-práctico sobre Inteligencia Artificial para Videojuegos (IAV) basado en el modelo de propone Ian Millington en su libro, impartido en la Universidad Complutense de Madrid.
Resolución de problemas en el espacio de estadosFederico Peinado
Curso teórico-práctico sobre Inteligencia Artificial para Videojuegos (IAV) basado en el modelo de propone Ian Millington en su libro, impartido en la Universidad Complutense de Madrid.
Curso teórico-práctico sobre Inteligencia Artificial para Videojuegos (IAV) basado en el modelo de propone Ian Millington en su libro, impartido en la Universidad Complutense de Madrid.
Curso teórico-práctico sobre Inteligencia Artificial para Videojuegos (IAV) basado en el modelo de propone Ian Millington en su libro, impartido en la Universidad Complutense de Madrid.
Este documento describe varios algoritmos básicos para comportamientos de dirección en videojuegos, los cuales aplican fuerza o aceleración a un agente para lograr movimiento dinámico. Explica comportamientos como seguimiento, llegada, alineamiento y equiparación de velocidad, así como cómo pueden extenderse a comportamientos más complejos como persecución y evasión. Finalmente, indica que estos algoritmos se pueden combinar para lograr movimientos realistas de agentes en videojuegos.
Curso teórico-práctico sobre Inteligencia Artificial para Videojuegos (IAV) basado en el modelo de propone Ian Millington en su libro, impartido en la Universidad Complutense de Madrid.
Generación procedimental de contenido (+ Pseudocódigo)Federico Peinado
Curso teórico-práctico sobre Inteligencia Artificial para Videojuegos (IAV) basado en el modelo de propone Ian Millington en su libro, impartido en la Universidad Complutense de Madrid.
Los puentes son estructuras esenciales en la infraestructura de transporte, permitiendo la conexión entre diferentes
puntos geográficos y facilitando el flujo de bienes y personas.
Equipo 4. Mezclado de Polímeros quimica de polimeros.pptxangiepalacios6170
Presentacion de mezclado de polimeros, de la materia de Quimica de Polímeros ultima unidad. Se describe la definición y los tipos de mezclado asi como los aditivos usados para mejorar las propiedades de las mezclas de polimeros
2. ● ¿Qué tipo de software es un videojuego?
○ Bucle común a un sistema multimedia interactivo…
○ …pero para un videojuego, aunque hay muchos
tipos, hay más arquitectura que puede ser común
Arquitectura del videojuego 2
Motivación
3. Arquitectura del videojuego 3
Armazón de jugabilidad
Players
Actors (Avatars, NPCs & others)
Cameras with
audio listeners
PlayerControllers*
AIControllers
GAME Instance
output
input Game Mode*
*Game State
*Player States
World
(bots*)
UIs & HUDs
2D
GAMEPLAY FRAMEWORK
4. ● World: Mundo virtual sobre el que trabajar,
generado en base a uno o más Levels
○ Level: El espacio mínimo donde poner Actors
■ Se pueden cargar varios a la vez, o irlos
cargando según se necesiten (streaming)
■ Si hay varios, uno debe ser el nivel principal
(persistente) y el resto subniveles
○ Map: Asset (*.umap) que contiene un Level único o
uno principal con referencias a sus subniveles
Arquitectura del videojuego 4
Armazón de jugabilidad
5. ● Actor: Objeto que puede estar en el mundo
○ Pawn: Puede ser poseído por un controlador
■ Character: Con movimiento humanoide
■ WheeledVehicle: Con movimiento sobre ruedas
○ StaticMeshActor
○ SkeletalMeshActor
○ PointLight
○ BoxTrigger
○ AmbientSound
○ ParticleEmitter
○ ...
Arquitectura del videojuego 5
Armazón de jugabilidad
6. ● GameMode: se crea al cargar cada nivel y controla toda
la jugabilidad (típico manejado desde el “servidor”)
○ Game State Class
○ PlayerController Class y Player State Class
○ HUD Class
○ Default Pawn Class
○ Session, Spectator, Replay Spectator … classes
Arquitectura del videojuego 6
Armazón de jugabilidad
7. ● Game Instance: permanece vivo toda la ejecución, y almacena
los datos (no referencias) que persistirán entre niveles,
evitando el tener que guardar partida al concluir un nivel
● Game State: son generados y gestionados por Game Mode,
cada uno lleva los datos y el control de reglas para un
momento concreto del juego que decide el Game Mode
Arquitectura del videojuego 7
Armazón de jugabilidad
8. ● PlayerController: se genera cuando un jugador entra al
juego, gestiona toda la entrada/salida (ratón, cámaras,
HUD...) y da órdenes a los Pawn que posea el jugador
○ Posee uno o más Pawns (y los controla totalmente)
○ Recibe el input de un jugador
○ Accede al HUD de ese jugador
○ Accede al PlayerCameraManager de ese jugador
● AI Controller: controlador que maneja “la máquina”
● Player State: se genera al generarse un PlayerController
y contiene info pública que no es específica del Pawn
Arquitectura del videojuego 8
Armazón de jugabilidad
9. ● Ej. Bird of Prey
○ Actors: Pickups
○ Pawns: Naves de jugadores, naves enemigas,
proyectiles, jefes y torretas
○ Game Mode: Maneja las decisiones de juego
primarias y la lógica. Cuando las naves son
destruidas, sus puntos se evalúan aquí
○ Game State: Guarda la puntuación más alta y otras
informaciones
○ Game Instance: Graba la nave actual del jugador
Arquitectura del videojuego 9
Armazón de jugabilidad
10. ● Unreal Engine ofrece incluso un sistema de
habilidades de jugabilidad sobre el que
montar tus propias habilidades del juego
Arquitectura del videojuego 10
Sistemas sobre la jugabilidad
11. ● Guardar y cargar partida
Arquitectura del videojuego 11
Persistencia del estado del juego
12. ● Las experiencias multijugador en línea
actuales requieren sincronizar muchísima
información entre muchísimas máquinas de
jugadores
alrededor de
todo el mundo
● Sincronizar
todo sería
demasiado
costoso, pero UE ofrece una solución
Arquitectura del videojuego 12
Videojuegos multijugador
13. ● En Unreal Engine es el sistema Replication
el que se encarga de sincronizar los datos y
las llamadas a procedimientos remotos
entre clientes y servidores
○ Esta replicación es clave: permite trabajar de
forma abstracta, en alto nivel, a la vez que
podemos personalizar
cómo funciona
exactamente la
comunicación en red del
juego, en bajo nivel
Arquitectura del videojuego 13
Videojuegos multijugador
REMOTE PROCEDURE CALLS (RPCs)
14. ● El servidor es el nodo “autoritario” de la
red, que se asegura de replicar lo que
corresponda a todos los demás (clientes)
○ Existen 3 modos de red
■ Cliente
■ Servidor dedicado
■ Servidor en escucha
(cliente y servidor
en mismo proceso)
○ Incluso en monojugador o en multijugador local,
¡hace falta un cliente y un servidor... siempre!
Arquitectura del videojuego 14
Arquitectura cliente-servidor
15. ● En el servidor se gestiona la jugabilidad
○ Comienzo y final del juego
○ Cargas de niveles
○ Replicación en clientes (como Game State)
○ Game Mode (GM) sólo existe en el servidor
● Así funciona el sistema:
1. El cliente solicita conectar
2. Si el servidor acepta, le manda un mapa a cargar
3. Tras la carga, se ejecuta el prelogin del GM
4. Si se acepta, se ejecuta el login del GM
■ Se crea y replica el verdadero PlayerController
■ Se le llama a BeginPlay
■ Se ejecuta el postlogin de GM y ya podemos usar RPC
Arquitectura del videojuego 15
Arquitectura cliente-servidor
16. ● Así funciona la replicación
○ En la práctica el servidor informa del estado de los
actores que han cambiado mediante notificaciones
(“actualizaciones”) regulares a todos sus clientes
○ Las propiedades (ej. salud), al ser datos, se
sincronizan solas, pero las acciones (ej. una
explosión), al ser llamadas a procedimientos
remotos, se replican sólo si expresamente así lo
hacemos (recuerda que no son funciones ni pueden
devolver nada)
○ Los PlayerControllers, por ejemplo, sólo se replican
en un cliente: el del jugador correspondiente
Arquitectura del videojuego 16
Replicación
17. ● Hay componentes de Unreal Engine como
CharacterMovement que ya realizan
replicación de forma automática
○ Aún así, a un Pawn le podemos preguntar
IsLocallyControlled para mostrarlo o no, según sea
el que maneja el jugador
o sea el de otro jugador
● Las mallas estáticas
pueden replicar igual
si marcamos Static
Mesh Replicate Movement
Arquitectura del videojuego 17
Replicación
18. ● Cómo replicar
actores en general
○ Cambiando
atributos de actor
como Net Load on
Client (el servidor
carga niveles y se
ven en los clientes)
y Replicates (los
cambios del servidor se replican en los clientes)
Arquitectura del videojuego 18
Replicación
https://docs.unrealengine.com/en-US/Gameplay/Networking/Actors/index.html
19. ● Como vemos, es fácil que todo lo que pasa
en el servidor se replique en los clientes…
pero ¿y lo que pasa en los clientes?
○ Se notificará al servidor todo lo importante, para
que se replique en todos los clientes... y sólo lo
“cosmético” será exclusivo del propio cliente
○ Para eso se crea un Custom Event marcando Run on
Server y Reliable al que se le llama siempre
○ Para saber si algo se ejecuta en el servidor, o si
tengo autoridad sobre un actor, se usan las
funciones along with IsServer y HasAuthority
Arquitectura del videojuego 19
Replicación
20. ● Siempre hay un jugador, pero podemos
crear más (y asignarles controladores)
● En un juego
multijugador,
aunque sea
local es
importante
respetar el
armazón de
jugabilidad
Arquitectura del videojuego 20
Multijugador local
21. ● Aquí están todos los detalles a comprender
Arquitectura del videojuego 21
Multijugador en Blueprints
https://docs.unrealengine.com/en-US/Gameplay/Networking/Blueprints/index.html
22. ● Unreal Engine tiene un
sistema para probar multijugador
Arquitectura del videojuego 22
Pruebas en red
https://docs.unrealengine.com/en-US/Gameplay/HowTo/Networking/TestMultiplayer/index.html
23. ● Pueden crearse accesos directos en
Windows para lanzar el servidor y los
clientes cómoda y rápidamente
Arquitectura del videojuego 23
Pruebas en red
24. ● ¿Qué componentes de Unreal Engine hacen
falta para un buen personaje protagonista?
A. StaticMesh, Pawn y Character
B. SkeletalMesh, PlayerController y GameMode
C. StaticMesh, Pawn, PawnController
D. SkeletalMesh, Character y PlayerController
Arquitectura del videojuego 24
Participación