Commit 1ba648ea authored by Martin LOISEAU's avatar Martin LOISEAU 🎄
Browse files

Update README

parent 47f4ca69
QR Quest (nom de travail) est un projet de jeu éducatif pour android utilisant les fonctionnalités de capture de QR code, de synthèse vocale et de reconnaissance vocale.
QR Quest (nom de travail) est un projet de jeu éducatif à destination d'enfants pour android utilisant les fonctionnalités de capture de QR code, de synthèse vocale et de reconnaissance vocale.
Développé en juin 2020 dans le cadre d'un stage de 3ème année (Polytech Nantes).
Le fonctionnement de la partie QR a été adapté du projet QRLudo : https://github.com/univ-angers/QRLudo
Développé en juin 2020 dans le cadre d'un stage de 3ème année par Martin Loiseau (étudiant en informatique, Polytech Nantes), encadré par Vincent Barichard (maître de conférence, Université d'Angers).
Le fonctionnement de l'application est basé sur un système de noeud/atomes.
Chaque noeud représente une série d'action que le jeu effectuera (lire un texte, etc). Chaque noeud possède égalemement une liste d'atomes. Lorsque tout lesa tomes de cette liste sont réunis par le joueur, le noeud se déclenche et effectue toutes ses actions.
Des actions communes sont donc celles d'ajouter ou de retirer un atome par exemple.
Seuls les noeuds ouverts (dans la liste open nodes) sont susceptibles de se déclencher.
Le fonctionnement de la partie capture de QR a été adapté du projet QRLudo : https://github.com/univ-angers/QRLudo
Le scenario est donc décrit par la liste de tout les noeuds.
Le moteur du jeu est basé sur un système de noeud/atomes.
Chaque noeud représente une série d'action que le jeu effectuera (lire un texte à voix haute, capturer un QR code, etc). Chaque noeud possède égalemement une liste d'atomes. Lorsque tous les atomes de cette liste sont réunis par le joueur, le noeud se déclenche et effectue toutes ses actions.
Des actions communes sont donc celles d'ajouter ou de retirer un atome à la liste du joueur, qui représente son inventaire.
Seuls les noeuds ouverts (dans la liste open nodes) sont susceptibles de se déclencher. Seul le premier noeud de cette liste dont tous les atomes sont présents se déclenche.
Le scénario est donc décrit par la liste de tous les noeuds, contenue dans un fichier xml.
Le point d'entrée du scénario est la première node du scénario, qui ne doit donc contenir aucun atome afin de se déclencher initialement. A partir de ce noeud, on peut initialiser le jeu comme on le souhaite en ajoutant les noeufs ouverts et atomes avec lesquels on souhaite commencer.
Ce projet est un prototype. Les pistes d'améliorations sont :
- Chargement du scenario a partir d'un fichier XML (en cours)
- Optimisation de la vitesse d'éxecution de la lecture par synthèse vocale et de l'ouverture de l'appareil photo pour scanner des QR (peut prendre jusqu'à 3 secondes actuellement)
- Affichage d'une illustration pour chaque node.
- Ajout d'autres actions.
- Parallélisation de l'éxecution des nodes (actuellement séquentiel)
Ce projet est un prototype. La license permet la réutilisation du code sans contraintes.
Martin Loiseau
Contact: martin.loiseau1@etu.univ-nantes.fr
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment