SlideShare una empresa de Scribd logo
1 de 45
TRABAJO DE FIN DE
MÁSTER
DESARROLLO DE UN VIDEOJUEGO EN BLENDER (KNIGHT
LORE)
Autor: Adrián Alonso González
Tutor: Ricardo Aler Mur
MÁSTER UNIVERSITARIO EN INGENIERÍA INFORMÁTICA
08/07/2015
ÍNDICE
Introducción
Estado de la cuestión
Análisis
Diseño, Implementación y Pruebas
Conclusiones y líneas futuras
Demostración
2
INTRODUCCIÓN
Motivaciones
Objetivos del proyecto
3
Motivaciones
 Profesionales: la industria del videojuego está en auge desde
hace tiempo.
 Beneficios económicos equiparables (puede que mayores) a industrias
como las de la música o el cine.
 Proceso de producción cada vez más evolucionado, equiparable a
superproducciones de cine  Motores de videojuegos y software de
modelado 3D.
 Personales: tengo una gran pasión por el mundo de los
videojuegos e interés en su proceso de desarrollo.
 Experiencia previa en modelado 3D, concretamente en Blender.
4
Objetivos del proyecto
 Conocer y documentar el proceso de producción de un
videojuego comercial.
 Analizar el videojuego del que se realizará la adaptación,
Knight Lore, y extraer sus elementos principales.
 Aplicar los conocimientos adquiridos y desarrollar el
videojuego utilizando el motor de Blender.
 Documentar todo el proceso.
5
ESTADO DE LA CUESTIÓN
Modelado 3D
Motores de videojuegos
Retrovideojuegos
Proceso de producción profesional
de videojuegos
6
Modelado 3D
 Técnica que permite mediante
diversos medios (en este caso
un software informático) crear
objetos tridimensionales.
 Dos formas de representar
objetos:
Representación analítica:
Ecuaciones de cónicas,
splines…
Utilizando polígonos teselados
(mallas de triángulos).
7
Modelado 3D
 Gratuita, de código libre y multiplataforma
(Windows, Mac y Linux )
 Características principales:
 Modo de edición de mallas 3D.
 Varios motores de renderizado: motor principal, cycles, videojuegos.
 Modo de escultura 3D.
 Texturizado.
 Pack de herramientas para animación.
 Simulación de fluidos, partículas, físicas, ropa…
 Motor de videojuegos.
 Extensible mediante plugins.
 Interfaz altamente personalizable.
8
Motores de videojuegos
 Software que facilita la creación de videojuegos.
 Ofrece funciones como:
 Renderizado de los gráficos.
 Soporte para programar los mecanismos del juego.
 Gestión de recursos (animaciones, sonido, modelos 3D…).
 Motor de físicas y detección de colisiones.
 Soporte para implementar la IA de los enemigos.
 Soporte para la computación paralela.
9
10
Modelo de pago Experiencia necesaria
Soporte y
documentación
Propósito
Versión de pago ($9.90
al mes) y gratuita
Alta
Alto grado de soporte y
documentación por parte
de Crytek
Utilizado en el ámbito
profesional
Versión gratuita y pago
de un 5% en royalties
Alta
Alto grado de soporte y
documentación por parte
de Epic
Ampliamente utilizado en
el ámbito profesional
Versión gratuita y de
pago ($1500)
Media-Alta
Alto grado de soporte y
documentación por parte
de Unity Technologies
Utilizado en el ámbito
profesional
No se comercializa,
uso interno por parte
de EA
Se desconoce Se desconoce
Utilizado en el ámbito
profesional, únicamente
por la empresa EA
Versión gratuita y dos
de pago (precios de
$39.99 y $799.99)
Media
Soporte y documentación
por Yoyo Games
Utilizado para iniciarse
en el mundo del
desarrollo de
videojuegos
Gratuita Media-Alta
Amplía comunidad de
usuarios
Utilizado para iniciarse
en el mundo del
desarrollo de
videojuegos
 Software
Motores de videojuegos
Características principales:
 Renderizado: técnicas como lightmaping o técnica de Level of
Detail (LOD).
 Animaciones: insertadas mediante un actuador específico.
 Motor de físicas: librería bullet. Varios tipos de cuerpos (No
Collision, Static, Dynamic, Rigid Body, Soft Body…).
 Programación: sistema de reglas basado en tres
componentes: sensores, controladores y actuadores. Sistema
que se puede complementar con programación Python.
11
Videojuego Knight Lore
 Perspectiva isométrica
 Forma de representación en dos dimensiones de objetos
tridimensionales.
 Se utilizan tres ejes que forman ángulos de 120º.
 Los objetos no disminuyen su tamaño al alejarse del punto de vista.
 Normalmente se utilizaba una perspectiva dimétrica en lugar de una
isométrica. Dos ángulos iguales y uno distinto (ratio de píxeles de 2:1).
 Fue una completa innovación en el mundo de los videojuegos ya que
por “primera” vez se observaron entornos en 3D (aunque no era 3D
puro).
12
Videojuego Knight Lore
 Perspectiva isométrica
13
Videojuego Knight Lore
 Knight Lore
 Desarrollado en 1984 por Chris y Tim Stamper, de la empresa
británica Ultimate Play the Game.
 Clásico de los juegos de 8 bits aparecidos en la década de los 80 e
inspiración del juego desarrollado.
 Época en la que se comienzan a utilizar los ordenadores también
como plataformas de videojuegos: Spectrum, Amstrad, MSX.
 Trata sobre Sabreman, un explorador, que sufre una maldición de
