Fiche de présence
Gestion de la présence : génération d'icônes 2D via RenderTexture, tirage au sort en jeu et mode Exploration pour les démonstrations.
Le dossier UserInterface/FicheDePresence/ gère trois choses : l’appel de présence, le tirage au sort en jeu et le mode démonstration.
L’appel — gestion de la présence
Appelé au lancement de l’app ou avant une activité. L’astuce technique : des caméras + RenderTexture génèrent des icônes 2D dynamiques à partir des modèles 3D des avatars.
| Script | Rôle |
|---|---|
FicheDePresenceManager.cs | Superviseur. Vérifie que l’enseignant fait l’appel, propose le mode Exploration pour l’esquiver, et nettoie la mémoire (caméras et clones 3D) à la fermeture du menu. |
ListePresence_Menu.cs | Générateur d’interface. Parcourt la liste des élèves, instancie leur modèle 3D caché dans le décor, place une caméra devant, envoie le rendu à l’UI. Possède UpdatePresence() pour sauvegarder l’état Présent/Absent. |
ListeDePresenceIconUI.cs | Composant visuel d’un élève. Gère le prénom, l’avatar (texture reçue), et le clic pour basculer de “Présent” (vert) à “Absent” (rouge). |
L’interrogation — tirage au sort en jeu
| Script | Rôle |
|---|---|
SelectRandomStudent.cs | Urne de tirage. Génère une grille visuelle des élèves présents. SelectRandom() tire au sort via StudentSystemCore et déclenche OnEleveSelected. SelectThisStudent() permet au prof de forcer manuellement un élève précis. |
Mode Exploration — démonstration
Pour les salons ou les tests : permet de tester toute l’app sans polluer les données réelles.
| Script | Rôle |
|---|---|
ModeExplorationManager.cs | Pop-up de confirmation. Si activé, masque le menu de présence, passe PlayerData.IsModeExploration = true et émet OnModeExplorationActivated. |
WaterMarkDisplay.cs | Écoute l’activation et affiche un filigrane semi-transparent en permanence pour rappeler au prof qu’il est en mode test et que rien n’est sauvegardé. |