SlideShare una empresa de Scribd logo
1 de 28
Descargar para leer sin conexión
Gestión de Calidad
en Videojuegos
Herramientas de desarrollo
Específicas para videojuegos
● Y en la creación de videojuegos, ¿qué se
utiliza para gestionar bien la calidad?
Calidad en Videojuegos 2
Motivación
● Reutilización
● Pruebas de concepto
● Depuración
● Optimización
● Industrialización
● Globalización
● Pruebas automatizadas
● Análisis (en producción)
Calidad en Videojuegos 3
Puntos clave
● Rovio creó 51 juegos antes de Angry Birds
Calidad en Videojuegos 4
Reutilización
● Hacer algo nuevo = Aprender = Equivocarse
Calidad en Videojuegos 5
Reutilización
Sitio web de Jonathan Blow
http://www.number-none.com/blow/
“Una persona que nunca ha cometido un error
nunca intentó nada nuevo” - Albert Einstein
● Primera idea, siempre: ¡NO HACERLO!
○ Reutilizar algo suficientemente bueno de otro
Calidad en Videojuegos 6
Reutilización
● Hay plantillas muy completas a la venta
○ https://www.sellmyapp.com
○ https://codecanyon.net
○ https://www.codester.com
○ https://www.gamegorillaz.com/ggmarketplace
Calidad en Videojuegos 7
Reutilización
● La calidad es cuestión de tiempo en esto...
Calidad en Videojuegos 8
Reutilización
● Otra cosa es si buscas originalidad...
● Ejemplo: Primera iteración (idea de juego)
○ ¡Carreras de submarinos con torpedos!
Calidad en Videojuegos 9
Pruebas de concepto
¿Cómo serían las pistas?
¿Va a resultar un juego
novedoso?
¿Podemos hacer el efecto
de estar bajo el agua?
● Segunda iteración: Carreras multijugador de
submarinos anfibios y voladores
○ ¡Estética de “submarinos de carreras”, con juego
equilibrado bajo y sobre el mar, mediante conexión
a través de Internet!
Calidad en Videojuegos 10
Pruebas de concepto
Catálogo de submarinos,
pasarle encuesta a amigos
Motor de multijugador en red
Prototipo en Java
● Conseguir rápidamente prototipos eficaces
ayuda a mejorar la calidad del juego
1. Deben diseñarse para dar respuesta a una (o varias)
cuestiones concretas
2. No debe preocuparnos su calidad (rápidos y sucios)
3. Planifica contando con “tirar” al menos uno a la
basura (o varios)
4. Deben priorizarse, y hacer el más crítico primero
5. Deben paralelizarse cuando sea posible, para
obtener más respuestas en un mismo tiempo
6. No tienen por qué ser digitales (pueden ser con
lápiz y papel o en vivo directamente) Calidad en Videojuegos 11
Consejos
7. No tienen por qué ser interactivos (ej. animación)
8. Procura usar un “ciclo rápido” de desarrollo
■ Herramientas que te den mucho hecho
■ Edición o incluso programación “en caliente” (sin
tener que compilar todo de nuevo)
■ What You See Is What You Play (WYSIWYP)
9. Empieza por construir el “juguete”
■ La base donde luego se apoyará el juego
10. Aprovecha cualquier oportunidad de iterar más
para seguir mejorando el juego
Calidad en Videojuegos 12
Consejos
“Una obra de arte nunca se termina, sólo se abandona” - Leonardo da Vinci
● Equilibrado de la economía del juego
○ Machinations, Ludible, etc.
https://machinations.io
http://www.ludible.nl Calidad en Videojuegos 13
Pruebas de concepto
● La mejor estrategia contra los errores es la
prevención (¡no introducirlos tú!)
● Debuggers, loggers, incluso visual loggers
Calidad en Videojuegos 14
Depuración
● Profilers y analizadores de rendimiento
Calidad en Videojuegos 15
Optimización
● En términos de plataformas es necesario
pasar por procesos de cumplimiento e
incluso certificación de los estándares que
imponga la plataforma
○ Technical Requirements
Checklist (TRC) de Sony
○ Technical Certification
Requirements (TCR)
de Microsoft
○ LotCheck de Nintendo
○ ...
Calidad en Videojuegos 16
Industrialización
● Tecnología para la internacionalización
● Contenido localizado para cada región
Calidad en Videojuegos 17
Globalización
● Se trata de código que permite realizar
algunas pruebas básicas sobre el juego sin
intervención humana
○ Tienen sentido porque la complejidad de la
jugabilidad cada vez es mayor y los contenidos de
un juego promedio también son cada vez mayores
○ Conviene comprometerse a su uso desde el
principio, en el plan de prueba
○ La arquitectura software debe estar preparada
para el tipo de pruebas que vamos a realizar
(componentes independientes, mocking e
interfaces de estados...)
Calidad en Videojuegos 18
Pruebas automatizadas
● Ventajas
○ Reduce el coste y la duración de las pruebas
○ Todas son perfectamente repetibles
○ Pueden hacerse todas las noches o fines de semana
(en equipos internacionales, es menos relevante)
○ Se automatizan mejor los resultados de las pruebas
y el seguimiento y la gestión de las mismas
○ Son fáciles de programar para validaciones sencillas
o funcionalidad muy obvia (¡hay proyectos donde se
crean miles o incluso decenas de miles!)
○ Se pueden hacer pruebas de estrés para
rendimiento (benchmark)
Calidad en Videojuegos 19
Pruebas automatizadas
● Desventajas
○ Tiene sentido pasar primero todas las pruebas
automatizadas (para colisiones y cosas simples)…
pero luego viene la QA normal (gráficos, sonidos,
interfaz, voces… ¡experiencia de juego!)
○ Si el juego no es 100% determinista, los resultados
no van a ser idénticos en cada ejecución
○ Muchas necesitan granjas de máquinas dedicadas a
compilar y probar el juego
○ Puede ser complejo si aplicamos técnicas de
Inteligencia Artificial, Data Mining, etc.
Calidad en Videojuegos 20
Pruebas automatizadas
BUILD/TEST FARMS
● Tipos de pruebas
○ Pruebas de validación
(Test de actor, comprobar
estado inicial de los objetos…;
fácil de implementar y útil para cuando hay muchos, aunque
costoso de ejecutar y no prueba nada de la funcionalidad)
○ Pruebas de unidad (probar una clase o incluso un método,
preciso, enfocado, rápido -no suelen hacer falta
fotogramas-... pero es código que peta fácil y se solidifica,
muy ligado a la arquitectura)
○ Pruebas de integración (probar subsistemas, algo más ligado a
la funcionalidad e incluso jugabilidad; menos precisas pero
prueban más cosas a la vez)
Calidad en Videojuegos 21
Pruebas automatizadas
○ Pruebas de rendimiento (se puede aprovechar una partida
guardada en Replay System, un mover la cámara en espacios
abiertos, etc.; aporta muchos datos, pero depende del HW y
del momento)
○ Pruebas de niveles (para recorrer
el mapa, ya hacen falta bots, con
algunos objetivos, aunque sean
muy burdos; depende del juego, puede ayudar hasta el
equilibrado -ej. juego 1vs1-, pero las pruebas van a tiempo
real y suelen ser poco deterministas)
● Es posible crear una IA capaz de jugar al juego, ya sea
de forma caótica -pulsando botones random- o más
inteligente, como bots para el juego… o ya un jugador
virtual, que es casi materia de investigación
Calidad en Videojuegos 22
Pruebas automatizadas
VIRTUAL PLAYER
● Se deben usar las más adecuadas para cada
tipo de proyecto
○ Herramientas, motores o bibliotecas de código… ya
muy estables, no son prototipos: Pruebas de unidad
y de integración
○ Jugabilidad y contenido (niveles) ya muy estables:
Pruebas de niveles, e incluso de rendimiento, y
bots sencillos y más avanzados (con IA)
○ Contenido (niveles) en desarrollo: Pruebas de
validación, bots sencillos
Calidad en Videojuegos 23
Pruebas automatizadas
● La replicación puede ayudarnos a revisar
errores y ayudar como prueba automatizada
○ Captura de imagen, video y de la propia jugabilidad
● Y por supuesto la Cheat Console !!!
Calidad en Videojuegos 24
Replicación y trucos
● Las famosas analíticas de dentro del juego,
los Key Performance Indicators (KPIs), etc.
● Live Ops,
equilibrar un
juego vivo,
como servicio
que está en
producción
Calidad en Videojuegos 25
Análisis (en producción)
● Reutiliza todo lo que puedas
● Sigue los consejos de prototipado para
iterar mucho y mejorar la idea de juego
● Usa buenas herramientas de depuración y
optimización para no introducir errores
● Conoce los procesos de industrialización y
globalización
● Existen varios tipos de pruebas
automatizadas, cada una para ciertos casos
● Finalmente, son importantes las analíticas
Calidad en Videojuegos 26
Resumen
● Izquierdo, R.: Testing de Videojuegos
(2020)
Calidad en Videojuegos 27
Más información
* Excepto el contenido multimedia de terceros autores
Federico Peinado (2015-2021)
www.federicopeinado.es
Críticas, dudas, sugerencias...
28