licantropía y debe buscar (en un límite de 40 días) una serie de
objetos en el castillo de Knight Lore para que el mago Melkor pueda
elaborar una poción que le cure.
 Uso de un motor en perspectiva isométrica  Filmation.
14
Proceso de producción profesional de
videojuegos
 Ciclo de desarrollo • Post-mortem
• Documentación y Registro del Proyecto
Postproducción
• Plan de Pruebas
• Lanzamiento del código
Fase de pruebas
• Plan de Implementación
• Seguimiento del Progreso
• Análisis de Riesgos
Producción
• Concepto
• Requisitos del proyecto
• Planificación del proyecto
• Análisis de Riesgos
Preproducción
15
Proceso de producción profesional de
videojuegos
 Roles principales
Producción
• Productor ejecutivo
• Productor
Diseño
• Director creativo
• Diseñador
• Guionista
Ingeniería
• Director técnico
• Ingeniero jefe
• Ingeniero
Diseño artístico
• Director artístico
• Diseñador de recursos
• Artistas técnicos
Sonido
• Diseñador de sonido
• Compositor
Aseguramiento de la
calidad
• Jefe del equipo de pruebas
• Miembro del equipo de
pruebas
16
ANÁLISIS
Resumen del proceso
Valoración de alternativas
17
Resumen del proceso
Como parte del proceso de análisis se obtuvieron:
13 casos de uso.
45 requisitos:
29 funcionales.
16 no funcionales.
Plan de pruebas que contempla 12 pruebas.
Plan de riesgos que contempla 8 riesgos.
18
Valoración de alternativas
Elementos del juego original implementados:
 Perspectiva isométrica.
 Objetivo principal  llevar los objetos al caldero en el límite de
tiempo.
 Transformación en hombre lobo con comportamiento adaptativo
de los enemigos.
 Partidas aleatorias.
 Mecanismo de control.
 Algunos objetos, elementos del escenario y niveles.
19
Valoración de alternativas
20
Valoración de alternativas
Estructura del juego
 Se plantearon dos alternativas para el diseño:
Diseñar todo el videojuego utilizando un único fichero Blender:
a priori el desarrollo es menos costoso pero al trabajar con un
archivo más pesado se consumen más recursos y el proceso se
puede ralentizar.
Desarrollo modular utilizando distintos ficheros Blender y usar
enlaces: desarrollo más compartimentado, más facilidad para
realizar pruebas individuales y archivos más ligeros.
 Se eligió la segunda alternativa  archivos Blender
separados para personaje, niveles e interfaces.
21
DISEÑO, IMPLEMENTACIÓN Y
PRUEBAS
Diseño
Implementación
Pruebas
Postproducción
22
Diseño
 Mecanismos del juego
 Inicialización.
 Carga de niveles.
 Control de cámaras.
 Flujo del tiempo.
 Aparición de objetos.
 Objetivo principal.
 Mecanismo de pausa.
 Sistema de control.
 Interacciones con los objetos.
 Sistema de vidas.
 Transformación en hombre lobo.
 …
23
Diseño
 Cámaras implementadas e interfaces
24
Diseño
 Otras interfaces
25
Diseño
 Personaje principal
26
Diseño
 Personaje principal
 Animaciones:
Andar en línea recta.
Girar izquierda y derecha.
Saltar.
Animación en estado relajado.
Transformación.
 Configuración de físicas:
Cuerpo de tipo Character  tipo especial para personajes de videojuegos.
Los saltos se programan más fácilmente y el personaje escala
automáticamente algunas superficies.
27
Diseño
 Otros personajes y objetos
28
Diseño
 Mapa de niveles:
 Amarillo: aquellos que
contienen algún objeto de
la poción.
 Rojo: aquellos niveles en
los que el personaje puede
aparecer aleatoriamente
al inicio de la partida.
 Verde: aquellos niveles
que contienen vidas para
el personaje.
 Morado: resto de niveles.
29
Diseño
 Niveles
30
Nivel caldero Nivel 7 Nivel 6
Diseño
Sonido
 16 efectos de sonido  movimiento al andar, movimiento al saltar,
contacto con el suelo, empujar objeto, objeto recogido, recoger vida,
choque con objeto dañino…
 8 temas para sonido ambiental  música de fondo principal del
juego, ambiente de mazmorra, sonido ambiente de bosque, juego
superado, juego no superado…
31
Implementación
 Los mecanismos jugables se han implementado utilizando
el combinación el sistema de sensores, controladores y
actuadores de BGE junto a programación en Python.
 Sensor: elementos que se activan cuando ocurre un evento.
 Controlador: se utilizan para establecer condiciones sobre cuándo se
producirá una acción o no y qué acciones se producirán. Se activan al
accionarse algún sensor por lo que son el nexo de unión entre sensores y
actuadores. Existe un controlador especial que es el controlador Python.
 Actuador: una vez que se evalúa positivamente un controlador éste activa
uno o más actuadores. Estos actuadores se utilizan para ejecutar una acción
del juego y modificar directamente su estado.
32
Implementación
 Ejemplo sensores, controladores y actuadores:
33
Implementación
 Ejemplo programación Python:
def change_camera(cont):
sensor = cont.sensors["s_keyboard"]
if sensor.positive:
…
34
Pruebas
Como resultado del proceso de pruebas:
 5 errores encontrados y subsanados. 4 Errores leves y 1 grave.
Ejemplo:
 Error: al intentar soltar un objeto fuera del escenario este atravesaba la pared
y caía.
 Solución: implementar una “pared de seguridad” y un “suelo de seguridad”
