


Créer un jeu éducatif avec des outils d'IA et Azure Static Web Apps (Partie 1)
Vous êtes-vous déjà demandé comment les jeux pouvaient révolutionner l'apprentissage ? J'ai été captivé par l'idée de fusionner créativité, technologie et plaisir, ce qui m'a amené à développer un jeu de roman visuel éducatif. Malgré mon manque d'expérience en développement de jeux, je me suis lancé dans cette aventure en utilisant Ren'Py, un moteur de roman visuel basé sur Python. En tirant parti des outils d'IA pour un développement accéléré et d'Azure Static Web Apps pour le déploiement, j'ai construit un prototype enseignant l'assistance au codage de GitHub Copilot. Un thème festif de décembre a ajouté une couche supplémentaire de plaisir.
Ce post détaille ma démarche :
- Création de jeux avec le framework Ren'Py.
- Utilisation d'outils d'IA (GitHub Copilot, Azure OpenAI Service) pour un développement et une génération d'actifs visuels plus rapides.
- Création et déploiement automatisés via GitHub Actions et Azure Static Web Apps.
Intrigué ? Jouez au jeu en ligne et accédez au code source sur mon référentiel GitHub (lien omis par souci de concision).
La Genèse
De nombreux jeux éducatifs existent pour les technologies cloud, s'adressant à tous les niveaux de compétence. Le Microsoft Technical Quest de Microsoft (un jeu de cartes utilisant les services Azure) et les offres AWS similaires illustrent l'apprentissage cloud gamifié.
Inspiré par "Azure Space Mystery" de Microsoft Cloud Advocates (un jeu textuel avec des visuels et des questions interactives), mon objectif était de créer une expérience similaire, en enseignant un concept technique à travers un jeu textuel avec des quiz et des récompenses de réussite. . La récente popularité de GitHub Copilot en a fait mon thème central, complété par un décor festif de décembre.
Le résultat : Christmas Copilot Quest, un jeu guidant les joueurs tout au long de l'utilisation de GitHub Copilot dans Visual Studio Code, avec GingerBot (l'assistant alimenté par le copilote du Père Noël) fournissant des conseils interactifs.
Captures d'écran du jeu : menu principal, exemple de dialogue, page de ressources d'apprentissage.
Créer un jeu basé sur du texte
Pile technologique :
Mes exigences incluaient une narration non linéaire avec des quiz ayant un impact sur le déroulement du jeu, la personnalisation de l'interface utilisateur, la flexibilité des composants personnalisés et le déploiement d'applications Web. La familiarité de Python m'a conduit à Ren'Py, répondant à tous les besoins grâce à son langage de script pour l'histoire, les quiz et la personnalisation de l'interface utilisateur. Son extensibilité Python et ses capacités d'exportation Web, ainsi que sa CLI pour les builds et les déploiements automatisés, ont été des facteurs clés.
Structure du jeu :
Le jeu comprend trois éléments principaux :
Script : Le récit (monologues/dialogues) et les quiz, organisés en sections étiquetées.
Captures d'écran du jeu : exemple de dialogue, quiz des joueurs.
Interface utilisateur graphique (GUI) : Écrans, menus et éléments visuels. Ren'Py permettait à la fois la personnalisation d'écran intégrée (boutons, menus) et la création de nouveaux écrans (notifications de réussite, menus de ressources).
Écrans de jeu personnalisés : sélection de personnage, notification de réussite, écran de réussite.
Code Python personnalisé : Ajoute des fonctionnalités spécifiques au jeu (système de succès, définitions de personnages, utilitaires GUI). Ces composants ont été conservés séparés pour des raisons de maintenabilité. Par exemple, une fonction Python déterminant les noms des joueurs est appelée directement depuis le script :
label introduction: felix "Ah, you must be the new coder Santa called for! What's your name?" $ player_input = renpy.input( _("(Type your name and press Enter, or press Enter to use the default name, [character_name].)") ) $ player_name = character_utils.determine_player_name(player_input) player "I'm [player_name]."
Intégration de l'IA dans le développement
GitHub Copilot : Crucial pour naviguer dans Ren'Py. Bien que les données limitées de Ren'Py puissent affecter la précision, Copilot a largement aidé à comprendre les composants de Ren'Py, comme la suggestion d'un écran de sélection de personnage avec des boutons d'image.
Suggestion d'écran de sélection de personnage de GitHub Copilot.
Génération d'images IA : Pour créer rapidement des visuels, j'ai utilisé des outils d'IA. DALL-E 3 (Azure OpenAI Service) fournissait initialement des images correctes, mais maintenir un style cohérent s'est avéré difficile. Microsoft Designer offrait une meilleure cohérence, en particulier sa fonctionnalité de conversion texte-image d'avatar. Une esthétique « low poly » assurait la cohérence et correspondait au style du jeu. Exemple d'invite :
"Portrait 3D low-poly d'une femme stylisée aux cheveux bruns, portant un chemisier aux couleurs de Noël, présentant des formes géométriques épurées, des couleurs plates et un éclairage doux, dans un style futuriste minimaliste avec fond blanc."
Les images générées ont été traitées à l'aide de filtres pour la réduction du bruit, le lissage des couleurs, la suppression de l'arrière-plan et la mise en évidence des bords des polygones. Les combinaisons d'images et les doublons ont créé des effets clignotants.
Conclusion et prochaines étapes
Cet article présente Ren'Py et les outils d'IA (GitHub Copilot, Azure OpenAI Service, Microsoft Designer) pour créer un prototype de jeu éducatif. La prochaine étape est le déploiement, en tirant parti de l'intégration des actions GitHub de Ren'Py et d'Azure Static Web Apps. Les ressources suivantes offrent des informations supplémentaires sur GitHub Copilot et DALL-E 3. (Liens omis par souci de concision).
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds











Python est plus facile à apprendre et à utiliser, tandis que C est plus puissant mais complexe. 1. La syntaxe Python est concise et adaptée aux débutants. Le typage dynamique et la gestion automatique de la mémoire le rendent facile à utiliser, mais peuvent entraîner des erreurs d'exécution. 2.C fournit des fonctionnalités de contrôle de bas niveau et avancées, adaptées aux applications haute performance, mais a un seuil d'apprentissage élevé et nécessite une gestion manuelle de la mémoire et de la sécurité.

Est-ce suffisant pour apprendre Python pendant deux heures par jour? Cela dépend de vos objectifs et de vos méthodes d'apprentissage. 1) Élaborer un plan d'apprentissage clair, 2) Sélectionnez les ressources et méthodes d'apprentissage appropriées, 3) la pratique et l'examen et la consolidation de la pratique pratique et de l'examen et de la consolidation, et vous pouvez progressivement maîtriser les connaissances de base et les fonctions avancées de Python au cours de cette période.

Python est meilleur que C dans l'efficacité du développement, mais C est plus élevé dans les performances d'exécution. 1. La syntaxe concise de Python et les bibliothèques riches améliorent l'efficacité du développement. Les caractéristiques de type compilation et le contrôle du matériel de CC améliorent les performances d'exécution. Lorsque vous faites un choix, vous devez peser la vitesse de développement et l'efficacité de l'exécution en fonction des besoins du projet.

Python et C ont chacun leurs propres avantages, et le choix doit être basé sur les exigences du projet. 1) Python convient au développement rapide et au traitement des données en raison de sa syntaxe concise et de son typage dynamique. 2) C convient à des performances élevées et à une programmation système en raison de son typage statique et de sa gestion de la mémoire manuelle.

PythonlistSaReparmentofthestandardLibrary, tandis que les coloccules de colocède, tandis que les colocculations pour la base de la Parlementaire, des coloments de forage polyvalent, tandis que la fonctionnalité de la fonctionnalité nettement adressée.

Python excelle dans l'automatisation, les scripts et la gestion des tâches. 1) Automatisation: La sauvegarde du fichier est réalisée via des bibliothèques standard telles que le système d'exploitation et la fermeture. 2) Écriture de script: utilisez la bibliothèque PSUTIL pour surveiller les ressources système. 3) Gestion des tâches: utilisez la bibliothèque de planification pour planifier les tâches. La facilité d'utilisation de Python et la prise en charge de la bibliothèque riche en font l'outil préféré dans ces domaines.

Les applications de Python en informatique scientifique comprennent l'analyse des données, l'apprentissage automatique, la simulation numérique et la visualisation. 1.Numpy fournit des tableaux multidimensionnels et des fonctions mathématiques efficaces. 2. Scipy étend la fonctionnalité Numpy et fournit des outils d'optimisation et d'algèbre linéaire. 3. Pandas est utilisé pour le traitement et l'analyse des données. 4.Matplotlib est utilisé pour générer divers graphiques et résultats visuels.

Les applications clés de Python dans le développement Web incluent l'utilisation des cadres Django et Flask, le développement de l'API, l'analyse et la visualisation des données, l'apprentissage automatique et l'IA et l'optimisation des performances. 1. Framework Django et Flask: Django convient au développement rapide d'applications complexes, et Flask convient aux projets petits ou hautement personnalisés. 2. Développement de l'API: Utilisez Flask ou DjangorestFramework pour construire RestulAPI. 3. Analyse et visualisation des données: utilisez Python pour traiter les données et les afficher via l'interface Web. 4. Apprentissage automatique et AI: Python est utilisé pour créer des applications Web intelligentes. 5. Optimisation des performances: optimisée par la programmation, la mise en cache et le code asynchrones
