Difference between revisions of "Projets:Perso:2011:InterfaceJeu"
(Created page with "{{Project |name= Interface de jeu |author= Clément |proposal_date= 25/03/2011 |abstract1=Ayant bien aimé un petit jeu con, je me suis dit que ce serait nettement mieux avec une...") |
(my 2 cents ;)) |
||
Line 13: | Line 13: | ||
|official_electrolab_project= not yet | |official_electrolab_project= not yet | ||
|budget= 0 (perso) | |budget= 0 (perso) | ||
− | |number_of_members= | + | |number_of_members= 2 (viendez participer!) |
|estimated_time= few nights of work for the first prototype | |estimated_time= few nights of work for the first prototype | ||
}} | }} | ||
Line 23: | Line 23: | ||
Rendre fun un plus ou moins serious game grace à une interface hw, servant de prétexte à: | Rendre fun un plus ou moins serious game grace à une interface hw, servant de prétexte à: | ||
* une introduction à l'électronique (par le biais d'arduino, de l'interface hw) | * une introduction à l'électronique (par le biais d'arduino, de l'interface hw) | ||
− | * un support plus ou moins pédagogique sur certains systèmes & mécanismes (selon le game design) | + | * un support plus ou moins pédagogique sur certains systèmes & mécanismes d'interface (selon le game design) |
+ | * Une initiation amusante à un procédé physique / chimique relativement complexe et pouvant être abordé simplement par le jeu | ||
==Principes== | ==Principes== | ||
* Un jeu simple tourne sur un ordinateur personnel. | * Un jeu simple tourne sur un ordinateur personnel. | ||
* La majeure partie des fonctionnalités du jeu sont pilotées par une interface hw basée sur une Arduino, avec des capteurs/indicateurs divers et variés. | * La majeure partie des fonctionnalités du jeu sont pilotées par une interface hw basée sur une Arduino, avec des capteurs/indicateurs divers et variés. | ||
+ | * Le lien entre le hw et le soft est effectué via l'interface série émulée de l'Arduino | ||
* Moteur de jeu type variables d'état + lois d'évolution, eg simulateur. Certaines de ces variables sont commandables (grace à l'interface), d'autres sont visualisées sur des indicateurs hw | * Moteur de jeu type variables d'état + lois d'évolution, eg simulateur. Certaines de ces variables sont commandables (grace à l'interface), d'autres sont visualisées sur des indicateurs hw | ||
+ | * Eventuellement, en complément des actionneurs qui constituent l'interface hw, l'écran de l'ordinateur peut être utilisé pour afficher une vue plus complexe du process et/ou des animations amusantes pour renforcer l'aspect ludique du jeu. | ||
* L'ensemble hw+sw est pensé pour servir de prétexte à s'approprier les différents éléments technologiques mis en oeuvre | * L'ensemble hw+sw est pensé pour servir de prétexte à s'approprier les différents éléments technologiques mis en oeuvre | ||
==Fonctionnalités== | ==Fonctionnalités== | ||
− | + | ||
+ | ===Partie software=== | ||
+ | La plate forme software de base doit permettre de simplement lire / écrire sur les différents éléments de l'interface hardware. Tout comme l'on ferait avec un joystick, le logiciel prend en entrée des valeurs en pourcentage (éventuellement codées sur un octet pour simplifier). Pour les mêmes raisons et pour simplifier le développement d'autes interfaces / logiciels, il génère également en sortie des valeurs simples à convertir. Cette fois encore, l'utilisation d'un pourcentage semble être une bonne idée. | ||
+ | |||
+ | ===Partie Hardware=== | ||
+ | La conversion entre les différentes tensions mesurées sur les potentiomètres de l'interface est réalisée par l'Arduino de manière à fournir une couche d'abstraction simple du matériel. Le firmware de l'Arduino doit donc se charger de la partie calibration de l'interface. | ||
+ | |||
+ | Pour maximiser les différentes possibilités software/hardware, le firmware de l'arduino doit être en mesure de reconfigurer à chaud les différentes I/O disponibles sur la carte en fonction des besoins de la simulation et de l'interface. | ||
+ | |||
+ | Il semble intéressant de pouvoir gérer : 8 galva, 8 interrupteurs, 6 potentiomètres, 16 leds et 2 servos | ||
==Ressources== | ==Ressources== | ||
− | * www.arduino.cc des ressources sur la plateforme | + | * http://www.arduino.cc des ressources sur la plateforme |
− | * esa21.kennesaw.edu/activities/nukeenergy/nuke.htm le jeu qui a inspiré tout ca | + | * http://esa21.kennesaw.edu/activities/nukeenergy/nuke.htm le jeu qui a inspiré tout ca |
=Réalisation= | =Réalisation= | ||
Line 57: | Line 69: | ||
** pisciculture | ** pisciculture | ||
** lockpicking | ** lockpicking | ||
+ | ** centrale production bio-carburant | ||
+ | ** Usine de production de parfum (colonne de [http://fr.wikipedia.org/wiki/Vapocraquage vapocraquage] ) | ||
*At random, quelques design goals, feature requests, ... | *At random, quelques design goals, feature requests, ... | ||
− | ** que ce soit hautement hackable, pensé non pas comme un jouet mais comme un moyen fun d'introduction à la bidouille | + | ** que ce soit hautement hackable, pensé non pas comme un jouet mais comme un moyen fun d'introduction à la bidouille, notamment chez les jeunes |
** que ce soit même une incitation par tous les moyens à se faire bidouiller | ** que ce soit même une incitation par tous les moyens à se faire bidouiller | ||
Revision as of 00:52, 27 March 2011
Interface de jeu | |
---|---|
Auteur | Clément |
Date de proposition | 25/03/2011 |
Tags du projet | PPC |
Lieu d'utilisation final | Anywhere |
Utilisateur final | Youngsters |
Type de projet
Projet personnel de Clément |
Ayant bien aimé un petit jeu con, je me suis dit que ce serait nettement mieux avec une interface hw adaptée |
Contents
Introduction
Donne un appercu des tenants et aboutissants du projet.
Objectifs
Rendre fun un plus ou moins serious game grace à une interface hw, servant de prétexte à:
- une introduction à l'électronique (par le biais d'arduino, de l'interface hw)
- un support plus ou moins pédagogique sur certains systèmes & mécanismes d'interface (selon le game design)
- Une initiation amusante à un procédé physique / chimique relativement complexe et pouvant être abordé simplement par le jeu
Principes
- Un jeu simple tourne sur un ordinateur personnel.
- La majeure partie des fonctionnalités du jeu sont pilotées par une interface hw basée sur une Arduino, avec des capteurs/indicateurs divers et variés.
- Le lien entre le hw et le soft est effectué via l'interface série émulée de l'Arduino
- Moteur de jeu type variables d'état + lois d'évolution, eg simulateur. Certaines de ces variables sont commandables (grace à l'interface), d'autres sont visualisées sur des indicateurs hw
- Eventuellement, en complément des actionneurs qui constituent l'interface hw, l'écran de l'ordinateur peut être utilisé pour afficher une vue plus complexe du process et/ou des animations amusantes pour renforcer l'aspect ludique du jeu.
- L'ensemble hw+sw est pensé pour servir de prétexte à s'approprier les différents éléments technologiques mis en oeuvre
Fonctionnalités
Partie software
La plate forme software de base doit permettre de simplement lire / écrire sur les différents éléments de l'interface hardware. Tout comme l'on ferait avec un joystick, le logiciel prend en entrée des valeurs en pourcentage (éventuellement codées sur un octet pour simplifier). Pour les mêmes raisons et pour simplifier le développement d'autes interfaces / logiciels, il génère également en sortie des valeurs simples à convertir. Cette fois encore, l'utilisation d'un pourcentage semble être une bonne idée.
Partie Hardware
La conversion entre les différentes tensions mesurées sur les potentiomètres de l'interface est réalisée par l'Arduino de manière à fournir une couche d'abstraction simple du matériel. Le firmware de l'Arduino doit donc se charger de la partie calibration de l'interface.
Pour maximiser les différentes possibilités software/hardware, le firmware de l'arduino doit être en mesure de reconfigurer à chaud les différentes I/O disponibles sur la carte en fonction des besoins de la simulation et de l'interface.
Il semble intéressant de pouvoir gérer : 8 galva, 8 interrupteurs, 6 potentiomètres, 16 leds et 2 servos
Ressources
- http://www.arduino.cc des ressources sur la plateforme
- http://esa21.kennesaw.edu/activities/nukeenergy/nuke.htm le jeu qui a inspiré tout ca
Réalisation
Rassemble un ensemble de ressources décrivant les étapes du projet, et aidant à organiser le travail en cours
Macro planning
- Réaliser un premier prototype hw courant avril pour pouvoir valider certains concepts et travailler sur le logiciel par la suite
- Ebaucher le logiciel courant mai, pour distribution à des testeurs + développeurs complémentaires ; prévoir d'autres interfaces hw pour qu'ils fassent des essais. Faire des démos pour peaufiner le concept
- Tenter de créer une dynamique autour de ce projet au delà du lab, pour inciter d'autres acteurs à s'approprier l'ensemble
Etat d'avancement
- Mars 2011: début du projet
Prochaines actions/en cours
TODO 0 : brainstorming
- La première application, c'est naturellement celle qui s'inspire du PJC initial. Mais c'est un peu limité, et il doit être possible de trouver d'autres "thèmes" (brainstorm!)
- sous marin
- usine retraitement des eaux usées
- éolienne
- barrage hydroélectrique
- pisciculture
- lockpicking
- centrale production bio-carburant
- Usine de production de parfum (colonne de vapocraquage )
- At random, quelques design goals, feature requests, ...
- que ce soit hautement hackable, pensé non pas comme un jouet mais comme un moyen fun d'introduction à la bidouille, notamment chez les jeunes
- que ce soit même une incitation par tous les moyens à se faire bidouiller
TODO 1 : prototype
- Utiliser un support type plaque de plastique pliée pour faire un pupitre, sur lequel est fixée l'arduino, les potards & différents switchs, leds, témoins, ...
- Type d'éléments montés:
- potards
- leds (multiplexées, pour réduire le nombre d'i/o requises
- buzzer
- galvanometre/indicateur
- on/off switches
- servomoteur
Résultats
Permet de capitaliser sur le travail effectué: l'utiliser, le reproduire, l'améliorer, ...
Schéma structurel
TBC
Budget
TBC
Contacts, fournisseurs
TBC
Prototype 1
TBC