Más contenido relacionado

La actualidad más candente

Taller Prototipado - StartupWeekend Guatemala 2014
Taller Prototipado   - StartupWeekend Guatemala 2014Taller Prototipado   - StartupWeekend Guatemala 2014
Taller Prototipado - StartupWeekend Guatemala 2014Claudio Cossio
 
Enigma produccion productor
Enigma produccion productorEnigma produccion productor
Enigma produccion productorDaniel Parente
 
Introducción al curso Fundamentos de Programación Misión TIC 2022
Introducción al curso Fundamentos de Programación Misión TIC 2022Introducción al curso Fundamentos de Programación Misión TIC 2022
Introducción al curso Fundamentos de Programación Misión TIC 2022Richard Eliseo Mendoza Gafaro
 
Introducción a los patrones de diseño
Introducción a los patrones de diseñoIntroducción a los patrones de diseño
Introducción a los patrones de diseñoSoftware Guru
 
Importancia del testing en los proyectos
Importancia del testing en los proyectosImportancia del testing en los proyectos
Importancia del testing en los proyectosSoftware Guru
 
Td dvs bdd
Td dvs bddTd dvs bdd
Td dvs bddlsajrf
 
Seguridad vs Desarrolladores
Seguridad vs DesarrolladoresSeguridad vs Desarrolladores
Seguridad vs DesarrolladoresJaime Restrepo
 
