[Avances] Semana 3


Avances anteriores

Como este es el primer reporte de avances, se hará un recuento de lo realizado en cada semana hasta ahora

Semana 1

En la primera semana se realizaron varias tareas de organización, planificación e investigación para el avance del proyecto.

Tareas planeadas:

  • [Límite: S1] Crear repositorio de Git y sincronizarlo con repositorio remoto en GitHub
  • [Límite: S1] Crear proyecto en software de gestión de tareas para organizar trabajo
  • [Límite: S1] Revisar archivos .rto para tomar nota de su estructura de datos
  • [Límite: S2] Diseñar estructura para recursos internos de la aplicación
  • [Límite: S3] Programar recursos internos de clase
  • [Límite: S3] Realizar pruebas de concepto

Tareas realizadas:

  • Se creó el repositorio de Git y se sincronizó con un repositorio remoto en GitHub
  • Se creó proyecto en GitHub projects para gestionar las tareas y organizar el trabajo.
  • Se hizo una evaluación exhaustiva de los archivos .rto, y específicamente de los archivos .xml y su organización interna.
  • Se diseñó una estructura inicial para los recursos internos de las clases en la aplicación. La estructura no es final y está sujeta a cambios, a medida que el desarrollo vaya mostrando nuevas necesidades o deprecando cosas que antes se consideraban necesarias
  • Se realizó una de las pruebas de concepto planeadas: serialización y deserialización de archivos de clase. En esta prueba de concepto, se crea un recurso de tipo Metadata (ver diagrama anterior) en el editor, se guarda desde el editor en un archivo .json, y se carga en runtime para mostrar su información.

Semana 2

En la segunda semana se comenzó a implementar las estructuras y funcionalidades que corresponden al núcleo del sistema, y que son la base de todo el proyecto. Además, se comenzó a trabajar de forma adelantada en una tarea que estaba planeada para iniciarse en semana 3.

Tareas planeadas:

  • [Límite: S2] Definición de requisitos de archivos de clases
  • [Límite: S3] Programar recursos internos de clase
  • [Límite: S3] Realizar pruebas de concepto

Tareas realizadas:

  • Definición inicial de requisitos de archivos de clases. Con la estructura de recursos internos y la prueba de concepto de serialización y deserialización de archivos, se definió una lista inicial de requisitos de los archivos de clases, con el objetivo de ser una base para la especificación de archivos de clases. Esta definición no es final y está sujeta a cambios, según las necesidades que surjan en las siguientes iteraciones.
  • Se programó todos los recursos internos de clase en la aplicación según lo definido en la semana 1.
  • Se realizó una de las pruebas de concepto planeadas: muestra de texto, audio e imágenes en runtime a partir de los recursos internos.
  • Se comenzó a documentar la arquitectura de la aplicación.
  • Se comenzó a adelantar la tarea “Parser para cargar archivos de clase”.

Semana 3

Tareas planeadas:

  • [Límite: S3] Programar recursos internos de clase
  • [Límite: S3] Realizar pruebas de concepto
  • [Límite: S4] Especificación de archivos de clase
  • [Límite: S5] Parser para cargar archivos de clase

Tareas realizadas:

  • Se agregaron más recursos de clase, añadiendo los tipos EntityReference y EntityProperty, y modificando el diagrama diseñado en semana 1 para quedar así:
  • Se realizó una serie de pruebas de concepto:
    • Carga de clase desde archivo
    • Muestra de nuevos tipos de elementos: bloque de código y trazos
    • Aparición simultánea de elementos
    • Aparición secuencial de elementos
    • Sincronización de aparición de elementos y audio
    • Fondo infinito
    • Control de cámara
  • Se documentó y refinó gran parte del código utilizado. De esta forma, el generador de documentación incorporado en GodotEngine es capaz de mostrar esta documentación cuando se le pregunta sobre la clase que se encarga de cargar el archivo de la clase:

Aquí se puede ver la prueba de concepto en acción:

En el video, se ve la reproducción de una clase de ejemplo muy simple que consiste en un grupo secuencial de dos grupos simultáneos de elementos, de esta forma:

  • Grupo secuencial:
    • Grupo simultáneo 1:
      • Audio “¿Qué es el relator?”
      • Imagen “UI de POODLE”
    • Grupo simultáneo 2:
      • Audio “¿Qué es el relator?”
      • Texto en formato cita: “Pondría tus manos al fuego”
      • Bloque de código
      • Trazo simple, dibujando una flecha

Tareas pendientes:

  • Quedan pendientes algunas pruebas de concepto:
    • Pausa de clase en reproducción
    • Carga de módulos externos
  • Queda pendiente terminar la documentación de la arquitectura y la API de módulos que la aplicación expone.

Get POODLE

Leave a comment

Log in with itch.io to leave a comment.