para evitar que los objetos atraviesen los límites de la habitación.
 Todas las pruebas superadas  finaliza el desarrollo del código
del videojuego.
35
CONCLUSIONES Y LÍNEAS
FUTURAS
Conclusiones
Postmortem: Planificación y presupuesto
(análisis de desviaciones)
Líneas futuras
36
Conclusiones
 Objetivos cumplidos:
 Se ha investigado acerca del proceso de producción de videojuegos y se han utilizado
esos conocimientos, junto a un estudio del juego original y de la herramienta de
desarrollo a utilizar, para lograr un desarrollo satisfactorio.
 Juego desarrollado:
 Se han implementado la gran mayoría de los mecanismos relevantes del juego original,
dando prioridad a aquellos que eran más interesantes de implementar en Blender.
 Se han utilizado técnicas que ofrece BGE como el lightmapping o la simulación de
físicas.
 Además se han añadido mecanismos adicionales como las vistas en primera y tercera
persona.
37
Conclusiones
 Blender como motor de videojuegos:
 Ideal para iniciarse en el desarrollo de videojuegos.
 No obstante no incluye elementos básicos como son los
sistemas de partículas y hay que recurrir a programación en
Python para añadirlos.
 Conclusiones personales:
 He adquirido una valiosa experiencia en el desarrollo de
videojuegos, industria en auge.
 Gran satisfacción personal al desarrollar mi primer proyecto
audiovisual y además un videojuego, mi principal hobby.
38
Postmortem: Planificación y presupuesto
(análisis de desviaciones)
 Planificación estimada
39
Postmortem: Planificación y presupuesto
(análisis de desviaciones)
 Planificación final
40
Postmortem: Planificación y presupuesto
(análisis de desviaciones)
 Presupuesto  Medios técnicos empleados:
HardwareSoftware
• Software libre y/o gratuito:
• SO  Windows 8,1 (DreamSpark)
• Desarrollo  Blender 2.7.4.
• Edición imágenes  GIMP 2.8.
• Edición sonido  Audacity 2.1.0.
• Edición video  Windows Movie
Maker 12.
• Gestión del proyecto 
Microsoft Project 2013
(DreamSpark).
• Ordenador con procesador
AMD FX-8350 Eight Core
4.00 GHz y 16 GB de
memoria RAM
41
Postmortem: Planificación y presupuesto
(análisis de desviaciones)
 Presupuesto estimado vs presupuesto final
Concepto Coste total estimado Coste total final Diferencia
Coste de personal 49444 € 44184 € 5260 €
Coste de Software 0 € 0 € 0 €
Coste de Hardware 46.13 € 41.22 € 4.91 €
Costes indirectos 324.69 € 324.69 € 0 €
Costes totales 49813.44 € 44549.91 € 5263.53 €
IVA 10460.82 € 9355.48 € 1105.34 €
60274.26 € 53905.39 € 6368.87 €
42
Líneas futuras
 Ampliación del número de niveles, objetos, personajes y sonidos.
Se facilitaría gracias al desarrollo modular en distintos archivos
Blender del videojuego.
 Soporte a un sistema de control adicional mediante un controlador
de juego (mando de consola).
 Sistema de trofeos y mejores puntuaciones.
 Portabilidad a otras plataformas:
 Difícil ya que BGE no incluye soporte a otras plataformas y los ports realizados por
usuarios no funcionan a un nivel óptimo.
 No obstante todos los recursos desarrollados se podrían reutilizar en una adaptación
utilizando otro motor de videojuegos como Unity, el cual soporta una gran cantidad de
plataformas.
43
DEMOSTRACIÓN
44
MUCHAS GRACIAS
POR SU ATENCIÓN
PREGUNTAS
45

Más contenido relacionado

La actualidad más candente

Tech talks: "Introducción a Unity 3D"
Tech talks: "Introducción a Unity 3D"Tech talks: "Introducción a Unity 3D"
Tech talks: "Introducción a Unity 3D"BVision
 
Ciencia y videojuegos
Ciencia y videojuegosCiencia y videojuegos
Ciencia y videojuegosAntonio Mora
 
Los videojuegos2
Los videojuegos2Los videojuegos2
Los videojuegos2jorge
 
Time shift manual
Time shift manualTime shift manual
Time shift manualLuis Solano
 
Ejemplos de investigación en videojuegos
Ejemplos de investigación en videojuegosEjemplos de investigación en videojuegos
Ejemplos de investigación en videojuegosPablo García Sánchez
 
Taller «Tennis for two»
Taller «Tennis for two»Taller «Tennis for two»
Taller «Tennis for two»RetroAccion
 
Diapositiva de juegos, Cesar negret velasco
Diapositiva de juegos, Cesar negret velascoDiapositiva de juegos, Cesar negret velasco
Diapositiva de juegos, Cesar negret velascoDeibyAlexanderGomezF
 
Dhylann gabriel s
Dhylann gabriel sDhylann gabriel s
Dhylann gabriel sdhylann
 
Diseño y creación de videojuegos
Diseño y creación de videojuegosDiseño y creación de videojuegos
Diseño y creación de videojuegosruben rionda
 
Presentación desarrollo de videojuegos
Presentación desarrollo de videojuegosPresentación desarrollo de videojuegos
Presentación desarrollo de videojuegosKayreKampa
 
Ciencia y videojuegos (versión Extracción de Información) [UCA 05/2015]
Ciencia y videojuegos (versión Extracción de Información) [UCA 05/2015]Ciencia y videojuegos (versión Extracción de Información) [UCA 05/2015]
Ciencia y videojuegos (versión Extracción de Información) [UCA 05/2015]Antonio Mora
 