SOFT SKILLS: Habilidades para cotizarse mejor
SOFT SKILLS: Habilidades para cotizarse mejorSOFT SKILLS: Habilidades para cotizarse mejor
SOFT SKILLS: Habilidades para cotizarse mejorSoftware Guru
 
Iniciación ágil de proyectos de software
Iniciación ágil de proyectos de softwareIniciación ágil de proyectos de software
Iniciación ágil de proyectos de softwareIsrael Antezana Rojas
 
¿Te Sientes Orgulloso Del CóDigo Que Escribes?
¿Te Sientes Orgulloso Del CóDigo Que Escribes?¿Te Sientes Orgulloso Del CóDigo Que Escribes?
¿Te Sientes Orgulloso Del CóDigo Que Escribes?Israel Antezana Rojas
 
Introducción a la Programación Extrema (XP)
Introducción a la Programación Extrema (XP)Introducción a la Programación Extrema (XP)
Introducción a la Programación Extrema (XP)Israel Antezana Rojas
 
Jugando podemos construir un software mejor
Jugando podemos construir un software mejorJugando podemos construir un software mejor
Jugando podemos construir un software mejorexcentia
 

La actualidad más candente (13)

Taller Prototipado - StartupWeekend Guatemala 2014
Taller Prototipado   - StartupWeekend Guatemala 2014Taller Prototipado   - StartupWeekend Guatemala 2014
Taller Prototipado - StartupWeekend Guatemala 2014
 
Enigma produccion productor
Enigma produccion productorEnigma produccion productor
Enigma produccion productor
 
Introducción al curso Fundamentos de Programación Misión TIC 2022
Introducción al curso Fundamentos de Programación Misión TIC 2022Introducción al curso Fundamentos de Programación Misión TIC 2022
Introducción al curso Fundamentos de Programación Misión TIC 2022
 
Introducción a los patrones de diseño
Introducción a los patrones de diseñoIntroducción a los patrones de diseño
Introducción a los patrones de diseño
 
Importancia del testing en los proyectos
Importancia del testing en los proyectosImportancia del testing en los proyectos
Importancia del testing en los proyectos
 
