20 septembre 2010

Projets d'année : Y'gotta be bad-enough to beat the brave

Voici les projets que j'ai proposés en L3 et M2.



Moteur de tiles en C (L3) ou comment l'auteur recycle sans vergogne une arlésienne que les meilleurs programmeurs du moment n'ont pas su déflorer mieux que Kolibri.
Les tiles (briques) sont, avec les blitters, une technique d'affichage 2D largement utilisée par les consoles de jeu vidéo dans les années 80 et 90. Passée en désuetude avec l'apparition de la 3D, elles reviennent en force pour nombre d'IHM et surtout, avec l'émergence du marché des jeux-vidéos pour mobiles.
La console Megadrive et son add-on 32X est une plate-forme assez prisée des développeurs homebrew et propose librement des outils de développements, de la documentation, et des membres actifs sur de nombreux forums. Cette plate-forme, sortie entre les tiles et la 3D, n'a bénéficié d'aucune librairie officielle dans ces technologies. Le but de ce projet est donc de développer un moteur de tiles pour la 32X (la partie 3D relève trop des mathématiques).
Pour les étudiants, l'aspect principal est l'algorithmie. Si l'algorithme général n'est pas très compliqué, son implémentation sur une plate-forme particulière, ses spécificités et surtout son optimisation apporteront leur lots de problèmes à résoudre.
Il s'agit d'un projet gratifiant, ludique, mais qui demande incontestablement des compétences de bases en programmation et un engagement certain des étudiants.
Limite dans le cadre de la MIAGE : ce projet est - très - technique.



Gestionnaire de mémoire cache (L3)
Wikipedia définit la mémoire cache comme "une mémoire qui enregistre temporairement des copies de données provenant d'une autre source de mémoire". Les premiers usages en série de cette technologie remontent en 1984 et aujourd'hui, les processeurs ont plusieurs Mo de cache sur plusieurs niveaux.
La mémoire cache étant plus chère, elle est en quantité moindre. Il est donc important que les données présentes soient utiles, et que les données utiles soient présentes.
Le but de ce projet est de présenter des algorithmes susceptibles d'optimiser la gestion de cette mémoire cache, les implémenter, et d'en faire une étude comparative. En particulier, on verra quand et comment placer des données en cache, quand et comment les en sortir, quand et comment aller les lire, quand et comment aller les modifier.
Les étudiants aborderont au moins 2 algorithmes, leur performance et complexité, étudieront l'associativité et son impact et proposeront une démonstration simplifiée. En bonus, on pourra introduire les problèmes de cohérence de cache.
Ce projet ne demande pas de compétences algorithmiques pointues, mais plutôt une vision claire d'un problème finalement assez simple, pris sous différents angles.



L'avenir du jeu sur les plate-formes mobiles (M2)
Alors que Nintendo fête les 20 ans de la Gameboy et les 25 ans de sa franchise principale (Super Mario), c'est tout une nouvelle économie qui se met en place autour du jeu mobile. Depuis quelques années déjà, le budget de l'industrie du jeu-vidéo devient énorme, ses revenus comparable à ceux du cinéma.
Si Nintendo a depuis longtemps déjà une position dominante, de nombreux nouveaux joueurs ont tenté avec plus ou moins de succès de percer dans ce marché.
Aujourd'hui, celui-ci se résume à 2 gros acteurs : Nintendo et Sony et un outsider : Apple.
Le but de ce projet est de faire un rappel sur les racines du jeu-vidéo mobile, dresser un état de l'art, et envisager les possibilités à venir.
Les étudiants pourront s'attarder sur les plate-formes techniques à venir (Nintendo 3DS, PSP 2 et surtout, Apple) mais devront évidemment creuser le business model des différentes plate-formes (support physique, PSN et PSP Go et Apple Store).
La partie "à venir" devra entre autres faire le point sur la dichotomie jeu classique / social gaming.
Selon moi, je le redis, ce projet est le plus intéressant de ceux que je propose parce qu'il est complètement d'actualité. Je pense que nous sommes à un moment qui va redéfinir les jeux-vidéos mobiles et pour partie, l'industrie du jeu-vidéo en général. Si ce marché, autrefois négligeable et négligé, a souvent accueilli les moqueries, son poids financier et culturel le rend aujourd'hui incontournable au point de créer, partout dans le monde des universités spécialisées reconnues.
Il s'inscrit complètement dans le cadre d'une MIAGE, à la converge de l'informatique, de l'économie et de la gestion.



Vous vous mettez par groupes de 4, vous avez 8 mois et quoi que vous fassiez, vous aurez moins de 13.