PERIODO 1 Elaboracion del blog y Analisi de artefactos grupo #3.pdf
PERIODO 1 Elaboracion del blog y Analisi de artefactos grupo #3.pdfPERIODO 1 Elaboracion del blog y Analisi de artefactos grupo #3.pdf
PERIODO 1 Elaboracion del blog y Analisi de artefactos grupo #3.pdfvalentinafajardo13
 

La actualidad más candente (20)

Tech talks: "Introducción a Unity 3D"
Tech talks: "Introducción a Unity 3D"Tech talks: "Introducción a Unity 3D"
Tech talks: "Introducción a Unity 3D"
 
Ciencia y videojuegos
Ciencia y videojuegosCiencia y videojuegos
Ciencia y videojuegos
 
Los videojuegos
Los videojuegosLos videojuegos
Los videojuegos
 
Los videojuegos2
Los videojuegos2Los videojuegos2
Los videojuegos2
 
Time shift manual
Time shift manualTime shift manual
Time shift manual
 
Desarrollo de videojuegos
Desarrollo de videojuegosDesarrollo de videojuegos
Desarrollo de videojuegos
 
Ejemplos de investigación en videojuegos
Ejemplos de investigación en videojuegosEjemplos de investigación en videojuegos
Ejemplos de investigación en videojuegos
 
Taller «Tennis for two»
Taller «Tennis for two»Taller «Tennis for two»
Taller «Tennis for two»
 
juan pablo camacho
juan pablo camachojuan pablo camacho
juan pablo camacho
 
Diapositiva de juegos, Cesar negret velasco
Diapositiva de juegos, Cesar negret velascoDiapositiva de juegos, Cesar negret velasco
Diapositiva de juegos, Cesar negret velasco
 
Dhylann gabriel s
Dhylann gabriel sDhylann gabriel s
Dhylann gabriel s
 
Proyecto de hcd
Proyecto de hcdProyecto de hcd
Proyecto de hcd
 
Diseño y creación de videojuegos
Diseño y creación de videojuegosDiseño y creación de videojuegos
Diseño y creación de videojuegos
 
Presentación desarrollo de videojuegos
Presentación desarrollo de videojuegosPresentación desarrollo de videojuegos
Presentación desarrollo de videojuegos
 
Blender unityexpo
Blender unityexpoBlender unityexpo
Blender unityexpo
 
Ciencia y videojuegos (versión Extracción de Información) [UCA 05/2015]
Ciencia y videojuegos (versión Extracción de Información) [UCA 05/2015]Ciencia y videojuegos (versión Extracción de Información) [UCA 05/2015]
Ciencia y videojuegos (versión Extracción de Información) [UCA 05/2015]
 
Unity
UnityUnity
Unity
 
Unity
UnityUnity
Unity
 
U8 realidad virtual
U8 realidad virtualU8 realidad virtual
U8 realidad virtual
 
PERIODO 1 Elaboracion del blog y Analisi de artefactos grupo #3.pdf
PERIODO 1 Elaboracion del blog y Analisi de artefactos grupo #3.pdfPERIODO 1 Elaboracion del blog y Analisi de artefactos grupo #3.pdf
PERIODO 1 Elaboracion del blog y Analisi de artefactos grupo #3.pdf
 

Destacado

presentación-pw tfm ildefonso-garcia
presentación-pw tfm ildefonso-garciapresentación-pw tfm ildefonso-garcia
presentación-pw tfm ildefonso-garciaalfonso1889
 
TFM emanuele giustelli
TFM emanuele giustelliTFM emanuele giustelli
TFM emanuele giustelliEma Giu
 
Trabajo fin de master
Trabajo fin de masterTrabajo fin de master
Trabajo fin de masterReyes Buzon
 
Defensa tfm
Defensa tfmDefensa tfm
Defensa tfmsoarranz
 
PRESENTACIÓN PARA LA DEFENSA DEL TFM MASTER FORMACIÓN DEL PROFESORADO
PRESENTACIÓN PARA LA DEFENSA DEL TFM MASTER FORMACIÓN DEL PROFESORADOPRESENTACIÓN PARA LA DEFENSA DEL TFM MASTER FORMACIÓN DEL PROFESORADO
PRESENTACIÓN PARA LA DEFENSA DEL TFM MASTER FORMACIÓN DEL PROFESORADOJesús Martín Díaz
 
Trabajo fin de grado presentación final
Trabajo fin de grado presentación finalTrabajo fin de grado presentación final
Trabajo fin de grado presentación finalAlfredo Herranz
 
La problemática de la traducción de universos de ciencia ficción específicos....
La problemática de la traducción de universos de ciencia ficción específicos....La problemática de la traducción de universos de ciencia ficción específicos....
La problemática de la traducción de universos de ciencia ficción específicos....Sergio Núñez Cabrera
 
Presentacion trabajo final de máster
Presentacion trabajo final de máster  Presentacion trabajo final de máster
Presentacion trabajo final de máster paulovak
 
Pdf presentación tfm hva (2015-16)
Pdf presentación tfm hva (2015-16)Pdf presentación tfm hva (2015-16)
Pdf presentación tfm hva (2015-16)Héctor Velasco
 
Cómo dar visibilidad a tu TFG / TFM, (Biblioteca Campus Gandia CRAI)
Cómo dar visibilidad a tu TFG / TFM, (Biblioteca Campus Gandia CRAI)Cómo dar visibilidad a tu TFG / TFM, (Biblioteca Campus Gandia CRAI)
Cómo dar visibilidad a tu TFG / TFM, (Biblioteca Campus Gandia CRAI)Biblioteca Campus Gandia CRAI
 

Destacado (20)

presentación-pw tfm ildefonso-garcia
presentación-pw tfm ildefonso-garciapresentación-pw tfm ildefonso-garcia
presentación-pw tfm ildefonso-garcia
 
Presentacion TFM Juan Luis Plaza
Presentacion TFM Juan Luis PlazaPresentacion TFM Juan Luis Plaza
Presentacion TFM Juan Luis Plaza
 
TFM emanuele giustelli
TFM emanuele giustelliTFM emanuele giustelli
TFM emanuele giustelli
 
Presentación tfm
Presentación tfmPresentación tfm
Presentación tfm
 
Trabajo fin de máster
Trabajo fin de másterTrabajo fin de máster
Trabajo fin de máster
 
Trabajo fin de master
Trabajo fin de masterTrabajo fin de master
Trabajo fin de master
 
Defensa tfm
Defensa tfmDefensa tfm
Defensa tfm
 
PRESENTACIÓN PARA LA DEFENSA DEL TFM MASTER FORMACIÓN DEL PROFESORADO
PRESENTACIÓN PARA LA DEFENSA DEL TFM MASTER FORMACIÓN DEL PROFESORADOPRESENTACIÓN PARA LA DEFENSA DEL TFM MASTER FORMACIÓN DEL PROFESORADO
PRESENTACIÓN PARA LA DEFENSA DEL TFM MASTER FORMACIÓN DEL PROFESORADO
 
Presentación tfm
Presentación tfmPresentación tfm
Presentación tfm
 
Trabajo fin de grado presentación final
Trabajo fin de grado presentación finalTrabajo fin de grado presentación final
Trabajo fin de grado presentación final
 
Defensa tfm3
Defensa tfm3Defensa tfm3
Defensa tfm3
 
Presentacion TFM 2011
Presentacion TFM 2011Presentacion TFM 2011
Presentacion TFM 2011
 
Presentacion tfm1
Presentacion tfm1Presentacion tfm1
Presentacion tfm1
 
Tfm hva (2015 16)
Tfm hva (2015 16)Tfm hva (2015 16)
Tfm hva (2015 16)
 
Ppt tfm
Ppt tfmPpt tfm
Ppt tfm
 
La problemática de la traducción de universos de ciencia ficción específicos....
La problemática de la traducción de universos de ciencia ficción específicos....La problemática de la traducción de universos de ciencia ficción específicos....
La problemática de la traducción de universos de ciencia ficción específicos....
 
Presentacion trabajo final de máster
Presentacion trabajo final de máster  Presentacion trabajo final de máster
Presentacion trabajo final de máster
 
Pdf presentación tfm hva (2015-16)
Pdf presentación tfm hva (2015-16)Pdf presentación tfm hva (2015-16)
Pdf presentación tfm hva (2015-16)
 
Cómo dar visibilidad a tu TFG / TFM, (Biblioteca Campus Gandia CRAI)
Cómo dar visibilidad a tu TFG / TFM, (Biblioteca Campus Gandia CRAI)Cómo dar visibilidad a tu TFG / TFM, (Biblioteca Campus Gandia CRAI)
Cómo dar visibilidad a tu TFG / TFM, (Biblioteca Campus Gandia CRAI)
 
Defensa TFM
Defensa TFMDefensa TFM
Defensa TFM
 

Similar a Presentacion tfm adrian_alonso_gonzalez-light

Juegos logicos
Juegos logicosJuegos logicos
Juegos logicosMguel
 
Teoria juegos
Teoria juegosTeoria juegos
Teoria juegosMguel
 
Clase 9 sistemas
Clase 9 sistemasClase 9 sistemas
Clase 9 sistemasMguel
 
Creando juegos con game maker 8
Creando juegos con game maker 8Creando juegos con game maker 8
Creando juegos con game maker 8Henrydarklite
 
Desarrollo de los videojuegos alejandro bueno sanchez
Desarrollo de los videojuegos   alejandro bueno sanchezDesarrollo de los videojuegos   alejandro bueno sanchez
Desarrollo de los videojuegos alejandro bueno sanchezAlejo Bueno Sanchez
 
10a daniel felipe peña creación de un videojuego
10a daniel felipe peña creación de un videojuego10a daniel felipe peña creación de un videojuego
10a daniel felipe peña creación de un videojuegoNicole2411
 
Taller de análisis: Grupo #3
Taller de análisis: Grupo #3Taller de análisis: Grupo #3
Taller de análisis: Grupo #3SofaTejada2
 
TALLER DE ANALISIS GRUPO 3
TALLER DE ANALISIS GRUPO 3 TALLER DE ANALISIS GRUPO 3
TALLER DE ANALISIS GRUPO 3 LiznataTorres
 
Presentacion videojuegos
Presentacion videojuegosPresentacion videojuegos
Presentacion videojuegosDamia
 
Experiencias desarrollando mi primer videojuego - Techne18
Experiencias desarrollando mi primer videojuego - Techne18Experiencias desarrollando mi primer videojuego - Techne18
Experiencias desarrollando mi primer videojuego - Techne18Vanessa Galcera
 
Modelamiento de juegos
Modelamiento de juegosModelamiento de juegos
Modelamiento de juegosingsistemas1
 
Game maker
Game makerGame maker
Game makerTensor
 

Similar a Presentacion tfm adrian_alonso_gonzalez-light (20)

Juegos logicos
Juegos logicosJuegos logicos
Juegos logicos
 
Teoria juegos
Teoria juegosTeoria juegos
Teoria juegos
 