Td dvs bdd
Td dvs bddTd dvs bdd
Td dvs bdd
 
BDD y tests automatizados
BDD y tests automatizadosBDD y tests automatizados
BDD y tests automatizados
 
Seguridad vs Desarrolladores
Seguridad vs DesarrolladoresSeguridad vs Desarrolladores
Seguridad vs Desarrolladores
 
SOFT SKILLS: Habilidades para cotizarse mejor
SOFT SKILLS: Habilidades para cotizarse mejorSOFT SKILLS: Habilidades para cotizarse mejor
SOFT SKILLS: Habilidades para cotizarse mejor
 
Iniciación ágil de proyectos de software
Iniciación ágil de proyectos de softwareIniciación ágil de proyectos de software
Iniciación ágil de proyectos de software
 
¿Te Sientes Orgulloso Del CóDigo Que Escribes?
¿Te Sientes Orgulloso Del CóDigo Que Escribes?¿Te Sientes Orgulloso Del CóDigo Que Escribes?
¿Te Sientes Orgulloso Del CóDigo Que Escribes?
 
Introducción a la Programación Extrema (XP)
Introducción a la Programación Extrema (XP)Introducción a la Programación Extrema (XP)
Introducción a la Programación Extrema (XP)
 
Jugando podemos construir un software mejor
Jugando podemos construir un software mejorJugando podemos construir un software mejor
Jugando podemos construir un software mejor
 

Similar a GCV 03 Herramientas de desarrollo: Específicas para Videojuegos - Gestión de la Calidad en Videojuegos

Optimización del rendimiento
Optimización del rendimientoOptimización del rendimiento
Optimización del rendimientoFederico Peinado
 
DEV 04-01 Optimización del rendimiento.pdf
DEV 04-01 Optimización del rendimiento.pdfDEV 04-01 Optimización del rendimiento.pdf
DEV 04-01 Optimización del rendimiento.pdfFederico Peinado
 
Trucos de Unity que nadie te cuenta
Trucos de Unity que nadie te cuentaTrucos de Unity que nadie te cuenta
Trucos de Unity que nadie te cuentaMiguel Company
 
Preproducción y diseño del juego
Preproducción y diseño del juegoPreproducción y diseño del juego
Preproducción y diseño del juegoFederico Peinado
 
Presentacion tfm adrian_alonso_gonzalez-light
Presentacion tfm adrian_alonso_gonzalez-lightPresentacion tfm adrian_alonso_gonzalez-light
Presentacion tfm adrian_alonso_gonzalez-lightAdrián Alonso González
 
Experiencias desarrollando mi primer videojuego - Techne18
Experiencias desarrollando mi primer videojuego - Techne18Experiencias desarrollando mi primer videojuego - Techne18
Experiencias desarrollando mi primer videojuego - Techne18Vanessa Galcera
 
Programación de videojuegos con Godot Engine
Programación de videojuegos con Godot EngineProgramación de videojuegos con Godot Engine
Programación de videojuegos con Godot Enginepythoncanarias
 
Programas para hacer video juegos
Programas para hacer video juegosProgramas para hacer video juegos
Programas para hacer video juegosSonia Ramirez
 
Pasos para hacer un videojuego
Pasos para hacer un videojuegoPasos para hacer un videojuego
Pasos para hacer un videojuegoDianayjeferson
 
Unity3D_PARA_MONOS.pptx
Unity3D_PARA_MONOS.pptxUnity3D_PARA_MONOS.pptx
Unity3D_PARA_MONOS.pptxEvolis3D
 
Cinemáticas y localización
Cinemáticas y localizaciónCinemáticas y localización
Cinemáticas y localizaciónFederico Peinado
 
GWJ2019 Capital - Patrones de fracaso
GWJ2019 Capital - Patrones de fracasoGWJ2019 Capital - Patrones de fracaso
GWJ2019 Capital - Patrones de fracasoGuillermo Averbuj
 
Produccion de videojuegos
Produccion de videojuegosProduccion de videojuegos
Produccion de videojuegosJulián Herrera
 
[2013] Desarrollo Videojuegos
[2013] Desarrollo Videojuegos[2013] Desarrollo Videojuegos
[2013] Desarrollo VideojuegosJorge Palacios
 
