Logo Studenta

Laberinto 3D - un instrumento para estimulacion cognitiva de personas mayores

¡Este material tiene más páginas!

Vista previa del material en texto

Laberinto 3D: un instrumento para estimulación
cognitiva de personas mayores
Universidad Nacional del Centro de la Provincia de Buenos Aires
Trabajo Final de la carrera Ingeniería de Sistemas
Alumno: Manuel Christensen Montenegro
Directora: Virginia Cifuentes
Co-Director: Hernan Rocha
Agradecimientos
A mis papás, ya que fueron los que me permitieron ser el que soy y tener la
posibilidad de poder estudiar esta carrera.
Al resto de la familia por siempre preocuparse por mí y acompañarme con
sus buenos deseos.
A mis amigos, por siempre ser un gran apoyo, a la hora de los distintos retos
que representó la carrera y también ayudarme en la preparación de las materias.
Y a mi directora de tesis, por permitirme realizar este trabajo.
2
Resumen
Los avances en la computación beneficiaron a muchas disciplinas de distintas
formas. Nuestro enfoque está dirigido hacia las intervenciones tecnológicas en
estudios de la cognición, precisamente en la estimulación cognitiva basada en
programas para mantener y mejorar funciones ejecutivas clave como la atención,
memoria o la velocidad de procesamiento.
Nuestro estudio está dirigido a una persona mayor que tiene un cierto declive
cognitivo debido al envejecimiento normal y quiere mantener un buen nivel
cognitivo, pero también puede ser un estudiante o deportista de élite que desea
tener el máximo rendimiento cognitivo en su actividad profesional.
Las actividades de estimulación cognitiva se proponen como parte de una
aplicación estilo videojuego implementado con técnicas de computación gráfica y
realidad virtual. Las experiencias plantean resolver laberintos virtuales
tridimensionales, recolectar objetos esparcidos dentro del laberinto (que ha dejado
el profesional para fortalecer la memoria de trabajo o completar actividades lúdicas
que refuerzan las habilidades complejas como son las funciones ejecutivas. La
aplicación consta de una interacción intuitiva y la capacidad de llevar los registros de
cada intento que se efectúa.
Debido a la pandemia por Covid-19, esta herramienta de estimulación
cognitiva fue probada en un grupo de adultos jóvenes obteniendo resultados
promisorios que han sido recientemente publicados en la Revista Iberoamericana de
Psicología (García y otros, 2022).
3
Índice
Capítulo 1 Introducción 11
1.1 Motivación 15
1.2 Objetivos 16
1.3 Estructura de la tesis 17
Capítulo 2 Antecedentes y Marco Teórico 18
2.1 Entornos virtuales en el entrenamiento cognitivo 18
2.2 Procesos cognitivos estudiados 19
2.3 Programas actuales para estimulación cognitiva 21
2.3.1 Lista de programas 21
2.3.1.1 Brain Training del Dr. Kawashima 21
2.3.1.2 Big Brain Academy 22
2.3.1.3 Brain Challenges 24
2.3.1.4 Lumosity 25
2.3.1.5 Cognifit 26
2.3.1.6 NeuronUp 28
2.3.1.7 RehaCom 29
2.3.1.8 Gradior 30
2.3.2 Análisis de herramientas 32
2.4 Tecnologías para entornos virtuales de estimulación cognitiva 33
2.4.1 Unity 39
Capítulo 3 Solución Propuesta 42
3.1 Análisis de requerimientos 42
3.2 App Labyrinth 43
3.2.1 ¿Qué es la app Labyrinth? 43
3.2.2 ¿Cómo funciona la app Labyrinth? 44
3.2.3 ¿Cómo se utiliza la app Labyrinth? 45
3.2.4 Caso de Uso 45
4
3.2.4.1 Realizar el laberinto 46
3.2.4.2 Configurar los elementos de todos los laberintos 47
3.2.4.3 Configurar los elementos que se recolectan en un laberinto 48
3.2.4.4 Ver los registros 48
3.2.5 Cómo se construyen las Tareas 48
3.2.6 Decisiones de Diseño 49
3.2.7 Detalles Técnicos 49
3.3 Componentes del Sistema 50
3.3.1 Menú principal 50
3.3.2 Generador de Laberinto 55
3.3.3 Tareas 60
3.3.4 Sistema de registros 62
3.3.5 Personaje 63
3.3.6 Modelos 3D 65
3.3.7 Diseño de los laberintos 67
Capítulo 4 Resultados 70
4.1 Aplicación Resultante 70
4.1.1 Evaluación de Calidad 72
4.2 Resultados de la recolección de datos 73
4.2.1 Muestra 73
4.2.2 Resultados 73
4.2.2.1 Índice de Memoria de trabajo 74
4.2.2.2 Velocidad de procesamiento 74
4.2.2.3 Índices de validez ecológica 74
4.2.2.4 Desempeño global en la tarea 75
4.3 Desafíos y problemas 76
Capítulo 5 Conclusiones 78
5.1 Soluciones y mejoras a la aplicación actual 78
5.1.1 Mejorar el sistema de almacenado de los datos 79
5
5.1.2 Sistema de usuarios 79
5.1.3 Realizar un sistema de visualización de los datos recolectados 79
5.1.4 Tener un sistema dentro de la aplicación para el desarrollo
de los niveles 80
5.1.5 Mejorar el sistema de configuración para que sea más
amigable y comprensible 80
5.1.6 Que la aplicación esté disponible a más plataformas 81
5.2 Trabajos Futuros 81
Bibliografía 83
6
Índice de figuras
Figura 1.1: Proporción de personas mayores de 65 años en el mundo para
2050. Fuente ONU www.epdata.es. 12
Figura 1.2: Evolución de la población mundial por grupos etarios. Fuente
ONU 2019. 13
Figura 1.3: Sistema de rehabilitación marcha - C-Mill VR+ desarrollado
por Motekforce. 14
Figura 1.4: Uso de Lentes de RV para bienestar emocional (Lin y otros, 2018). 15
Figura 2.1: Distintos ejercicios planteados en Brain Training del Dr. Kawashima. 23
Figura 2.2: Desempeño del Jugador: peso del cerebro en gramos (arriba)
y valoración en las 5 categorías (abajo). 24
Figura 2.3: Ejemplos de ejercicios de Big Brain Academy la consigna y
qué categoría se está evaluando. 25
Figura 2.4: Imagen del Juego Brain Challenge. 25
Figura 2.5: Captura de Lumosity. 26
Figura 2.6: Captura de Cognifit. Categorías y Subcategorías para
los entrenamientos. 28
Figura 2.7: Capturas de Cognifit para móvil. 28
Figura 2.8: Selección de juegos en NeuronUp. 29
Figura 2.9: Juego de NeuronUp. 30
Figura 2.10: Juego del módulo de Atención y Concentración. 30
Figura 2.11: Módulos de Screening de RehaCom. 31
Figura 2.12: Juego de memoria en Gradior. 32
Figura 2.13: Interfaz del Terapeuta en Gradior. 32
Figura 2.14: Juego Dr. Mario para la NES. 35
Figura 2.15: Juego Portal. 35
Figura 2.16: Juego de celular Candy Crush. 36
Figura 2.17: Imagen del juego Cut the Rope. 36
7
Figura 2.18: Imagen del juego 2048. 36
Figura 2.19: Imagen del Motor Rpg Maker. 38
Figura 2.20: Imagen del motor Godot. 39
Figura 2:21: Imagen del Motor Pico-8 39
Figura 2.22: Imagen del motor Unity. 40
Figura 2.23: Imagen del motor Unreal Engine 4. 40
Figura 3.1: Figura de usuario realizando el Primer laberinto. 45
Figura 3.2: Imagen desde arriba del Primer laberinto. 45
Figura 3.3: Diagrama de casos de uso de la aplicación. 47
Figura 3.4: Diagrama de Componentes del sistema. 51
Figura 3.5: Imagen del menú principal. 52
Figura 3.6: Imagen del menú de configuración general. 52
Figura 3.7: Imagen del menú de configuración de los objetos recolectados en
un nivel particular. 52
Figura 3.8: código para la transición entre el menú principal y la
configuración general. 53
Figura 3.9: código de Inicialización de la clase estática PersistentData. 54
Figura 3.10: Ejemplo de JSON de la configuración de la aplicación. 54
Figura 3.11: Código del botón iniciar para cambiar de escena o mostrar un
error en caso de que no se rellenará la casilla del nombre. 55
Figura 3.12: Código que almacena la configuración general en el
PersistentData y el archivo de configuración. 56
Figura 3.13: Datos que se pueden ingresar al generador de laberinto del
Package Maze Generator. 57
Figura 3.14: Imagen de laberinto de ejemplo junto con su configuración. 57
Figura 3.15: Imagen de otro laberinto utilizando un algoritmo distinto. 58
Figura 3.16: Contenido de las celdas que usa el generador de laberinto. 59
Figura 3.17: Código que carga los materiales que se instancian como
elementos recolectables en el laberinto. 60
8
Figura 3.18: Código de instanciación de los objetos y de la flecha. 60
Figura 3.19: Verificador del orden en el que se agarraron los objetos. 61
Figura 3.20: Código de almacenamiento del objeto y destrucción llamado dentro
de la función OnCollisionEnter. 61
Figura 3.21: Código del comparador del orden puesto por el evaluado con el
orden correcto y almacenador de los resultados. 62
Figura 3.22: Imagen deejemplo de la flecha. 63
Figura 3.23: Código donde se genera y escribe el archivo que registra el tiempo
que tarda un usuario en llegar a la meta con todos los requisitos cumplidos
en un nivel. 64
Figura 3.24: Imagen de cómo se veía el personaje (la bola) y la cámara
en el programa original. 65
Figura 3.25: Código de colisionador del personaje. 66
Figura 3.26: Modelo 3D de las paredes del laberinto. 66
Figura 3.27: Modelo 3D de los pilares del laberinto. 67
Figura 3.28: Modelo 3D del piso del laberinto, del inicio del laberinto Asset
y de la meta del laberinto respectivamente. 67
Figura 3.29: Algunos de los elementos que se usaron para los alrededores del
nivel 3. 67
Figura 3.30: Imagen del prefab con una imagen de ejemplo. 68
Figura 3.31: Criterio planteado para el primer laberinto. 69
Figura 3.32: Imagen desde arriba del segundo laberinto. 69
Figura 3.33: Imagen desde arriba del tercer laberinto. 70
Figura 3.34: Imagen desde arriba del cuarto laberinto. 70
Figura 4.1: Archivo generado del registro de recolección de objetos del
primer nivel por la aplicación. 72
Figura 4.2: Resultado de importar el archivo de la figura 4.1 en hoja de cálculo
de Google. 72
Figura 4.3: Imagen de los elementos que conforman al nivel 4 junto con
9
los detalles de valores que se pueden modificar en el generador del laberinto
para realizar nuevos niveles 73
10
Capítulo 1 Introducción
La población mundial está envejeciendo. El número de personas mayores de
65 años en el mundo ha ido en aumento en los últimos años, y está previsto que
esta tendencia continúe en alza en las próximas décadas. Según la OMS, entre
2015 y 2050, se duplicará el porcentaje de las personas mayores de 60 años,
pasando del 12% al 22% (OMS, 2016).
Figura 1.1: Proporción de personas mayores de 65 años en el mundo para 2050.
Fuente ONU www.epdata.es.
La Figura 1.1 muestra una proyección de la población mundial realizada por
la ONU en septiembre de 2020. El mapa indica cómo será la proporción de
personas mayores de 65 años en el mundo para 2050. Atendiendo al porcentaje que
representaría en la población de cada país, los más envejecidos serían Corea del
Sur, Japón y España. Es decir, las personas viviremos un período cada vez más
prolongado de nuestras vidas como adultos mayores (Ferri et al., 2005), con
características biológicas específicas y condiciones de salud propias de la vejez.
Asimismo, prevé que el número de personas de 80 años o más se triplique,
pasando de 143 millones en 2019 a 426 millones en 2050. La Figura 1.2 muestra la
evolución de la población por grupos etarios (ONU, 2019). Por un lado, esta
transformación demográfica tiene consecuencias en el mercado de trabajo, porque
11
http://www.epdata.es
la población en edad laboral se reduce progresivamente. Si le añadimos que los
servicios sociales se financian con las aportaciones de las personas que cotizan y
estas cada vez representan una proporción menor, el sistema de bienestar también
se verá afectado.
Para algunas personas, llegar a esta edad significa tener la oportunidad de
estudiar, viajar o tener más tiempo para el ocio y el cuidado personal, pero esto
solamente es posible cuando se goza de buena salud, se tienen los recursos
económicos suficientes y, normalmente, se posee una red familiar y de amigos
consolidados. Si, por el contrario, a las situaciones de empobrecimiento se les
añaden la dependencia y la soledad ⎯muchas veces no deseada⎯ en las que se
encuentran muchas personas en el tramo final de su vida, vivir más años puede
convertirse en algo negativo.
Figura 1.2: Evolución de la población mundial por grupos etarios. Fuente ONU 2019.
Llegados a los 65 años es conveniente explorar distintas estrategias de
estimulación cognitiva para mantener u optimizar un mejor funcionamiento cognitivo
hasta una edad más avanzada y desarrollar un envejecimiento activo y saludable.
Ciertamente, el envejecimiento es inevitable, pero es particular en cada persona y,
para atenuar los cambios físicos, psicológicos y sociales que se producen, es
importante promover el envejecimiento activo de las personas, adoptar hábitos de
vida saludables y entrenar las funciones cognitivas.
Al envejecer comienzan a aparecer las fallas cognitivas que hacen ver que el
funcionamiento de la memoria está disminuyendo. Las señales son los olvidos de
nombres propios, la pérdida de objetos, la dificultad para mantener la atención y la
12
concentración. Con el tiempo, se agudiza el deterioro y se agravan las funciones
ejecutivas, indispensables para planificar y tomar las decisiones correctas, o para
encontrar las palabras idóneas en un momento y contexto propio. También
sobreviene una mayor lentitud en la ejecución de tareas y en la resolución de
problemas.
El entrenamiento cognitivo surge como una estrategia para prevenir estos
signos del envejecimiento en la memoria. Es decir, mediante la estimulación
cognitiva se busca acelerar la velocidad de procesamiento de la información,
mejorar la atención y la percepción, y fortalecer las funciones ejecutivas, es decir,
aquellas capacidades que nos permiten alcanzar las metas propuestas en la vida
como lo son planificar, organizar, guiar, revisar, regularizar y evaluar el
comportamiento necesario para adaptarse eficazmente al entorno (Bauermeister,
2008).
Figura 1.3: Sistema de rehabilitación marcha - C-Mill VR+ desarrollado por
Motekforce.
Las nuevas tecnologías permiten realizar el entrenamiento cognitivo a través
de la digitalización de algunas actividades lúdicas propuestas en talleres u otros
programas dedicados (Fernández-Calvo, Bernardino; Rodríguez-Pérez, Roberto;
Contador, Israel; Rubio-Santorum, Alicia; Ramos, Francisco 2011), pero el uso del
videojuego como herramienta de entrenamiento es más eficiente si se trata de un
gran número de participantes y sesiones de entrenamiento constantes.
13
La realidad virtual (RV) ofrece una alternativa apropiada para entrenar
habilidades cognitivas en ambientes seguros. Puede ofrecer una propuesta
no-inmersiva como una totalmente inmersiva (D’Cunha et al., 2019). Por ejemplo, la
Figura 1.3 muestra una aplicación de RV no-inmersiva dedicada a la rehabilitación
física con estimulaciones psico motrices (C-Mill, 2021) y la figura 1.4, una aplicación
de RV inmersiva donde la persona mayor usa dispositivos montados en la cabeza
para sumergirse en un entorno 3D que ofrece estímulos auditivos y visuales en 360°
(Lin y otros, 2018).
Figura 1.4: Uso de Lentes de RV para bienestar emocional (Lin y otros, 2018).
Finalmente, este trabajo aporta una plataforma basada en tecnología de
Realidad Virtual (RV) para ayudar a mejorar los resultados de las intervenciones
psicológicas de entrenamiento cognitivo de personas mayores (Schneider, 1992;
Tart, 1991). La plataforma ofrece una tarea interesante, y cognitivamente desafiante,
que le permite al profesional evaluar aspectos cognitivos del adulto mientras está
jugando (Howcroft et al., 2012).
La plataforma se desarrolló para equipos personales y permite a los
profesionales crear experimentos de estimulación cognitiva dentro de un laberinto
3D. Los laberintos permiten estudiar la orientación espacial de las personas a partir
de las estrategias seleccionadas para su recorrido (Laure Rondi-Reig, Géraldine H.
Petit, Christine Tobin, Susumu Tonegawa, Jean Mariani and Alain Berthoz. (2006).
14
Impaired Sequential Egocentric and Allocentric Memories in
Forebrain-Specific–NMDA Receptor Knock-Out Mice during a New Task Dissociating
Strategies of Navigation; Morris, Garrud, Rawlins, & O'Keefe. (1982). Place
navigation impaired in rats with hippocampal lesions; Korthauer LE, Nowak NT,
Frahmand M, Driscoll I. (2017) Cognitive correlates of spatial navigation:
Associations between executive functioning and the virtual Morris Water Task. Behav
Brain Res. ; Nedelska, Z., Andel, R., Laczó, J., Vlcek, K., Horinek, D., Lisy, J.,
Sheardova, K., Bures, J., & Hort, J. (2012). Spatialnavigation impairment is
proportional to right hippocampal volume. Proceedings of the National Academy of
Sciences of the United States of America, 109(7), 2590–2594), evaluar la retención
de información del participante cuando necesita memorizar las ubicaciones de
algunos objetos cotidianos ubicados en ese mundo virtual (Koenig, Sebastian &
Crucian, Gregory & Duenser, Andreas & Bartneck, Christoph & Dalrymple-Alford,
John. (2011). Validity evaluation of a spatial memory task in virtual environments. ),
o construir, mantener y recuperar el mapa cognitivo de la ciudad virtual y encontrar
algunos puntos que le sirvan de referencia (Iaria G, Chen J-K, Guariglia C, Ptito A,
Petrides M. (2007). Retrosplenial and hippocampal brain regions in human
navigation: complementary functional contributions to the formation and use of
cognitive maps. European Journal of Neuroscience 25: 890-899).
Es importante destacar que, debido a la situación de emergencia sanitaria del
COVID-19, la plataforma pudo probarse en un grupo pequeño de personas
mayores. Los resultados preliminares han demostrado que resultó de gran ayuda
para estimular las funciones cerebrales asociadas con la disminución del
funcionamiento cognitivo que se produce en las personas mayores.
1.1 Motivación
Este trabajo se enmarca en las investigaciones del Proyecto de Incentivos
03/C298 en el área Media.Lab del Instituto PLADEMA, Facultad de Ciencias
Exactas.
El Media.Lab es un espacio multidisciplinario centrado en la investigación y
desarrollo de aplicaciones de computación gráfica, realidad virtual e interacción
humano-computadora. Sus integrantes desarrollan simuladores de entrenamiento
15
de operarios para la capacitación en procesos, uso de maquinarias y vehículos de
maniobrabilidad compleja, entre otras innovaciones que priorizan la formación de
oficio, integral y segura.
Las investigaciones más recientes pretenden expandir estas tecnologías a
distintas áreas del conocimiento como el ámbito educacional, la estimulación
cognitiva y las neurociencias. El equipo de trabajo es interdisciplinario y está
conformado por tecnólogos de UNCPBA y psicólogos especialistas en gerontología
del IPSIBAT de la Universidad Nacional de Mar del Plata.
En la actualidad se trabaja en el desarrollo de una plataforma de software
para crear videojuegos aplicados a la evaluación y el entrenamiento social y
cognitivo de niños con autismo, un prototipo experimental para estudios de la
memoria en ambientes virtuales inmersivos (una CAVE recrea espacios naturales
donde los sujetos de experimentación realizan actividades) y una plataforma web
que usa RV para estimular la orientación espacial usando tecnologías Google y
entrenar las habilidades básicas y ejecutivas de los adultos mayores en 360°.
En este trabajo se detalla el desarrollo de una plataforma de software para
generar experiencias de recorridos espaciales, empleando un laberinto 3D virtual
para el diagnóstico y entrenamiento de funciones cognitivas en adultos mayores con
trastornos de memoria y atención. La idea es mejorar su calidad de vida cotidiana.
La aplicación cuenta con un editor y está diseñada siguiendo los protocolos
establecidos por los psicólogos especialistas en el área. Permite complementar,
junto con otras herramientas existentes, la investigación y recopilación de datos de
distintos tipos de ejercicios relacionados con los aspectos cognitivos incluidos en
los tratamientos paliativos de los adultos mayores.
Así, la tecnología adquiere un rol protagónico como instrumento posibilitador
que permite realizar ciertas acciones que se suman y potencian áreas dispares.
1.2 Objetivos
Se desarrolló una aplicación de escritorio no-inmersiva para el entrenamiento
y estimulación cognitiva de personas mayores. Con ella, el profesional puede
16
construir automáticamente laberintos y configurar el kit provisto para efectuar las
distintas actividades de estimulación cognitiva con niveles de complejidad
diferentes. El kit permite incorporar elementos para que la persona desarrolle
estrategias de ubicación temporo-espacial, técnicas para retener información y
aumentar la flexibilidad cognitiva.
Además, extrae información del experimento para luego calcular la
efectividad y eficiencia del entrenamiento en cada intento. Así, el profesional puede
introducir parámetros de medición en cualquier parte del juego y hacer valoraciones
puntuales. Por ejemplo, la latencia, que significa cuánto tiempo se tarda el jugador
en resolverlo y construir su estrategia, y a partir de ello es posible obtener una
representación gráfica inmediata de su desempeño en el juego.
La evaluación de la herramienta desarrollada en cuanto a resultados
generados (prueba de efectividad), interfase de usuario y facilidad de uso estuvo
restringida a un conjunto menor de pruebas debido a la situación sanitaria de
COVID-19.
Esta plataforma podría servir de apoyo para la detección temprana de
problemas cognitivos (García y otros, 2022). La información recolectada en los
experimentos se comparó con otros instrumentos de detección estándar usados
para el deterioro cognitivo, como el conocido test MiniMental.
1.3 Estructura de la tesis
En este capítulo se describieron el contexto y la formulación del problema, los
objetivos generales y específicos tomados en cuenta para desarrollar el laberinto 3D
virtual preparado para estimulación y entrenamiento cognitivo.
En el capítulo 2 se presenta una breve revisión del estado del arte de
proyectos similares, realizando un análisis de los productos actuales. Además,
introduce los conceptos teóricos y tecnológicos empleados para el desarrollo del
presente trabajo, entre los cuales se desarrollará sobre los distintos tipos de
memoria y la herramienta utilizada para el desarrollo de la aplicación.
17
En el capítulo 3 se detallan los métodos usados, los objetivos y
requerimientos del proyecto y se define el diseño y la implementación de la
aplicación, junto con todas las decisiones de diseño que se tomaron para su
desarrollo.
El Capítulo 4 presenta los resultados del trabajo. Primeramente, se describen
los detalles técnicos de la implementación de la plataforma, su documentación, y un
conjunto acotado de las observaciones experimentales efectuadas. Además, se
provee la evaluación cualitativa de la solución implementada.
El Capítulo 5, se exponen algunas conclusiones y se presentan posibles
trabajos futuros que marcan direcciones en las cuales se podría ampliar el trabajo
realizado.
18
Capítulo 2 Antecedentes y Marco
Teórico
Este capítulo reseña las principales contribuciones sobre la utilidad de los
entornos virtuales, basada en la habilidad para mimetizar algunas tareas del mundo
real y establecer la eficacia de la herramienta en comparación con los test
neuropsicológicos estándar.
Además, desarrolla brevemente los conceptos básicos para comprender las
funciones cognitivas que proponen los protocolos de experimentación planteados en
los diferentes ejercicios que hoy dispone la plataforma de RV.
Por otra parte, ofrece una descripción generalizada de los proyectos de
software más relevantes utilizados en terapias lúdicas de entrenamiento cognitivo
relacionados con este trabajo.
Finalmente, resume las tecnologías emergentes usadas para materializar los
entornos virtuales.
2.1 Entornos virtuales en el entrenamiento cognitivo
Los instrumentos neuropsicológicos tradicionales de evaluación y
estimulación con lápiz y papel presentan serias limitaciones, entre las que pueden
mencionarse el sesgo por deseabilidad social y la falta de validez ecológica. Ambas
cuestiones son superadas por las pruebas informatizadas, conservando una buena
confiabilidad y validez (Chicchi Giglioli et al., 2021). Dentro de este grupo, las
intervenciones en entrenamiento cognitivo y rehabilitación cognitiva a partir de
realidad virtual (RV) han sido ampliamente extendidas (Zygouris et al., 2015).
Las tecnologías de RV permiten alusuario ingresar a un entorno 3D
generado por computadora e interactuar con el mismo (Lee et al., 2019; McFadyen
et al., 2017; Zygouris et al., 2015). Sin embargo, existen ciertos pros y contras en el
uso de la RV tanto para la evaluación como para el entrenamiento de los usuarios.
Por un lado, hay ciertas barreras que impiden extender su utilización en la población
19
en general, como ser: la aún hoy poca evidencia sobre su efectividad a largo plazo,
ausencia de buenos y amigables diseños para los usuarios y los problemas
ergonómicos (Lee et al., 2019). Y, por otro lado, la utilización de entornos 3D
interactivos de realidad virtual permite: una formación válida y dinámica (Rose,
Brooks & Rizzo, 2005); un aprendizaje activo durante una actividad motivadora;
capacidad para controlar el grado de dificultad de la tarea y capacidad para medir el
comportamiento y el desempeño de un individuo; la adaptación de los instrumentos
a los objetivos específicos de un tratamiento; la posibilidad de proporcionar
ejercicios repetitivos y aumentar gradualmente la dificultad de los mismos; reduce la
orientación proporcionada por el terapeuta y el sesgo que esto introduce (Alashram
et al., 2019; Schultheis et al., 2001; Riva et al., 2003; Rizzo, 2004).
Probablemente, la principal ventaja del uso de la RV en evaluación y
entrenamiento cognitivo sea la posibilidad de obtener resultados con validez
ecológica. Se entiende por validez ecológica al grado de "representatividad" y la
“generalización” de una tarea (Burgess et al., 2006). Burgess (2006) plantea que, la
representatividad, refleja el grado en que un test se corresponde en contenido y
contexto con una situación de la vida cotidiana; y la generalización hace referencia a
la posibilidad de transferir los resultados obtenidos en las pruebas, a la vida diaria.
McFadyen y otros (2017) definen de manera similar la validez ecológica, acuñando
los términos “veracidad” -por representatividad- y “verosimilitud” -por
generalizabilidad-.
2.2 Procesos cognitivos estudiados
En la vida cotidiana, las actividades realizadas por las personas suelen
englobarse en el concepto de “actividades de la vida diaria” (DLA). Estas pueden ser
básicas o instrumentales (Romero Ayuso, 2007). Las básicas tienen que ver con el
mantenimiento del estado basal del organismo y, por lo tanto, están dirigidas a uno
mismo. Por ejemplo, comer, vestirse o ir al baño. Las instrumentales, en cambio,
están relacionadas con la manipulación de objetos, como el manejo del dinero,
tomar un autobús, extraer dinero de un cajero automático, cocinar comida siguiendo
una receta. Este último tipo de actividades, involucra un grupo de procesos
cognitivos denominados funciones ejecutivas (Júlio et al., 2019).
20
Las funciones ejecutivas (FEs) son un conjunto de procesos cognitivos
top-down (Diamond & Ling, 2020), de orden superior, involucrados en el control
deliberado y voluntario del comportamiento, el pensamiento y las emociones
(Miyake & Friedman, 2012). Dichos procesos participan en situaciones nuevas y
complejas para el individuo que implican un esfuerzo cognitivo y donde las
respuestas sobre aprendidas o automáticas resultan insuficientes (Diamond A.,
2013). Estos procesos se han asociado con las redes neuronales frontales,
esenciales para el comportamiento dirigido a objetivos, en los que la planificación, la
inhibición y la flexibilidad para cambiar el foco atencional resultan fundamentales
(Doherty et al., 2015).
Los entrenamientos con RV han mostrado efectividad y una mejora en los
desempeños en tareas que involucren FEs post entrenamiento (Liao et al., 2019).
Por ello, el objetivo de este trabajo fue diseñar y poner a prueba un instrumento que
evalúe procesos ejecutivos mediante VR, con la posibilidad de ser implementado
para entrenamiento y rehabilitación cognitiva.
Así como las funciones ejecutivas mencionadas anteriormente, hay otros
procesos planteados para entrenar la cognición en la plataforma desarrollada: la
atención, percepción espacial y la memoria de trabajo.
La atención es un proceso cognitivo que nos permite seleccionar y
concentrarnos en los estímulos más relevantes. Puede distinguirse entre atención
arousal (si estamos adormilados o enérgicos), focalizada (si podemos centrar la
atención en algún estímulo), sostenida (si podemos sostener esa atención por un
período largo de tiempo), selectiva (si podemos atender a un estímulo en la
presencia de otros, los distractores), alternante (si podemos alternar la atención
entre dos estímulos diferentes) y dividida (si podemos atender a dos estímulos
diferentes en simultáneo) (Sohlberg y Mateer, 1989).
La percepción espacial es tener conciencia del espacio y del
posicionamiento, de la forma y el tamaño de los objetos o de las personas respecto
de otras y poder reconocerlos, independientemente de la perspectiva visual
mantenida. Para informarnos sobre el entorno, usamos todo nuestro cuerpo,
podemos reproducir mentalmente los objetos, y anticiparnos a los cambios que
21
existan en el espacio. Por ejemplo, al momento de tomar un camino o una dirección,
debemos ser capaces de escoger la perspectiva que más encaje a lo que
necesitamos. Para ello necesitamos orientarnos de alguna de las dos formas que
existen: orientación cartesiana, basada en el uso de los puntos cardinales (norte,
sur, este y oeste) o usar el sistema de punto de referencia. Elegir un objeto como un
árbol, una casa u otros como referencia para volver al sitio que necesitamos.
La memoria de trabajo se refiere a las estructuras y procesos usados para el
almacenamiento temporal de información (memoria a corto plazo) y la elaboración
de la información (Baddeley et al., 1974). Describe la memoria temporal “en línea”
que utilizamos los humanos para realizar ciertas tareas y resolver determinados
problemas, como recordar un número telefónico antes de agendarlo o realizar
cálculos mentales en el supermercado para comprobar que el dinero nos alcanza.
El entrenamiento constante y adecuado permite mejorar la memoria de trabajo. Para
una correcta estimulación son necesarios 15 minutos al día, dos o tres días a la
semana.(Memoria de Trabajo Neuropsicología de las funciones ejecutivas, Cognifit).
2.3 Programas actuales para estimulación cognitiva
2.3.1 Lista de programas
A continuación, se desarrollan los conceptos principales de los productos
seleccionados que han sido utilizados en la actualidad para terapia con adultos
mayores o, simplemente, para el entrenamiento cognitivo o que estén relacionadas
con el tópico.
2.3.1.1 Brain Training del Dr. Kawashima
Brain Training del Dr. Kawashima ¿Cuántos años tiene tu cerebro? Consiste
en un videojuego de lógica y armado de rompecabezas, desarrollado y distribuido a
partir de 2005 por Nintendo, y está accesible desde http://www.nintendo.com/ds. En
el juego, el jugador se encuentra con el rostro del Doctor Kawashima, quien hace la
función de mentor en los distintos ejercicios del juego, a su vez este orienta a los
jugadores a medida que progresan en el juego y les brinda consejos. En la figura 2.1
se observan algunas capturas del videojuego. Los ejercicios propuestos se plantean
22
http://www.nintendo.com/ds
para que las personas se ejerciten cognitivamente, a través de la resolución de
problemas de cálculo aritmético, tareas de memorización, lectura y ortografía, o la
resolución de rompecabezas tipo sudoku.
Figura 2.1: Distintos ejercicios planteados en Brain Training del Dr. Kawashima.
El juego provee gráficos sencillos del desempeño del jugador, una batería de
ejercicios y cuestionarios que ayudan a determinar la edad de su cerebro. A medida
que se va progresando en el juego, también se desbloquean niveles más complejos
que plantean nuevos retos cognitivos.
2.3.1.2 Big Brain Academy
Big Brain Academy es un videojuego de lógica creado y distribuido por
Nintendo a partir de 2005, del cual también existe una versión desarrollada para Wii
en2007. En este no hay un mecanismo de juego, ya que el juego simplemente está
compuesto de un conjunto de puzles sin que ninguno tenga mayor prioridad sobre
los otros. En este existen tres modos distintos de juego los cuales son: Prueba,
Práctica y Competición. Además, puede emplearse en modo multijugador de hasta 8
jugadores en simultáneo. El progreso del jugador se mide después de una serie de
23
pruebas planteadas en 5 categorías o etapas: Pensar, Memorizar, Analizar, Calcular
e Identificar). La figura 2.2 muestra el desempeño asociado al peso alcanzado en su
cerebro: 1240 gramos. Cuanto más pese, más inteligente es, o mejor es el tiempo
de reacción. Junto con el peso también se muestra un gráfico el cual refleja el
desempeño que tuvo el jugador en cada una de las categorías.
Figura 2.2: Desempeño del Jugador: peso del cerebro en gramos (arriba) y
valoración en las 5 categorías (abajo).
En cada modo, el juego propone actividades entre las siguientes 5
categorías, las cuales son: Pensar (Think) la cual plantea preguntas de lógica;
Memorizar (Memorize) el cual plantea ejercicios sobre recordar imágenes, patrones,
etc.; Analizar (Analyse) que trata de relacionar patrones de imágenes y las
secuencias; Calcular (Compute) que trata de todo tipo de ejercicios que traten más
de cuestiones aritméticas e Identificar (Identify) entre una secuencia de imágenes,
dos idénticas.
24
Figura 2.3: Ejemplos de ejercicios de Big Brain Academy la consigna y que
categoría se está evaluando.
2.3.1.3 Brain Challenges
Brain Challenges es un juego similar al Big Brain Academy desarrollado por
Gameloft Beijing en 2008. En la figura 2.4 se muestra a las actividades
(rompecabezas) agrupadas en 4 categorías: Lógica, Matemática, Visual y Enfoque.
Dependiendo de la versión, el juego presenta distintos modos: Prueba,
Entrenamiento Gratuito, Creativo, Estrés, Modo para Niños, Entrenador Personal y
Diagramas Cerebrales.
Figura 2.4: Imagen del Juego Brain Challenge.
25
2.3.1.4 Lumosity
Lumosity es un programa online desarrollado por Lumos Labs lanzado en el
año 2007. Consta de actividades lúdicas de corte cognitivo para mejorar la
memoria, la atención y la flexibilidad. Las actividades para ejercitarse se plantean
para mejorar los tiempos de reacción, poner a prueba los reflejos y la velocidad para
realizar ejercicios de identificación. Además, existen ejercicios para memorizar
imágenes, posiciones de objetos, o búsquedas de elementos que permitirán tener
una mayor concentración. La flexibilidad cognitiva plantea poner a prueba la
capacidad del jugador de adaptarse rápido a cambios de tareas a través de cambio
de patrones, ya sea de colores, formas, contextos, etc. También propone la
resolución de problemas de corte espacial y lógico y ejercicios para practicar la
agilidad mental para hacer problemas matemáticos.
Figura 2.5: Captura de Lumosity.
Esta aplicación en particular fue sujeta a varios casos de uso sobre los
beneficios de la misma, entre algunos de los que se podría citar está el impacto el
utilizar la misma en el aprendizaje, como es el estudio realizado por Kpolovie y
PeterJame (Kpolovie, Peter James) en el cual su estudio arrojó que el uso de la
misma mejoraba la capacidad de aprendizaje de las personas, incluso al punto tal
que las personas que usaban la aplicación por más tiempo tenían mejores
resultados en este aspecto. Otro caso de estudio es el realizado por BB Connor y C
Shaw (Loes Koorenhof, Sallie Baxendale, Natalie Smith, Pam Thompson) en el cual
se realizó un estudio utilizando tres pacientes adultos que sufrieron heridas
cerebrales y viendo el impacto que tenía en estos la aplicación hasta después de
hacer 24 sesiones, las cuales se realizaron en intervalos de dos sesiones
26
semanales en las cuales jugaban entre 15 a 20 minutos los juegos del programa de
entrenamiento de la misma y otros 15 a 20 minutos de jugar cualquier juego dentro
de la misma. De esta prueba los resultados fueron positivos en los tests de
Woodcock-Johnson en lo que respecta a habilidades de aprendizaje visual auditivo
y al delay de las mismas. También está el estudio realizado por Loes Koorenhof,
Sallie Baxendale, Natalie Smith y Pam Thompson (BB Connor, C Shaw) en el cual
se hizo un estudio usando 20 pacientes que padecían de epilepsia de lóbulo
temporal izquierdo y 22 pacientes de control (sin ningún antecedente) los cuales
entre sus entrenamientos recibieron unas 40 sesiones gratuitas de la aplicación. De
este estudio se pudo comprobar que la ganancia en las cuestiones de recuerdo
verbal eran menores con este tipo de entrenamiento, pero que sí tuvo impacto en el
aprendizaje verbal.
2.3.1.5 Cognifit
Cognifit es una empresa de software fundada en 1999. La cual desarrolla
evaluaciones cognitivas en línea, software y aplicaciones de entrenamiento cerebral.
Entre sus productos figuran una decena de tests cognitivos, ejercicios de
estimulación cognitiva en niños y en adultos.
Además, provee un kit de herramientas para distintos tipos de profesiones y
juegos mentales agrupados en cinco categorías: Memoria, Percepción,
Razonamiento, Coordinación y Atención. Cada una de estas categorías se subdivide
internamente según el tipo de entrenamiento deseado. Por ejemplo, las actividades
de Memoria se subdivide internamente en las subcategorías de Memoria a Corto
Plazo, Denominación, Memoria de Trabajo, Memoria Visual a Corto Plazo, Memoria
No Verbal y Memoria Fonológica a Corto Plazo, como se puede ver en la figura 2.6.
27
Figura 2.6: Captura de Cognifit. Categorías y Subcategorías para los
entrenamientos.
También cabe destacar que muchos de sus servicios están atados a métodos
de pago, en los cuales hay métodos de pago único, como es el caso de los tests, o
de suscripciones, en el caso de los juegos. Pero con la posibilidad de accederlos
tanto por la página web como a través de su aplicación móvil, la cual se puede ver
en la figura 2.7
Figura 2.7: Capturas de Cognifit para móvil.
28
2.3.1.6 NeuronUp
NeuronUp es una herramienta web destinada a ayudar a los terapistas
ocupacionales y otros profesionales involucrados en la rehabilitación cognitiva y
procesos de estimulación. Cuenta con numerosos materiales y recursos para
diseñar sesiones de tratamiento, además de un administrador de pacientes para
organizar y guardar los resultados de cada sesión, y un portal de selección de
juegos para el paciente, como se puede observar en la figura 2.8. Una de las piezas
fundamentales de NeuronUp es que los profesionales cuentan con la posibilidad de
personalizar las sesiones, lo cual se puede realizar sin importar donde se encuentre
el paciente. El administrador de actividades es la sección que permite al profesional
diseñar sus propias intervenciones, adaptándolas a las necesidades y capacidades
del paciente. Como tal, cuenta con cientos de actividades distribuidas en diferentes
áreas como memoria, atención, lenguajes, orientación y cognición social, entre
otras, y permite que los ejercicios puedan ser utilizados tanto para funciones
cognitivas básicas como también actividades de la vida cotidiana.
Figura 2.8: Selección de juegos en NeuronUp.
Por otro lado, el administrador de resultados registra en resultados
cuantitativos legibles todas las actividades realizadas por el paciente en la
computadora, con la posibilidad de imprimirlo en papel. También, permite registrar
comentarios del profesional, obteniendo el control y la organización de las
actividades de cada paciente, haciendo que sea fácil verificar los resultados de
29
ellos, y observar rápida y eficazmente como estos progresan en las diferentes
áreas.
Figura 2.9: Juego de NeuronUp.
2.3.1.7 RehaCom
RehaCom es un sistema de software para la rehabilitación cognitiva
asistida por ordenador. Este software ayuda al terapeuta a rehabilitar los trastornos
cognitivos que afectan a aspectos concretos de la atención, la concentración, la
memoria, la percepción, las actividades de lavida cotidiana y muchos otros. Consta
de aproximadamente 29 módulos de terapia y está disponible en 27 idiomas
diferentes, lo que permite a los pacientes trabajar en su propia lengua materna.
Además, es autoadaptable y el nivel de dificultad aumenta o disminuye según el
rendimiento del paciente.
Figura 2.10: Juego del módulo de Atención y Concentración.
30
Al resolver tareas, los procesos cerebrales se activan y las funciones
cerebrales importantes son mejoradas o restauradas. Puede utilizarse incluso en
una etapa muy aguda de la lesión, y sigue siendo pertinente en todas las fases de la
rehabilitación. Los módulos de capacitación pueden seleccionarse fácilmente sobre
la base de la evaluación cognoscitiva o empleando los módulos de screening o
detección (ver figura 2.11).
Figura 2.11: Módulos de Screening de RehaCom.
El terapeuta puede evaluar la sesión utilizando la pantalla de resultados tan
pronto como el entrenamiento termine, la cual muestra una multitud de datos, cuyo
número aumenta con la frecuencia de uso del software. Los datos se pueden
mostrar de varias maneras, incluyendo tablas, gráficos y comparaciones,
permitiendo al terapeuta analizar e identificar debilidades particulares, por ejemplo,
notar una reacción a los estímulos auditivos y remediarlas durante el entrenamiento.
2.3.1.8 Gradior
Gradior es un sistema de evaluación y rehabilitación neuropsicológica para la
realización de programas de entrenamiento y recuperación de funciones cognitivas
superiores en personas que presentan de citas y/o deterioro cognitivo. Permite
trabajar en adultos, la atención, percepción, memoria, orientación, cálculo, función
ejecutiva, lenguaje y razonamiento.
Concebido como un sistema de apoyo al terapeuta, se dirige a personas con
daño cerebral, traumatismos craneoencefálicos, demencias, deterioro cognitivo leve,
trastornos neuropsiquiátricos de afectación cerebral, enfermedad mental u otra
patología donde se vea afectada la función cognitiva. Adecuado también bajo un
enfoque de prevención en casos de envejecimiento no patológico y quejas
subjetivas de memoria.
31
Figura 2.12: Juego de memoria en Gradior.
Los ejercicios, diseñados siguiendo la metodología Gradior, permiten trabajar
según los principios de esfuerzo cognitivo y huella neuronal, que resultan cruciales
para una intervención cognitiva efectiva. La novedad y la variedad en las actividades
y estímulos presentados, evita él “efecto aprendizaje" y, los diferentes niveles,
permiten adaptarlo a cada usuario.
Ofrece distintas posibilidades al terapeuta para la planificación de las
intervenciones de manera individualizada, desde la planificación manual de la
intervención con una interfaz muy intuitiva hasta la posibilidad de partir de un
tratamiento tipo para ir personalizando en función de la evolución a lo largo de las
sesiones o el uso del denominado “nivel de desempeño". A partir de valoraciones
estándar, determina la capacidad cognitiva y funcional del usuario proponiendo un
tratamiento de rehabilitación individualizado de manera automática.
Figura 2.13: Interfaz del Terapeuta en Gradior.
32
En las figuras 2.9, 2.10 y 2.11 se pueden observar juegos de NeuronUp,
RehaCom y Gradior respectivamente.
2.3.2 Análisis de herramientas
Si bien estas herramientas cuentan con un gran potencial para estimular y
favorecer la autonomía de los individuos con algún tipo de déficit cognitivo, la
mayoría no están inicialmente diseñadas para personas con discapacidad o adultos
mayores, lo que presenta un inconveniente para los profesionales de la salud.
El primer punto de análisis se basa en los tipos de licencia. Los programas
como NeuronUp y CogniFit inicialmente ofrecen una versión gratuita de prueba, que
luego de pasado el mes de uso es requerido abonar la licencia mensual en dólares
para continuar utilizándose. Además, estas aplicaciones son un tanto
personalizables, pero a partir de distintos planes de membresía, el nivel de
autorización para personalizar parámetros y configuraciones varía.
Otro factor importante a tener en cuenta es la portabilidad y accesibilidad de
las mismas, donde si bien el uso de la tecnología está inmerso en la sociedad, no
presenta el mismo nivel de dificultad para acceder mediante un navegador web
(Chrome, Firefox, Safari, etc.) a tener que descargar la aplicación en celulares con
sistemas operativos Android o iOS, con su debido mantenimiento de
actualizaciones, entre otras cosas. Por otro lado, respecto al soporte, se puede decir
que cuentan con buena documentación, incluyendo vídeos tutoriales de usabilidad,
centros de ayuda y consultas.
Otro criterio a considerar fue la flexibilidad, analizando si las plataformas
pueden crear nuevas tareas y modificar las que están hechas, cambiando alguno de
los parámetros como: número de estímulos, duración de ejercicios, modificación de
tamaño de estímulos, colores, etc. Los programas de intervención proporcionan un
aprendizaje muy dinámico, permitiendo graduar tanto el tiempo como el número de
estímulos y los diferentes parámetros en función de las necesidades del paciente.
Además, la escalabilidad de las herramientas existentes presentan cierta
desventaja, dado que tienen código cerrado y en algunos casos, la tecnología
utilizada es obsoleta.
En cuanto a la gestión y almacenamiento de los datos, un requisito no
funcional que plantearon las investigadoras, fue la seguridad, privacidad de los
33
datos y registro de ciertos datos, en particular de evaluados. En este caso, si bien
las aplicaciones investigadas manejan con cautela los datos e información, no se
puede garantizar su total privacidad sumado que no necesariamente van a recopilar
los datos que sean de interés para las mismas.
Si bien estas herramientas no cumplen particularmente con los requisitos
planteados por las investigadoras, este análisis sirvió para tener una idea del estado
actual de software que apuntan a cuestiones “similares” a las tratadas por el
programa desarrollado. Pero a la hora de hacer este análisis no solo se debe tener
en cuenta el producto final, sino también las herramientas con las que se desarrollan
los mismos, la cual analizaremos a continuación.
2.4 Tecnologías para entornos virtuales de estimulación
cognitiva
El entretenimiento es una de las necesidades que el humano ha ido desarrollando
debido a que este posee una mayor cantidad de tiempo libre gracias a los distintos
avances en los distintos campos, en especial el tecnológico. Entre los distintos métodos
de entretenimiento el que es de interés en este informe son las actividades recreativas
relacionadas con la lógica, de los cuales alguno podría considerar clásicos como son las
adivinanzas, el sudoku, los rompecabezas, los crucigramas, entre otros, pero gracias a
los avances de la humanidad se pudo ampliar aún más las posibilidades de
entretenimiento, logrando poder desarrollar múltiples nuevas formas de poner a prueba
las capacidades de las personas a resolver problemas como son videojuegos clásicos
como el buscamina o el tetris. Y con el avance de la accesibilidad de la tecnología, al
punto tal de que casi cualquiera hoy en día puedan acceder a servicios como internet, o
tener computadoras y/o consolas en sus casas, permitió que se desarrollaran muchas
aplicaciones del estilo, algunas apuntando a la parte del entretenimiento como son
clásicos como Dr. Mario o Portal, etc. y la otra corriente, tomándolo más como métodos
de entrenamiento para el desarrollo de las capacidades de la persona, como son
aplicaciones como Cognifit, Lumosity, entre otros.
34
Figura 2.14: Juego Dr. Mario para la NES.
Figura 2.15: Juego Portal.
El boom que hicieron las industrias, en especial la del entretenimiento, fue tal que
empezó a aparecer cada vez mayor cantidad de empresas a desarrollar juegos de este
ámbito como son Candy Crush Saga, 2048, Cut the rope, etc., a su vez también
surgieron juegos que tenían más enfoque en ámbitos educativos como sonel Big Brain
Academy, o Brain Training del Dr. Kawashima.
Debido a que estos títulos se fueron desarrollando a lo largo de los años y cada
uno con múltiples objetivos distintos, las formas de desarrollarlos es dependiente de
cada proyecto como tal, pero en la actualidad, al menos en el caso de los juegos de
lógica, se puede partir de las bases que son comunes para el desarrollo de videojuegos
como tal, entre estas es la necesidad de un motor de videojuegos para el desarrollo de
los mismos.
35
Figura 2.16: Juego de celular Candy Crush.
Figura 2.17: Imagen del juego Cut the Rope.
Figura 2.18: Imagen del juego 2048.
36
Un motor de videojuegos es un conjunto de herramientas que realizan cálculos
geométricos y físicos utilizados en los videojuegos. Este conjunto de utilidades
representa un simulador ágil en tiempo real que reproduce las características de los
mundos imaginarios en los que transcurren los videojuegos. El objetivo es permitir al
equipo de desarrollo de un videojuego concentrarse sobre el contenido del juego y no
sobre la resolución de problemas informáticos.
El fin que persiguen los motores de juego es que una vez incorporadas todas las
funciones del motor, usuarios sin conocimientos de programación puedan manejar con
facilidad el motor.
Puesto que las funcionalidades proporcionadas por un motor son limitadas, estos
con frecuencia son dedicados a un tipo específico de juego. La manipulación del motor
se hace generalmente a través de un lenguaje de script o por la interfaz.
Una línea borrosa separa el motor del videojuego y muy a menudo no se sabe
distinguir entre ambos. Los motores ofrecen componentes reutilizables que pueden ser
manipulados para reproducir un juego. Algunas de los componentes que forman el motor
pueden ser la carga, la animación de modelos, la detección de colisiones entres objetos,
la física, interfaces gráficas de usuario o incluso herramientas de inteligencia artificial.
Mientras que el contenido del juego está compuesto por los modelos, texturas
específicas, el comportamiento ante las colisiones de objetos o la forma que tienen los
objetos de interactuar con el entorno.
Existen diferentes maneras de clasificar los motores de videojuegos dependiendo de las
características que nos interesen. Una de estas características es el coste,
efectivamente existen motores de videojuegos gratuitos o de pago que pueden llegar
hasta el medio millón de dólares. Estos últimos son destinados a estudios de desarrollo
profesional con gran poder financiero. Estos motores ofrecen un marco de juego y en
algunos casos un entorno de desarrollo integrado.
Este entorno permite crear o importar todos los elementos que se quieren integrar en el
juego y determinar mecánicas de juego con la ayuda de los scripts, aunque actualmente
esta clase de motores están en decadencia y se ha cambiado este modelo de negocio
por otros más relacionados con modelos de suscripciones cuando se llega a ciertos
ingresos anuales como es el caso de Unity o de permitir utilizar el motor de forma
gratuita, pero los dueños del mismo se quedan con un porcentaje de las ganancias,
como es el caso de Unreal Engine aunque aún sigue habiendo algunos casos de
37
motores del estilo como son el RPG Maker.
Figura 2.19: Imagen del Motor Rpg Maker.
Los motores gratuitos están destinados a los desarrolladores principiantes o
independientes y no suelen tener interfaz global. Para utilizar estos motores hay que
descargar un SDK (Software Development Kit), un kit de desarrollo (herramientas y
documentación) que permite utilizarlos, pero se debe generar el programa del juego
entero a mano, escribiendo código: CrystalSpace, Ogre 3D, Irrlicht. (Iman ouazzani,
Tyberghein, Jorrit; Sunshine, Eric; Richter, Frank; Gist, Mike; Van Brussel, Christian,
Rafaela V. Rocha, Rodrigo V. Rocha, Regina B. Araújo), aunque esto como hemos
mencionado anteriormente ya es un hecho más común de que los motores sean
gratuitos al menos inicialmente y luego terminan siendo pagos bajo algunas condiciones,
una de las excepciones a este caso es el caso del motor Godot que es un motor
totalmente gratuito y Open Source.
Los motores intermedios, en esta categoría se incluyen los motores con
herramientas de desarrollo más potentes. Estos motores disponen de un entorno de
desarrollo integrado (IDE) que permite la creación de juegos manipulando los elementos
en una interfaz gráfica y generando automáticamente una gran parte del código del
juego. Este tipo está dirigido esencialmente a los profesionales independientes: Torque
3D, Godot, Pico-8. Igual cabe destacar que hoy en día profesionalmente se usan
bastante los motores tanto intermediarios como los profesionales, pero no cabe duda
que los últimos son más usados debido a la cantidad de herramientas, posibilidades,
soporte y adición de contenido que poseen respecto a los intermediarios.
38
Figura 2.20: Imagen del motor Godot.
Figura 2:21: Imagen del Motor Pico-8
Los motores profesionales están dirigidos a los profesionales con gran
presupuesto. Son los motores más completos y los más potentes del mercado, se
mantienen al día por sus creadores y disponen de los últimos avances tecnológicos:
Unity, Unreal Engine 4, Cry Engine 5.
39
Figura 2.22: Imagen del motor Unity.
Figura 2.23: Imagen del motor Unreal Engine 4.
2.4.1 Unity
Unity 3D es un motor de creación de videojuegos 2D y 3D lanzado oficialmente
como tal el 1 de junio de 2005. Este motor permite la creación de juegos y otros
contenidos interactivos como diseños arquitectónicos o animaciones 2D y 3D en tiempo
real.
40
Las principales metas de diseño de Unity son la facilidad para el desarrollo y la
capacidad de que los juegos desarrollados puedan ser deployados en múltiples
plataformas. Para esto, Unity provee un editor de ambiente integrado fácil de usar, en el
cual uno puede crear y manipular los assets y entidades que van a conformar tu juego y
probarlo con una simple acción en el editor, o directamente en el hardware al que estés
apuntando. Unity también provee una gran variedad de poderosas herramientas para el
análisis y optimización de tus juegos para cada plataforma, un compresivo pipeline de
condicionalidad de assets, y la habilidad de manejar la relación calidad performance en
cada plataforma que se desee desarrollar. Este, soporta programación en C#; un
poderoso sistema de animación y soporte de afectar animaciones de otros; también
posee soporte para el desarrollo de juegos multijugador en línea.
Unity es una aplicación 3D en tiempo real y multimedia, además de ser motor
3D y físico utilizado para la creación de juegos en red, de animación en tiempo real,
de contenido interactivo compuesto por audio, video y objetos 3D.
Este motor no permite la modelización, pero permite crear escenas que
soportan iluminación, terrenos, cámaras, texturas. Fue producido en un principio
para la plataforma Mac y ha sido exportado a Windows. Permite obtener aplicaciones
compatibles con Windows, Mac OS X, iOS, Android, Switch, PlayStation 4, Xbox
One, etc.
Unity presenta varias ventajas que hacen que sea uno de los motores de
videojuego más cotizados del momento. En los siguientes párrafos se van a ir
citando todas estas ventajas:
● Permite la importación de numerosos formatos 3D como 3ds Max, Maya,
Cinema 4D, Cheetah3D y Softimage, Blender, Modo, ZBrush, FBX o recursos
variados tales como texturas, Photoshop, PNG, TIFF, audios y videos. Estos
recursos se optimizan posteriormente mediante filtros.
● Es compatible con las API gráficas de Direct3D, OpenGL y Wii. Además de
ser compatible con QuickTime y utilizar internamente el formato Ogg Vorbis
● En Unity, el juego se construye mediante el editor y un lenguaje de scripts, el
cual puede ser C# o el recientemente agregado Unity Visual Script, por lo cual
el usuario no tiene que ser un experto en programación para usarlo. Además
de esto, en su web oficial podremos encontrar toda la documentación,
41tutoriales y recursos necesarios para poder trabajar con el mismo, sin
mencionar que debido al tamaño de su comunidad se puede encontrar un
montón de contenido a través de otros medios, un ejemplo muy conocido es el
canal de YouTube Brackeys1 . La estructura de los juegos creados por Unity
viene definida mediante escenas que representan alguna parte del juego.
● Incluye un editor de terrenos que permite la creación de estos partiendo de
cero. Este editor permite esculpir la geometría del terreno, su texturización y la
inclusión de elementos 3D importados desde aplicaciones 3D o ya
predefinidos en Unity.
● Si no se quiere modelar en 3D y se necesitan recursos para un videojuego, en
la propia aplicación se puede acceder al Asset Store donde existen multitud
de recursos gratuitos y de pago. Incluso se puede extender la herramienta
mediante plugins que se obtienen en esta misma tienda.
● Dispone de una interfaz de desarrollo muy bien definida e intuitiva que permite
crear rápidamente minijuegos.
● Existe en varias versiones en función de los módulos elegidos, la versión más
simple destinada a los amateurs es gratuita.
● Además del desarrollo de proyectos 3D, Unity posee un sólido soporte para
realizar proyectos 2D.
1 https://www.youtube.com/c/Brackeys
42
https://www.youtube.com/c/Brackeys
Capítulo 3 Solución Propuesta
La solución pretende evitar los costos que pagarán las sociedades en el mediano
y largo plazo si no se ocupan de mantener activo al colectivo integrado por las personas
mayores, que, además, sostiene un crecimiento progresivo año a año. El entrenamiento
cognitivo de los mayores debería promoverse siempre. La idea es convertirlo en una
gran oportunidad para la mayoría y que no quede reducido a un sector de la población.
Desde la óptica del adulto mayor, la solución demanda el compromiso que tome
el propio adulto y debe contener aspectos motivadores que hagan la experiencia
interesante y atractiva para ellos. La idea es que el adulto realice ejecuciones repetitivas
de tareas similares que requieran la utilización de las capacidades cognitivas. De esta
manera, se estimula al cerebro a reorganizarse para mejorar el desempeño de estas
habilidades.
Desde la óptica del profesional, debe asegurar la uniformidad del experimento.
Cuando el entrenamiento y la estimulación cognitiva no utilizan las herramientas de
automatización, el profesional se toma el tiempo para explicar y presentar cada método
de evaluación a cada participante. A veces, estos sucesos tan repetitivos introducen
variaciones en la comunicación y alteran los resultados en el experimento conjunto
debido a que se pierde la uniformidad del planteo original.
Desde nuestra óptica, se creó la herramienta de software que llamamos Labyrinth
que ofrece una variedad de protocolos para experimentación cognitiva de personas
mayores en entornos virtuales. Además, registra los resultados del desempeño de los
participantes y elabora las conclusiones basándose en ellos. Esta automatización
posibilita un esquema de entrenamiento uniforme donde se pueden emular las mismas
condiciones para todos, y registrar su progreso individual.
3.1 Análisis de requerimientos
Como punto de partida para el desarrollo de la aplicación se tuvieron en cuenta
una serie de requisitos y características, algunas previamente elaboradas por las
investigadoras y otras que fueron surgiendo conforme progresaba el desarrollo de la
aplicación. Se llevaron a cabo reuniones y observaciones para lograr capturar los
43
requisitos deseados por las mismas y de ahí ir realizando mejoras y cambios en la
aplicación hasta lograr satisfacer los requisitos funcionales esperados por las mismas.
3.2 App Labyrinth
La aplicación Labyrinth constituye una solución posible y de bajo costo, la cual el
adulto puede utilizar desde su casa y entrenarse diariamente o cuando él lo prefiera.
También permite la supervisión del profesional. El psicólogo, por ejemplo, puede
organizar una sesión de capacitación que aumente aún más la interacción social y la
comunicación.
3.2.1 ¿Qué es la app Labyrinth?
Labyrinth es una aplicación de escritorio que fue pensada para poder hacer
desafíos que entrenen las habilidades cognitivas, como son la orientación espacial, la
memoria de trabajo y la flexibilidad cognitiva, y a la vez poder recopilar datos de las
mismas para poder tener un registro del progreso de los participantes.
Esta aplicación fue particularmente desarrollada para que fuera simple e intuitiva
de usar para un amplio espectro de personas, particularmente las personas mayores
que son el público objetivo de estudio.
La aplicación consiste de varios laberintos, los cuales como se puede observar en
la figura 3.1 se realizan a través de una perspectiva en primera persona, y tienen
integradas distintas pruebas a realizar, las cuales varían dependiendo de cómo esté
configurado cada laberinto. Para que la aplicación fuera efectiva tanto como herramienta
de entrenamiento como de investigación, se decidió que los niveles fueran fijos, es decir,
que tanto la disposición de los elementos a recolectar, los elementos que rodean al
laberinto y el tamaño del mismo se mantuviera (por ejemplo en la figura 3.2 podemos ver
como se ve el primer nivel de la aplicación). Así, el usuario podrá ir mejorando en el nivel
al poder ir memorizando los trayectos y anclas visuales que tuviera el mismo y al mismo
tiempo que los investigadores tuvieran muestras con similares valores para poder
realizar las comparativas correspondientes.
Actualmente, existen 2 tipos de prueba:la recolección de objetos, que pone a
prueba la memoria de trabajo, y la prueba de las flechas, para trabajar la flexibilidad
cognitiva.
44
Figura 3.1: Figura de usuario realizando el Primer laberinto.
Figura 3.2: Imagen desde arriba del Primer laberinto.
3.2.2 ¿Cómo funciona la app Labyrinth?
La disposición y arquitectura de los laberintos obligan al participante a usar sus
habilidades de orientación espacial para recorrerlos. Los resultados de este
entrenamiento tienen efecto con el uso continuo de estas habilidades. Además, el
paciente recoge objetos a lo largo del recorrido, los cuales siempre son dispuestos en
los mismos lugares, logrando tanto un ejercicio de planificación como de memoria,
porque como se mencionó previamente, estos luego deben ser mencionados en el orden
que fueron juntados. Estos ejercicios se destinan a entrenar la memoria del trabajo de
los participantes.
45
Por otra parte, los niveles de dificultad permiten adaptar las tareas a las
capacidades y el progreso de los participantes, debido a que cada nivel posee un
laberinto de mayor tamaño y por consiguiente, puede llegar a tener más objetos a ser
recolectados, volviendo estas tareas más complejas de ejecutar.
3.2.3 ¿Cómo se utiliza la app Labyrinth?
Primero se determina qué pruebas se realizarán junto con qué elementos y
restricciones, tanto en las consignas, los elementos a recolectar como los tiempos que
tendrá en la prueba de las flechas. Una vez determinado y configurado adecuadamente,
se procede a ingresar los datos de la persona, a evaluar y a explicar cualquier
información que sea necesaria antes de hacer la prueba como tal. Una vez que el
usuario efectúa la prueba, en caso de que se desee evaluar la misma con otras
situaciones, se pasa a reconfigurar el laberinto donde se hizo, o se van simplemente a
registrar y hacer los otros laberintos que se desee evaluar.
Después de que se hayan hecho las evaluaciones deseadas, uno puede extraer
los distintos resultados registrados de las actividades que se realizaron, ya sea por
ejemplo análisis comparativos o progresivos del usuario, y de ahí trabajar los mismos de
las formas que se desee.
3.2.4 Caso de Uso
Para la aplicación se consideró que existen solo 2 roles, los cuales son:
● Usuario/Sujeto: Este rol representa al que está usando el laberinto como tal, ya
sea para poder usar el sistema, para poder entrenarse o comosujeto para la
recopilación de información, basándose en su rendimiento a lo largo de distintos
tipos de métodos de examen para poder extraer información de interés para el
investigador, este podrá disponer de todas las funciones pero con el objetivo de
usar el sistema como una herramienta de entrenamiento neurológica.
● Investigador: Este rol es para definir a la persona que está interesada en utilizar
la aplicación para recopilar registros de muchas personas y utilizar los resultados,
para utilizarlas para sus investigaciones. Por eso mismo, este rol tendrá más
interés en todos los que ofrece la aplicación tanto para extraer valores de las
experiencias realizadas por parte de los usuarios/sujetos como la posibilidad de
46
ajustar las mismas con libertad para poder determinar instancias de evaluación
concretas.
La aplicación posee en total unos 4 casos de uso, los cuales son: Realizar el
laberinto, Configurar los elementos generales de todos los laberintos, Configurar los
elementos que se recolectan en cada laberinto y Ver los registros los cuales. Como se
puede ver en la figura 3.3 estos están divididos según quién va a estar haciendo cada
uno de estos. A continuación detallaremos de qué va cada caso de uso.
Figura 3.3: Diagrama de casos de uso de la aplicación.
3.2.4.1 Realizar el laberinto
El participante elige el nivel que desea realizar y crea su perfil ingresando su
nombre, para que luego sea fácil de identificar en los resultados, una vez hecho esto
pasará a tocar el botón de jugar, y de ahí se mostrará una ventana donde se encuentra
la consigna general. Una vez cerrada esta ventana, el participante podrá visualizar
desde arriba el laberinto junto con los elementos que tendrá que ir recolectando, la
posición tanto del inicio como la meta, junto con algunos de los elementos del entorno
que le servirán como puntos de orientación.
Una vez el participante está decidido a comenzar, presiona la barra espaciadora,
con lo cual la cámara se acomodará hasta la posición de inicio del laberinto y de ahí
dará inicio el ejercicio. Internamente, cuando el jugador comienza el ejercicio como tal, la
aplicación empezará a llevar registro de su ubicación en cada cierto intervalo para la
recopilación de datos.
En el caso de que entre los elementos que tenga que recolectar exista uno con
47
forma de flecha al interactuar con él, se realizará la prueba de flechas de la cual se irá
registrando los resultados del participante. Una vez finalizada esta, podrá seguir
haciendo el resto de las actividades necesarias para terminar el nivel, las cuales son
recolectar los elementos que faltantes (si es que hay) y buscar la salida.
Una vez recolectados todos los objetos y llegado a la salida, se presentará otra
instancia de evaluación en la cual se pedirá listar todos los elementos del laberinto en el
orden que fueron recolectados, exceptuando el elemento que inicia la prueba de las
flechas (en caso de que estuviese). Habiendo hecho esto, el sistema almacena los
resultados y devuelve al participante al menú principal donde puede ejecutar la misma o
alguna otra prueba o simplemente cerrar la aplicación.
Otro flujo posible es que en el caso de que el participante desee salir del nivel,
este podrá hacerlo pausando el juego y tocando un botón que lo llevará al menú
principal.
Cabe destacar que en caso de salir así o en caso de que la aplicación se cerrará
de alguna manera más abrupta, por ejemplo un corte de luz o que el proceso se
terminara desde el administrador de tareas, el sistema igual tendrá almacenado en sus
registros lo que haya hecho el usuario hasta ese momento (estos registros solo se usan
para los informes de los investigadores, no como un sistema de recuperación del
jugador en el punto donde se quedó del nivel).
3.2.4.2 Configurar los elementos de todos los laberintos
El flujo normal sería que el actor desde el menú principal entre al menú de
configuración al tocar el botón de configuración. Una vez que accedió a este menú, en
caso de ser la primera vez que se accede al mismo este cargará los valores por default
que tiene la aplicación, caso contrario se cargarán los que se tengan almacenados,
desde ahí el usuario procederá a modificar todos los valores que desee ya sea desde las
consignas que se desean agregar hasta modificar los tiempos que están en cada etapa
del ejercicio de flechas. Una vez que el usuario esté conforme con las modificaciones
que haya realizado, pasará a tocar el botón, aceptar y volverá al menú principal,
mientras que internamente el sistema almacenará los nuevos valores.
Otro posible flujo es el caso que el usuario no desee guardar los cambios que
efectuó, en el cual este pasará a tocar el botón de cancelar y volverá al menú principal
sin que se almacene ninguno de los cambios que hizo.
48
3.2.4.3 Configurar los elementos que se recolectan en un laberinto
El actor comienza en el menú principal decidiendo qué nivel en particular desea
modificar. Una vez seleccionado el mismo presiona el botón de cambiar. Al hacer esto se
desplegará un menú de dos listas donde la lista de la izquierda posee todos los
elementos disponibles en la aplicación y a la derecha los elementos que posee el nivel
en particular. En caso de que sea la primera vez que se accede a este menú se cargará
con los valores predeterminados y en el caso de ya tener algún valor almacenado se
cargará este. Luego el usuario pasará a mover los elementos que le interese tener en el
nivel a la lista de la derecha. Una vez que la persona esté satisfecha con los cambios
que haya realizado, presionará el botón de aceptar y volverá al menú principal, mientras
que internamente el sistema almacena los nuevos elementos que el nivel vaya a poseer.
El otro flujo es el caso que el usuario no desee guardar los cambios que hizo en
el cual pasará a tocar el botón de cancelar y volverá al menú principal sin que se
almacene ninguno de los cambios efectuados.
3.2.4.4 Ver los registros
El actor desde el menú principal tocará el botón de ver registros. Desde ahí se
abrirá en una ventana aparte la carpeta en el explorador de archivos donde se
encuentran los registros realizados por el programa, divididos por tipo y nivel.
3.2.5 Cómo se construyen las Tareas
La construcción de las tareas se pueden dividir en 2 partes: la construcción del
laberinto como tal y la elección de los elementos que van a existir en el mismo.
La construcción del laberinto se hace desde el motor Unity, introduciendo ciertas
variables en el algoritmo que se encarga de la generación del mismo. Dependiendo de
los datos que se introduzcan, esto determinará la forma, tamaño y cantidad de
elementos que puede tener el mismo. A su vez, manualmente son introducidos en el
mismo nivel los elementos que conforman el entorno que rodea al laberinto como tal.
En el caso de los elementos, consignas o duraciones que tiene las distintas
pruebas a realizar en los niveles, todas estas pueden ser ajustadas en la parte de la
configuración del menú principal dentro de la aplicación y dependiendo de lo que se
desea configurar se ingresará a una de las dos secciones de configuración disponibles,
49
detalladas en los casos de uso anteriores. Una aclaración importante es que existe una
única excepción a esto en el ejercicio de las flechas, que es en que tipos de flechas van
a ir apareciendo a la hora de hacer esta prueba, esto es debido a como está
implementado, ya que al momento de realizarse se consideró un requisito que esta fuera
igual en todos los niveles sumado a la inexperiencia, falta de visión a futuro en el
momento que se desarrolló, debido a esto actualmente la única forma de configurarse
este aspecto es a través del propio motor modificando en cada
3.2.6 Decisiones de Diseño
La aplicación Labyrinth está diseñada para ser una plataforma independiente, de
momento está solo corre sobre PC con diferentes sistemas operativos. Para
desarrollarla fue usado el motor de videojuegos Unity, elcual está escrito en C++ y está
diseñado para permitir fácilmente realizar la aplicación para múltiples plataformas. Para
el desarrollo de la aplicación, Unity provee un motor de rendering el cual permite tanto
desarrollar como probar la misma, además de proveer las herramientas necesarias para
las cuestiones como son la interfaz, entre otras cosas.
Toda la lógica de la aplicación fue hecha en scripts escritos en C#, el lenguaje
soportado por Unity. La interfaz de usuario es simple, ya que fue pensada para que sea
accesible a todo tipo de usuarios.
Los dispositivos de entrada seleccionados son los convencionales: el mouse y el
teclado.
3.2.7 Detalles Técnicos
Labyrinth está desarrollada con los siguientes productos:
● Unity para el desarrollo de los objetos, organización de archivos, desarrollo de la
UI y todos los elementos visuales del juego.
● Visual Studio como IDE utilizado durante la programación, siendo este el IDE que
Unity ofrece por default.
● Unity Gaming Services para el control de versionado.
50
3.3 Componentes del Sistema
La aplicación está compuesta por varios componentes: el menú principal, el
generador del laberinto, las tareas para la estimulación cognitiva y el sistema de registro
y análisis de información recolectada.
Además de estos componentes, se emplearon otros elementos como son assets
o funcionalidades propias de Unity como son el SceneManager, o la implementación del
personaje con el cual se mueve el jugador, que si bien son necesarios para el
funcionamiento del mismo, no los considero como parte del núcleo de interés de
desarrollo para esta aplicación en particular.
Como se puede observar en la figura 3.4, estos elementos se comunican entre sí
para poder cumplir las funciones que se espera de la aplicación. Estos elementos y sus
relaciones serán detallados a continuación.
Figura 3.4: Diagrama de Componentes del sistema.
3.3.1 Menú principal
El menú principal es una escena de Unity la cual está compuesto de 3 canvas, el
menú principal (Figura 3.5), la configuración general (Figura 3.6) y la configuración por
nivel (Figura 3.7), las cuales coexisten al mismo tiempo y se van habilitando o
deshabilitando sus visualizaciones al interactuar ciertos botones existentes en los
mismos, un ejemplo de este es el de la transición entre el menú principal hacia la
configuración general que se puede observar en la figura 3.8.
51
Figura 3.5: Imagen del menú principal.
Figura 3.6: Imagen del menú de configuración general.
Figura 3.7: Imagen del menú de configuración de los objetos recolectados en un nivel
particular.
52
Figura 3.8: código para la transición entre el menú principal y la configuración general.
A su vez existe otra clase que es utilizada en esta escena, la cual es la clase
estática llamada PersistentData, que es la que tiene consigo todas las configuraciones
que se aplican a todos los niveles. Los valores de esta clase son obtenidos a través de
un archivo. En caso de ser la primera vez que se ejecuta la aplicación, este se crea
utilizando valores default, y se encarga de generar el archivo donde tomará los datos
para sus futuros usos, como se puede ver en la figura 3.9. Para el almacenamiento de
estos datos se decidió utilizar un formato JSON como se puede ver en la figura 3.10.
Esta decisión se tomó debido a que este formato es práctico de implementar, almacenar
y trabajar, en especial teniendo en cuenta que el motor ya provee soporte para la
manipulación de este formato y al ser esta una aplicación de alcance local, cuestiones
como la seguridad no representan un problema. Un problema a tener en cuenta con este
formato es que la clase PersistentData, podría terminar volviéndose increíblemente
extensa en caso de existir muchísimos niveles, ya que estos datos son puestos ahí
mismos y no sé consideró esta situación cuando se implementó el mismo, una posible
solución sería que la configuración default fuera cargada desde un archivo que estuviera
destinado solo a almacenar esos valores.
53
Figura 3.9: código de Inicialización de la clase estática PersistentData.
Figura 3.10: Ejemplo de JSON de la configuración de la aplicación.
Descontando estas aclaraciones, cada ventana tiene sus propias
implementaciones y funcionalidades, las cuales serán descritas a continuación.
En el caso del menú principal cumple la función de nexo entre las otras dos
ventanas y a su vez realizará el cambio a la escena correspondiente al nivel elegido,
realizando un chequeo, de sí se ingresó algún nombre, el cual junto con el nivel
seleccionado se almacenarán en el PersistentData, para su uso en los otros
54
componentes del sistema, por último este pasará a cargar la escena correspondiente al
nivel seleccionado como se puede ver en la figura 3.11.
Figura 3.11: Código del botón iniciar para cambiar de escena o mostrar un error en caso
de que no se rellenará la casilla del nombre.
En el caso de la configuración general, está compuesta por text inputs, los cuales
tienen cargador por default los dato provistos por el PersistentData como se ve en el
ejemplo de la figura 3.8 de ahí cualquier modificación realizada, en caso de tocar el
botón aceptar, es reflejada tanto en el PersistentData como en el archivo que almacena
la configuración como se puede ver en la figura 3.12
En el caso del configurador por nivel, este utiliza dos listas, las cuales tendrán
almacenados una lista de botones, los cuales al presionar pasarán a la otra lista, esta
lista se cargará basándose en el nivel elegido. Y una vez aceptados se leerá los datos
de la segunda lista para pasar a almacenarlos tanto en el PersistentData como en el
archivo de configuración.
55
Figura 3.12: Código que almacena la configuración general en el PersistentData y el
archivo de configuración.
3.3.2 Generador de Laberinto
Para la implementación del generador de laberintos como tal, lo que se realizó es
utilizar un framework existente en el Asset Store de Unity2 y realizar las modificaciones
necesarias para cumplir las necesidades planteadas para este trabajo. Este está
compuesto por un generador de laberinto, y una pelota que el jugador maneja para
recolectar los elementos generados en el laberinto, las cuales eran monedas.
El generador, como se puede ver en la figura 3.13, se pueden ingresar variables
como, el algoritmo que se emplea para crear el laberinto, el valor de la semilla, el decidir
si esta se genera al azar o no, la cantidad de filas y columnas que va a tener la misma
junto con el ancho y largo que va a tener cada una de las celdas y la capacidad de elegir
qué asset usar para el piso, las paredes, los pilares y los recolectables (que en este
caso eran monedas). Modificando estos valores podremos hacer distintos niveles como
se pueden observar en la figura 3.14 y 3.15.
2 https://assetstore.unity.com/packages/tools/modeling/maze-generator-38689#content
56
https://assetstore.unity.com/packages/tools/modeling/maze-generator-38689#content
Figura 3.13: Datos que se pueden ingresar al generador de laberinto del Package Maze
Generator.
Figura 3.14: Imagen de laberinto de ejemplo junto con su configuración.
57
Figura 3.15: Imagen de otro laberinto utilizando un algoritmo distinto.
Para realizar el laberinto, el sistema lo que realiza es un una matriz de 2
dimensiones las cuales cada celda está compuesta de varios booleanos (Figura 3.16)
para representar qué paredes se generarán y si esta celda posee la meta o algún objeto
recolectable en esa respectiva celda del laberinto.
58
Figura 3.16: Contenido de las celdas que usa el generador de laberinto.
Para determinar el valor de cada celda, el generador puede utilizar 3 tipos de
algoritmos: la implementación recursiva (o backtracking), la implementación en árbol y la
división recursiva. A continuación se detallan los pasos de cada algoritmo.
Implementación recursiva:
1. Se da una celda como parámetro
2. Se marca la celda como visitada
3. Mientras el que está siendo visitado

Continuar navegando