Clase 9 sistemas
Clase 9 sistemasClase 9 sistemas
Clase 9 sistemas
 
[Code Camp 2009] Desarrollo de juegos multiplataforma con Unity3D (Diego G. R...
[Code Camp 2009] Desarrollo de juegos multiplataforma con Unity3D (Diego G. R...[Code Camp 2009] Desarrollo de juegos multiplataforma con Unity3D (Diego G. R...
[Code Camp 2009] Desarrollo de juegos multiplataforma con Unity3D (Diego G. R...
 
Creando juegos con game maker 8
Creando juegos con game maker 8Creando juegos con game maker 8
Creando juegos con game maker 8
 
Desarrollo de los videojuegos alejandro bueno sanchez
Desarrollo de los videojuegos   alejandro bueno sanchezDesarrollo de los videojuegos   alejandro bueno sanchez
Desarrollo de los videojuegos alejandro bueno sanchez
 
10a daniel felipe peña creación de un videojuego
10a daniel felipe peña creación de un videojuego10a daniel felipe peña creación de un videojuego
10a daniel felipe peña creación de un videojuego
 
TALLER DE ANALISIS GRUPO 3
TALLER DE ANALISIS GRUPO 3 TALLER DE ANALISIS GRUPO 3
TALLER DE ANALISIS GRUPO 3
 
Taller de análisis: Grupo #3
Taller de análisis: Grupo #3Taller de análisis: Grupo #3
Taller de análisis: Grupo #3
 
TALLER DE ANALISIS GRUPO 3
TALLER DE ANALISIS GRUPO 3 TALLER DE ANALISIS GRUPO 3
TALLER DE ANALISIS GRUPO 3
 
Presentacion videojuegos
Presentacion videojuegosPresentacion videojuegos
Presentacion videojuegos
 
Tutorial c# y Video Juegos
Tutorial c# y Video JuegosTutorial c# y Video Juegos
Tutorial c# y Video Juegos
 
Investigación gráfica somne
Investigación gráfica somneInvestigación gráfica somne
Investigación gráfica somne
 
Unreal engine
Unreal engineUnreal engine
Unreal engine
 
Desarrollo de Juegos
Desarrollo de JuegosDesarrollo de Juegos
Desarrollo de Juegos
 
Diapositiva de juegos 9A
Diapositiva de juegos 9ADiapositiva de juegos 9A
Diapositiva de juegos 9A
 
Experiencias desarrollando mi primer videojuego - Techne18
Experiencias desarrollando mi primer videojuego - Techne18Experiencias desarrollando mi primer videojuego - Techne18
Experiencias desarrollando mi primer videojuego - Techne18
 
Modelamiento de juegos
Modelamiento de juegosModelamiento de juegos
Modelamiento de juegos
 
Creandojuegoscongamemaker8
Creandojuegoscongamemaker8Creandojuegoscongamemaker8
Creandojuegoscongamemaker8
 
Game maker
Game makerGame maker
Game maker
 

Presentacion tfm adrian_alonso_gonzalez-light

  • 1. TRABAJO DE FIN DE MÁSTER DESARROLLO DE UN VIDEOJUEGO EN BLENDER (KNIGHT LORE) Autor: Adrián Alonso González Tutor: Ricardo Aler Mur MÁSTER UNIVERSITARIO EN INGENIERÍA INFORMÁTICA 08/07/2015
  • 2. ÍNDICE Introducción Estado de la cuestión Análisis Diseño, Implementación y Pruebas Conclusiones y líneas futuras Demostración 2
  • 4. Motivaciones  Profesionales: la industria del videojuego está en auge desde hace tiempo.  Beneficios económicos equiparables (puede que mayores) a industrias como las de la música o el cine.  Proceso de producción cada vez más evolucionado, equiparable a superproducciones de cine  Motores de videojuegos y software de modelado 3D.  Personales: tengo una gran pasión por el mundo de los videojuegos e interés en su proceso de desarrollo.  Experiencia previa en modelado 3D, concretamente en Blender. 4
  • 5. Objetivos del proyecto  Conocer y documentar el proceso de producción de un videojuego comercial.  Analizar el videojuego del que se realizará la adaptación, Knight Lore, y extraer sus elementos principales.  Aplicar los conocimientos adquiridos y desarrollar el videojuego utilizando el motor de Blender.  Documentar todo el proceso. 5
  • 6. ESTADO DE LA CUESTIÓN Modelado 3D Motores de videojuegos Retrovideojuegos Proceso de producción profesional de videojuegos 6
  • 7. Modelado 3D  Técnica que permite mediante diversos medios (en este caso un software informático) crear objetos tridimensionales.  Dos formas de representar objetos: Representación analítica: Ecuaciones de cónicas, splines… Utilizando polígonos teselados (mallas de triángulos). 7
  • 8. Modelado 3D  Gratuita, de código libre y multiplataforma (Windows, Mac y Linux )  Características principales:  Modo de edición de mallas 3D.  Varios motores de renderizado: motor principal, cycles, videojuegos.  Modo de escultura 3D.  Texturizado.  Pack de herramientas para animación.  Simulación de fluidos, partículas, físicas, ropa…  Motor de videojuegos.  Extensible mediante plugins.  Interfaz altamente personalizable. 8
  • 9. Motores de videojuegos  Software que facilita la creación de videojuegos.  Ofrece funciones como:  Renderizado de los gráficos.  Soporte para programar los mecanismos del juego.  Gestión de recursos (animaciones, sonido, modelos 3D…).  Motor de físicas y detección de colisiones.  Soporte para implementar la IA de los enemigos.  Soporte para la computación paralela. 9
  • 10. 10 Modelo de pago Experiencia necesaria Soporte y documentación Propósito Versión de pago ($9.90 al mes) y gratuita Alta Alto grado de soporte y documentación por parte de Crytek Utilizado en el ámbito profesional Versión gratuita y pago de un 5% en royalties Alta Alto grado de soporte y documentación por parte de Epic Ampliamente utilizado en el ámbito profesional Versión gratuita y de pago ($1500) Media-Alta Alto grado de soporte y documentación por parte de Unity Technologies Utilizado en el ámbito profesional No se comercializa, uso interno por parte de EA Se desconoce Se desconoce Utilizado en el ámbito profesional, únicamente por la empresa EA Versión gratuita y dos de pago (precios de $39.99 y $799.99) Media Soporte y documentación por Yoyo Games Utilizado para iniciarse en el mundo del desarrollo de videojuegos Gratuita Media-Alta Amplía comunidad de usuarios Utilizado para iniciarse en el mundo del desarrollo de videojuegos  Software
  • 11. Motores de videojuegos Características principales:  Renderizado: técnicas como lightmaping o técnica de Level of Detail (LOD).  Animaciones: insertadas mediante un actuador específico.  Motor de físicas: librería bullet. Varios tipos de cuerpos (No Collision, Static, Dynamic, Rigid Body, Soft Body…).  Programación: sistema de reglas basado en tres componentes: sensores, controladores y actuadores. Sistema que se puede complementar con programación Python. 11
  • 12. Videojuego Knight Lore  Perspectiva isométrica  Forma de representación en dos dimensiones de objetos tridimensionales.  Se utilizan tres ejes que forman ángulos de 120º.  Los objetos no disminuyen su tamaño al alejarse del punto de vista.  Normalmente se utilizaba una perspectiva dimétrica en lugar de una isométrica. Dos ángulos iguales y uno distinto (ratio de píxeles de 2:1).  Fue una completa innovación en el mundo de los videojuegos ya que por “primera” vez se observaron entornos en 3D (aunque no era 3D puro). 12
  • 13. Videojuego Knight Lore  Perspectiva isométrica 13
  • 14. Videojuego Knight Lore  Knight Lore  Desarrollado en 1984 por Chris y Tim Stamper, de la empresa británica Ultimate Play the Game.  Clásico de los juegos de 8 bits aparecidos en la década de los 80 e inspiración del juego desarrollado.  Época en la que se comienzan a utilizar los ordenadores también como plataformas de videojuegos: Spectrum, Amstrad, MSX.  Trata sobre Sabreman, un explorador, que sufre una maldición de licantropía y debe buscar (en un límite de 40 días) una serie de objetos en el castillo de Knight Lore para que el mago Melkor pueda elaborar una poción que le cure.  Uso de un motor en perspectiva isométrica  Filmation. 14
  • 15. Proceso de producción profesional de videojuegos  Ciclo de desarrollo • Post-mortem • Documentación y Registro del Proyecto Postproducción • Plan de Pruebas • Lanzamiento del código Fase de pruebas • Plan de Implementación • Seguimiento del Progreso • Análisis de Riesgos Producción • Concepto • Requisitos del proyecto • Planificación del proyecto • Análisis de Riesgos Preproducción 15
  • 16. Proceso de producción profesional de videojuegos  Roles principales Producción • Productor ejecutivo • Productor Diseño • Director creativo • Diseñador • Guionista Ingeniería • Director técnico • Ingeniero jefe • Ingeniero Diseño artístico • Director artístico • Diseñador de recursos • Artistas técnicos Sonido • Diseñador de sonido • Compositor Aseguramiento de la calidad • Jefe del equipo de pruebas • Miembro del equipo de pruebas 16
  • 18. Resumen del proceso Como parte del proceso de análisis se obtuvieron: 13 casos de uso. 45 requisitos: 29 funcionales. 16 no funcionales. Plan de pruebas que contempla 12 pruebas. Plan de riesgos que contempla 8 riesgos. 18
  • 19. Valoración de alternativas Elementos del juego original implementados:  Perspectiva isométrica.  Objetivo principal  llevar los objetos al caldero en el límite de tiempo.  Transformación en hombre lobo con comportamiento adaptativo de los enemigos.  Partidas aleatorias.  Mecanismo de control.  Algunos objetos, elementos del escenario y niveles. 19
  • 21. Valoración de alternativas Estructura del juego  Se plantearon dos alternativas para el diseño: Diseñar todo el videojuego utilizando un único fichero Blender: a priori el desarrollo es menos costoso pero al trabajar con un archivo más pesado se consumen más recursos y el proceso se puede ralentizar. Desarrollo modular utilizando distintos ficheros Blender y usar enlaces: desarrollo más compartimentado, más facilidad para realizar pruebas individuales y archivos más ligeros.  Se eligió la segunda alternativa  archivos Blender separados para personaje, niveles e interfaces. 21
  • 23. Diseño  Mecanismos del juego  Inicialización.  Carga de niveles.  Control de cámaras.  Flujo del tiempo.  Aparición de objetos.  Objetivo principal.  Mecanismo de pausa.  Sistema de control.  Interacciones con los objetos.  Sistema de vidas.  Transformación en hombre lobo.  … 23
  • 27. Diseño  Personaje principal  Animaciones: Andar en línea recta. Girar izquierda y derecha. Saltar. Animación en estado relajado. Transformación.  Configuración de físicas: Cuerpo de tipo Character  tipo especial para personajes de videojuegos. Los saltos se programan más fácilmente y el personaje escala automáticamente algunas superficies. 27
  • 29. Diseño  Mapa de niveles:  Amarillo: aquellos que contienen algún objeto de la poción.  Rojo: aquellos niveles en los que el personaje puede aparecer aleatoriamente al inicio de la partida.  Verde: aquellos niveles que contienen vidas para el personaje.  Morado: resto de niveles. 29
  • 31. Diseño Sonido  16 efectos de sonido  movimiento al andar, movimiento al saltar, contacto con el suelo, empujar objeto, objeto recogido, recoger vida, choque con objeto dañino…  8 temas para sonido ambiental  música de fondo principal del juego, ambiente de mazmorra, sonido ambiente de bosque, juego superado, juego no superado… 31
  • 32. Implementación  Los mecanismos jugables se han implementado utilizando el combinación el sistema de sensores, controladores y actuadores de BGE junto a programación en Python.  Sensor: elementos que se activan cuando ocurre un evento.  Controlador: se utilizan para establecer condiciones sobre cuándo se producirá una acción o no y qué acciones se producirán. Se activan al accionarse algún sensor por lo que son el nexo de unión entre sensores y actuadores. Existe un controlador especial que es el controlador Python.  Actuador: una vez que se evalúa positivamente un controlador éste activa uno o más actuadores. Estos actuadores se utilizan para ejecutar una acción del juego y modificar directamente su estado. 32
  • 33. Implementación  Ejemplo sensores, controladores y actuadores: 33
  • 34. Implementación  Ejemplo programación Python: def change_camera(cont): sensor = cont.sensors["s_keyboard"] if sensor.positive: … 34
  • 35. Pruebas Como resultado del proceso de pruebas:  5 errores encontrados y subsanados. 4 Errores leves y 1 grave. Ejemplo:  Error: al intentar soltar un objeto fuera del escenario este atravesaba la pared y caía.  Solución: implementar una “pared de seguridad” y un “suelo de seguridad” para evitar que los objetos atraviesen los límites de la habitación.  Todas las pruebas superadas  finaliza el desarrollo del código del videojuego. 35
  • 36. CONCLUSIONES Y LÍNEAS FUTURAS Conclusiones Postmortem: Planificación y presupuesto (análisis de desviaciones) Líneas futuras 36
  • 37. Conclusiones  Objetivos cumplidos:  Se ha investigado acerca del proceso de producción de videojuegos y se han utilizado esos conocimientos, junto a un estudio del juego original y de la herramienta de desarrollo a utilizar, para lograr un desarrollo satisfactorio.  Juego desarrollado:  Se han implementado la gran mayoría de los mecanismos relevantes del juego original, dando prioridad a aquellos que eran más interesantes de implementar en Blender.  Se han utilizado técnicas que ofrece BGE como el lightmapping o la simulación de físicas.  Además se han añadido mecanismos adicionales como las vistas en primera y tercera persona. 37
  • 38. Conclusiones  Blender como motor de videojuegos:  Ideal para iniciarse en el desarrollo de videojuegos.  No obstante no incluye elementos básicos como son los sistemas de partículas y hay que recurrir a programación en Python para añadirlos.  Conclusiones personales:  He adquirido una valiosa experiencia en el desarrollo de videojuegos, industria en auge.  Gran satisfacción personal al desarrollar mi primer proyecto audiovisual y además un videojuego, mi principal hobby. 38
  • 39. Postmortem: Planificación y presupuesto (análisis de desviaciones)  Planificación estimada 39
  • 40. Postmortem: Planificación y presupuesto (análisis de desviaciones)  Planificación final 40
  • 41. Postmortem: Planificación y presupuesto (análisis de desviaciones)  Presupuesto  Medios técnicos empleados: HardwareSoftware • Software libre y/o gratuito: • SO  Windows 8,1 (DreamSpark) • Desarrollo  Blender 2.7.4. • Edición imágenes  GIMP 2.8. • Edición sonido  Audacity 2.1.0. • Edición video  Windows Movie Maker 12. • Gestión del proyecto  Microsoft Project 2013 (DreamSpark). • Ordenador con procesador AMD FX-8350 Eight Core 4.00 GHz y 16 GB de memoria RAM 41
  • 42. Postmortem: Planificación y presupuesto (análisis de desviaciones)  Presupuesto estimado vs presupuesto final Concepto Coste total estimado Coste total final Diferencia Coste de personal 49444 € 44184 € 5260 € Coste de Software 0 € 0 € 0 € Coste de Hardware 46.13 € 41.22 € 4.91 € Costes indirectos 324.69 € 324.69 € 0 € Costes totales 49813.44 € 44549.91 € 5263.53 € IVA 10460.82 € 9355.48 € 1105.34 € 60274.26 € 53905.39 € 6368.87 € 42
  • 43. Líneas futuras  Ampliación del número de niveles, objetos, personajes y sonidos. Se facilitaría gracias al desarrollo modular en distintos archivos Blender del videojuego.  Soporte a un sistema de control adicional mediante un controlador de juego (mando de consola).  Sistema de trofeos y mejores puntuaciones.  Portabilidad a otras plataformas:  Difícil ya que BGE no incluye soporte a otras plataformas y los ports realizados por usuarios no funcionan a un nivel óptimo.  No obstante todos los recursos desarrollados se podrían reutilizar en una adaptación utilizando otro motor de videojuegos como Unity, el cual soporta una gran cantidad de plataformas. 43
  • 45. MUCHAS GRACIAS POR SU ATENCIÓN PREGUNTAS 45