Gráficos 3D en Linux con Mesa (GPUL Labs Meetup)
Gráficos 3D en Linux con Mesa (GPUL Labs Meetup)Gráficos 3D en Linux con Mesa (GPUL Labs Meetup)
Gráficos 3D en Linux con Mesa (GPUL Labs Meetup)Igalia
 

Similar a GCV 03 Herramientas de desarrollo: Específicas para Videojuegos - Gestión de la Calidad en Videojuegos (20)

Optimización del rendimiento
Optimización del rendimientoOptimización del rendimiento
Optimización del rendimiento
 
DEV 04-01 Optimización del rendimiento.pdf
DEV 04-01 Optimización del rendimiento.pdfDEV 04-01 Optimización del rendimiento.pdf
DEV 04-01 Optimización del rendimiento.pdf
 
Trucos de Unity que nadie te cuenta
Trucos de Unity que nadie te cuentaTrucos de Unity que nadie te cuenta
Trucos de Unity que nadie te cuenta
 
Preproducción y diseño del juego
Preproducción y diseño del juegoPreproducción y diseño del juego
Preproducción y diseño del juego
 
TALLER VIDEOJUEGO 2D
TALLER VIDEOJUEGO 2DTALLER VIDEOJUEGO 2D
TALLER VIDEOJUEGO 2D
 
Presentacion tfm adrian_alonso_gonzalez-light
Presentacion tfm adrian_alonso_gonzalez-lightPresentacion tfm adrian_alonso_gonzalez-light
Presentacion tfm adrian_alonso_gonzalez-light
 
Working with a design system
Working with a design systemWorking with a design system
Working with a design system
 
Experiencias desarrollando mi primer videojuego - Techne18
Experiencias desarrollando mi primer videojuego - Techne18Experiencias desarrollando mi primer videojuego - Techne18
Experiencias desarrollando mi primer videojuego - Techne18
 
Programación de videojuegos con Godot Engine
Programación de videojuegos con Godot EngineProgramación de videojuegos con Godot Engine
Programación de videojuegos con Godot Engine
 
Programas para hacer video juegos
Programas para hacer video juegosProgramas para hacer video juegos
Programas para hacer video juegos
 
Pasos para hacer un videojuego
Pasos para hacer un videojuegoPasos para hacer un videojuego
Pasos para hacer un videojuego
 
Unity3D_PARA_MONOS.pptx
Unity3D_PARA_MONOS.pptxUnity3D_PARA_MONOS.pptx
Unity3D_PARA_MONOS.pptx
 
Intro UNITY.pptx
Intro UNITY.pptxIntro UNITY.pptx
Intro UNITY.pptx
 
Cinemáticas y localización
Cinemáticas y localizaciónCinemáticas y localización
Cinemáticas y localización
 
GWJ2019 Capital - Patrones de fracaso
GWJ2019 Capital - Patrones de fracasoGWJ2019 Capital - Patrones de fracaso
GWJ2019 Capital - Patrones de fracaso
 
Produccion de videojuegos
Produccion de videojuegosProduccion de videojuegos
Produccion de videojuegos
 
[2013] Desarrollo Videojuegos
[2013] Desarrollo Videojuegos[2013] Desarrollo Videojuegos
[2013] Desarrollo Videojuegos
 
Gráficos 3D en Linux con Mesa (GPUL Labs Meetup)
Gráficos 3D en Linux con Mesa (GPUL Labs Meetup)Gráficos 3D en Linux con Mesa (GPUL Labs Meetup)
Gráficos 3D en Linux con Mesa (GPUL Labs Meetup)
 
Juego Pin Pon en java
Juego Pin Pon en javaJuego Pin Pon en java
Juego Pin Pon en java
 
02 vdj egdc_luis villegas
02 vdj egdc_luis villegas 02 vdj egdc_luis villegas
02 vdj egdc_luis villegas
 

Más de Federico Peinado

Comunicación en lenguaje natural
Comunicación en lenguaje naturalComunicación en lenguaje natural
Comunicación en lenguaje naturalFederico Peinado
 
Representación del conocimiento
Representación del conocimientoRepresentación del conocimiento
Representación del conocimientoFederico Peinado
 
