“Projet Kamaku”, démo technique de SG1 inside©

Pour ceux qui se demanderaient à quoi correspondent les décomptes de boulettes de mes posts précédents, voici les premières infos officielles sur un “petit projet perso” qui a pris plus d’ampleur que prévu (au moins dans mon emploi du temps)…

* * *

Tout a commencé il y a 3 ans, quand quelques camarades de promo et moi-même avons décidé de créer à l’ENSIMAG (mon école en France pour ceux du fond qui dorment) un club de conception de systèmes de jeux vidéos : IGAM. A la base, nous étions parti sur 2 pôles : un pôle conception de jeux vidéos sur PC, et un pôle “console” dont le but était de concevoir sur FPGA (cf. définition Wikipédia) une console de jeu de A à Z, de la porte logique au code de haut niveau en passant par les circuits logiques, l’OS, les drivers, les librairies… Avec l’achat d’une carte de protypage XUP-V2P de Digilent, j’ai passé le dernier mois de ma 2a à réaliser avec 3 autres membres du club la 1è version de cette “console” amateur.

Vient ensuite ma première année au KUINEP à l’Université de Kyôto. Le projet avance au club durant mon absence (surtout du point de vue logiciel), mais rien de neuf de mon côté.

En août de l’année dernière, je décide de commander la même carte que le club pour mon usage personnel (cf. ce post). Avec la découverte du monde de l’arcade et l’achat de ma propre borne, j’étudie la faisabilité de transformer légèrement le projet console d’IGAM en “projet arcade“. Après pas mal de recherches sur les normes et la faisabilité, je propose à IGAM un “nouveau” projet : codename Kamaku. L’idée : transformer le design matériel du projet console pour le faire tourner au format JAMMA, et y programmer un shmup.

En septembre, je passe une semaine à Grenoble au club pour me mettre au jus sur ce qui a été fait durant mon absence, et commencer à monter une équipe pour bosser sur Kamaku. On divise le boulot en 3 parties : matériel, OS et logiciel. Je me retrouve en charge du logiciel.

En octobre/novembre, pour des raisons diverses et variées tenant principalement à mon caractère de cochon, je décide de m’écarter d’IGAM. Je recommence tout à zéro, en me disant que je n’arriverai jamais seul jusqu’au bout mais que si j’arrive à mener le projet à un point intéressant je pourrai éventuellement le reproposer plus abouti à IGAM.

Fin janvier, j’obtiens les premiers résultats sur borne : c’est… incroyablement lent. A cette époque, je suis persuadé que non-seulement c’est impossible d’y arriver seul, mais même que c’est impossible tout court sur ce matériel de protypage.

En février, n’écoutant que ma raison, je décide de… ne pas l’écouter, et de continuer quand même. Finalement, après avoir passé mes 2 mois de vacances quasi-complets sur le design matériel, j’arrive à afficher plusieurs dizaines de sprites simultanément. Puis cent, puis 500, puis 1000, puis 2500… L’aspect “matériel” du projet Kamaku est désormais fin prêt, et il se voit même doté d’un nom : SG1 (champagne au premier qui trouve la signification du sigle :p).

Mon but initial était d’arriver à afficher environ 300 sprites à 60 fps, le tout avant mon second semestre de cours de cette année. Mes cours recommencent dans 2 jours, et je peux afficher 2000 sprites sans trop de problèmes. Pour une des premières fois de ma vie, j’ai réussi à tenir les délais que je m’était imposés (bon les vacances sont un peu passées à la trappe, mais c’est pour le bien du geekisme !). Et je suis satisfait de mon résultat. J’ai donc actuellement une démo technique qui tourne sur une vraie borne. Prochaine étape : un niveau entier de shmup, jouable. Deadline : retour en France le 1er Août. Probabilité de réussite : quasi nulle. Au boulot ! :p

* * *

Puisque j’ai enfin une démo technique, je ne résiste pas au plaisir de vous montrer quelques visuels du résultat.

Vidéo 1 : branchement de la XUP-V2P sur la borne via un J-Pac

(télécharger en FLV)

Vidéo 2 : il commence à pouvoir gérer quelques boulettes, mon système ! (L’impression que les boulettes vont à l’envers parfois est due à la vidéo en PAL à 25 fps, donc beaucoup moins fluide que ce que l’on voit réellement à l’écran…)

(télécharger en FLV)

Image 1 : vue générale de l’installation


Image 2 : la XUP-V2P en détails


 

15 Comments to ““Projet Kamaku”, démo technique de SG1 inside©”

  1. MsK` Says:

    SG1 = stargate sg 1 ?
    SG1 = Shooting Game 1 ?
    SG1 = Sycopathe Gamer 1 ?

  2. Egao Says:

    Impressiveu…
    Sandales a Grenouilles 1

  3. ju Says:

    La bouteille de champagne est-elle toujours en jeu?
    (sinon matthieu: t’es trop un dingue de la programmation élec/info! :-) )

  4. Erhune Says:

    Msk > Ah ah tu es tombé dans le piège subtil que j’ai dissimulé dans cet acronyme. Mais non, ce n’est pas ça.

    Egao > Pas bête. Mais non :)

    Ju > Toujours en jeu :p

  5. domino Says:

    Shmup G 1 !

  6. PITROU Says:

    C’est rigolo : des mots, du francais, des phrases avec des verbes , mais je comprends rien. C’est un projet pour le gouvernement ? genre un truc qui va dans l’espace ?

  7. PITROU Says:

    Sinon pour SG1 , j’ai réfléchi et bah j’ai rien trouvé !
    C’est sur c’est pas de l’allemand sinon Domino aurait trouvé (forcément avec un nom comme ca…..)
    Puis le G ca doit sans doute vouloir dire G !!
    De toute façon un mot sans voyelles c’est un truc, et les trucs, on donne ca au GOD, et le GOD il cherchera jusqu’a ce qu’il trouve, meme si ca prend 3 mois

  8. CoinKoin Says:

    Shooting Geek 1 ?

  9. ju Says:

    super G 1? (pas très drôle mais sait-on jamais…)
    Super Guillemot 1? (là non plus…)
    Soirée Gay 1?
    Super Gay 1?
    Shooting Gay 1?

  10. Erhune Says:

    *bubuuuuuuuuuuu*

    Faux !

  11. MsK` Says:

    Je me demandais la, c’est pas un peu dangereux de s’assoir sur la coque en plexi du truc ?
    (je suis déjà loin la en fait)

  12. world gambling online casino Says:

    casino gambling top online gambling casino vegas online

  13. Nomax Says:

    Super Gun 1?

  14. foreplay mature lesbian Says:

    foreplay porn lesbian teen lesbian foreplay

  15. health ppo care insurance unity Says:

    ppo mental unity insurance health health insurance unity ppo pregnancy