Búsqueda de caminos usando estrategias informadas
Búsqueda de caminos usando estrategias informadasBúsqueda de caminos usando estrategias informadas
Búsqueda de caminos usando estrategias informadasFederico Peinado
 
Representación del entorno
Representación del entornoRepresentación del entorno
Representación del entornoFederico Peinado
 
Resolución de problemas en el espacio de estados
Resolución de problemas en el espacio de estadosResolución de problemas en el espacio de estados
Resolución de problemas en el espacio de estadosFederico Peinado
 
Comportamiento de dirección
Comportamiento de direcciónComportamiento de dirección
Comportamiento de direcciónFederico Peinado
 
Generación procedimental de contenido (+ Pseudocódigo)
Generación procedimental de contenido (+ Pseudocódigo)Generación procedimental de contenido (+ Pseudocódigo)
Generación procedimental de contenido (+ Pseudocódigo)Federico Peinado
 

Más de Federico Peinado (20)

Herramientas de autoría
Herramientas de autoríaHerramientas de autoría
Herramientas de autoría
 
Interfaz del mundo
Interfaz del mundoInterfaz del mundo
Interfaz del mundo
 
Gestión de la ejecución
Gestión de la ejecuciónGestión de la ejecución
Gestión de la ejecución
 
Acción coordinada
Acción coordinadaAcción coordinada
Acción coordinada
 
Comunicación en lenguaje natural
Comunicación en lenguaje naturalComunicación en lenguaje natural
Comunicación en lenguaje natural
 
Puntos de ruta tácticos
Puntos de ruta tácticosPuntos de ruta tácticos
Puntos de ruta tácticos
 
Análisis táctico
Análisis tácticoAnálisis táctico
Análisis táctico
 
Probabilidad y utilidad
Probabilidad y utilidadProbabilidad y utilidad
Probabilidad y utilidad
 
Árbol de comportamiento
Árbol de comportamientoÁrbol de comportamiento
Árbol de comportamiento
 
Reglas y planificación
Reglas y planificaciónReglas y planificación
Reglas y planificación
 
Máquina de estados
Máquina de estadosMáquina de estados
Máquina de estados
 
Representación del conocimiento
Representación del conocimientoRepresentación del conocimiento
Representación del conocimiento
 
Búsqueda de caminos usando estrategias informadas
Búsqueda de caminos usando estrategias informadasBúsqueda de caminos usando estrategias informadas
Búsqueda de caminos usando estrategias informadas
 
Representación del entorno
Representación del entornoRepresentación del entorno
Representación del entorno
 
Resolución de problemas en el espacio de estados
Resolución de problemas en el espacio de estadosResolución de problemas en el espacio de estados
Resolución de problemas en el espacio de estados
 
Desplazamiento en grupo
Desplazamiento en grupoDesplazamiento en grupo
Desplazamiento en grupo
 
Percepción
PercepciónPercepción
Percepción
 
Comportamiento de dirección
Comportamiento de direcciónComportamiento de dirección
Comportamiento de dirección
 
Física y animación
Física y animaciónFísica y animación
Física y animación
 
Generación procedimental de contenido (+ Pseudocódigo)
Generación procedimental de contenido (+ Pseudocódigo)Generación procedimental de contenido (+ Pseudocódigo)
Generación procedimental de contenido (+ Pseudocódigo)
 

Último

Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 

Último (10)

Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 

GCV 03 Herramientas de desarrollo: Específicas para Videojuegos - Gestión de la Calidad en Videojuegos

  • 1. Gestión de Calidad en Videojuegos Herramientas de desarrollo Específicas para videojuegos
  • 2. ● Y en la creación de videojuegos, ¿qué se utiliza para gestionar bien la calidad? Calidad en Videojuegos 2 Motivación
  • 3. ● Reutilización ● Pruebas de concepto ● Depuración ● Optimización ● Industrialización ● Globalización ● Pruebas automatizadas ● Análisis (en producción) Calidad en Videojuegos 3 Puntos clave
  • 4. ● Rovio creó 51 juegos antes de Angry Birds Calidad en Videojuegos 4 Reutilización
  • 5. ● Hacer algo nuevo = Aprender = Equivocarse Calidad en Videojuegos 5 Reutilización Sitio web de Jonathan Blow http://www.number-none.com/blow/ “Una persona que nunca ha cometido un error nunca intentó nada nuevo” - Albert Einstein
  • 6. ● Primera idea, siempre: ¡NO HACERLO! ○ Reutilizar algo suficientemente bueno de otro Calidad en Videojuegos 6 Reutilización
  • 7. ● Hay plantillas muy completas a la venta ○ https://www.sellmyapp.com ○ https://codecanyon.net ○ https://www.codester.com ○ https://www.gamegorillaz.com/ggmarketplace Calidad en Videojuegos 7 Reutilización
  • 8. ● La calidad es cuestión de tiempo en esto... Calidad en Videojuegos 8 Reutilización
  • 9. ● Otra cosa es si buscas originalidad... ● Ejemplo: Primera iteración (idea de juego) ○ ¡Carreras de submarinos con torpedos! Calidad en Videojuegos 9 Pruebas de concepto ¿Cómo serían las pistas? ¿Va a resultar un juego novedoso? ¿Podemos hacer el efecto de estar bajo el agua?
  • 10. ● Segunda iteración: Carreras multijugador de submarinos anfibios y voladores ○ ¡Estética de “submarinos de carreras”, con juego equilibrado bajo y sobre el mar, mediante conexión a través de Internet! Calidad en Videojuegos 10 Pruebas de concepto Catálogo de submarinos, pasarle encuesta a amigos Motor de multijugador en red Prototipo en Java
  • 11. ● Conseguir rápidamente prototipos eficaces ayuda a mejorar la calidad del juego 1. Deben diseñarse para dar respuesta a una (o varias) cuestiones concretas 2. No debe preocuparnos su calidad (rápidos y sucios) 3. Planifica contando con “tirar” al menos uno a la basura (o varios) 4. Deben priorizarse, y hacer el más crítico primero 5. Deben paralelizarse cuando sea posible, para obtener más respuestas en un mismo tiempo 6. No tienen por qué ser digitales (pueden ser con lápiz y papel o en vivo directamente) Calidad en Videojuegos 11 Consejos
  • 12. 7. No tienen por qué ser interactivos (ej. animación) 8. Procura usar un “ciclo rápido” de desarrollo ■ Herramientas que te den mucho hecho ■ Edición o incluso programación “en caliente” (sin tener que compilar todo de nuevo) ■ What You See Is What You Play (WYSIWYP) 9. Empieza por construir el “juguete” ■ La base donde luego se apoyará el juego 10. Aprovecha cualquier oportunidad de iterar más para seguir mejorando el juego Calidad en Videojuegos 12 Consejos “Una obra de arte nunca se termina, sólo se abandona” - Leonardo da Vinci
  • 13. ● Equilibrado de la economía del juego ○ Machinations, Ludible, etc. https://machinations.io http://www.ludible.nl Calidad en Videojuegos 13 Pruebas de concepto
  • 14. ● La mejor estrategia contra los errores es la prevención (¡no introducirlos tú!) ● Debuggers, loggers, incluso visual loggers Calidad en Videojuegos 14 Depuración
  • 15. ● Profilers y analizadores de rendimiento Calidad en Videojuegos 15 Optimización
  • 16. ● En términos de plataformas es necesario pasar por procesos de cumplimiento e incluso certificación de los estándares que imponga la plataforma ○ Technical Requirements Checklist (TRC) de Sony ○ Technical Certification Requirements (TCR) de Microsoft ○ LotCheck de Nintendo ○ ... Calidad en Videojuegos 16 Industrialización
  • 17. ● Tecnología para la internacionalización ● Contenido localizado para cada región Calidad en Videojuegos 17 Globalización
  • 18. ● Se trata de código que permite realizar algunas pruebas básicas sobre el juego sin intervención humana ○ Tienen sentido porque la complejidad de la jugabilidad cada vez es mayor y los contenidos de un juego promedio también son cada vez mayores ○ Conviene comprometerse a su uso desde el principio, en el plan de prueba ○ La arquitectura software debe estar preparada para el tipo de pruebas que vamos a realizar (componentes independientes, mocking e interfaces de estados...) Calidad en Videojuegos 18 Pruebas automatizadas
  • 19. ● Ventajas ○ Reduce el coste y la duración de las pruebas ○ Todas son perfectamente repetibles ○ Pueden hacerse todas las noches o fines de semana (en equipos internacionales, es menos relevante) ○ Se automatizan mejor los resultados de las pruebas y el seguimiento y la gestión de las mismas ○ Son fáciles de programar para validaciones sencillas o funcionalidad muy obvia (¡hay proyectos donde se crean miles o incluso decenas de miles!) ○ Se pueden hacer pruebas de estrés para rendimiento (benchmark) Calidad en Videojuegos 19 Pruebas automatizadas
  • 20. ● Desventajas ○ Tiene sentido pasar primero todas las pruebas automatizadas (para colisiones y cosas simples)… pero luego viene la QA normal (gráficos, sonidos, interfaz, voces… ¡experiencia de juego!) ○ Si el juego no es 100% determinista, los resultados no van a ser idénticos en cada ejecución ○ Muchas necesitan granjas de máquinas dedicadas a compilar y probar el juego ○ Puede ser complejo si aplicamos técnicas de Inteligencia Artificial, Data Mining, etc. Calidad en Videojuegos 20 Pruebas automatizadas BUILD/TEST FARMS
  • 21. ● Tipos de pruebas ○ Pruebas de validación (Test de actor, comprobar estado inicial de los objetos…; fácil de implementar y útil para cuando hay muchos, aunque costoso de ejecutar y no prueba nada de la funcionalidad) ○ Pruebas de unidad (probar una clase o incluso un método, preciso, enfocado, rápido -no suelen hacer falta fotogramas-... pero es código que peta fácil y se solidifica, muy ligado a la arquitectura) ○ Pruebas de integración (probar subsistemas, algo más ligado a la funcionalidad e incluso jugabilidad; menos precisas pero prueban más cosas a la vez) Calidad en Videojuegos 21 Pruebas automatizadas
  • 22. ○ Pruebas de rendimiento (se puede aprovechar una partida guardada en Replay System, un mover la cámara en espacios abiertos, etc.; aporta muchos datos, pero depende del HW y del momento) ○ Pruebas de niveles (para recorrer el mapa, ya hacen falta bots, con algunos objetivos, aunque sean muy burdos; depende del juego, puede ayudar hasta el equilibrado -ej. juego 1vs1-, pero las pruebas van a tiempo real y suelen ser poco deterministas) ● Es posible crear una IA capaz de jugar al juego, ya sea de forma caótica -pulsando botones random- o más inteligente, como bots para el juego… o ya un jugador virtual, que es casi materia de investigación Calidad en Videojuegos 22 Pruebas automatizadas VIRTUAL PLAYER
  • 23. ● Se deben usar las más adecuadas para cada tipo de proyecto ○ Herramientas, motores o bibliotecas de código… ya muy estables, no son prototipos: Pruebas de unidad y de integración ○ Jugabilidad y contenido (niveles) ya muy estables: Pruebas de niveles, e incluso de rendimiento, y bots sencillos y más avanzados (con IA) ○ Contenido (niveles) en desarrollo: Pruebas de validación, bots sencillos Calidad en Videojuegos 23 Pruebas automatizadas
  • 24. ● La replicación puede ayudarnos a revisar errores y ayudar como prueba automatizada ○ Captura de imagen, video y de la propia jugabilidad ● Y por supuesto la Cheat Console !!! Calidad en Videojuegos 24 Replicación y trucos
  • 25. ● Las famosas analíticas de dentro del juego, los Key Performance Indicators (KPIs), etc. ● Live Ops, equilibrar un juego vivo, como servicio que está en producción Calidad en Videojuegos 25 Análisis (en producción)
  • 26. ● Reutiliza todo lo que puedas ● Sigue los consejos de prototipado para iterar mucho y mejorar la idea de juego ● Usa buenas herramientas de depuración y optimización para no introducir errores ● Conoce los procesos de industrialización y globalización ● Existen varios tipos de pruebas automatizadas, cada una para ciertos casos ● Finalmente, son importantes las analíticas Calidad en Videojuegos 26 Resumen
  • 27. ● Izquierdo, R.: Testing de Videojuegos (2020) Calidad en Videojuegos 27 Más información
  • 28. * Excepto el contenido multimedia de terceros autores Federico Peinado (2015-2021) www.federicopeinado.es Críticas, dudas, sugerencias... 28