Accueil » Actualité » Jouer à Quake 2 grâce au HTML 5

Jouer à Quake 2 grâce au HTML 5

Image 1 : Jouer à Quake 2 grâce au HTML 5

Des ingénieurs de Google ont montré une version de Quake 2 portée en HTML 5. Le résultat a le mérite de laisser rêveur.

Vivre sans flash

Le but est simple puisqu’il s’agit de montrer qu’il est possible de faire tourner un jeu 3D sans avoir besoin de plugin flash. Utilisant WebGL, l’API Canvas et les éléments <audio> HTML5 ainsi que les WebSockets, il s’agit avant tout d’une vitrine technologique de ce qu’il est possible de faire avec le nouveau langage. Le portage est basé sur le projet Jake 2 et compilé en javascript en utilisant Google Web Toolkit (GWT). Pour rappel, Jake 2 est un portage Java du code source du Quake 2.

Image 2 : Jouer à Quake 2 grâce au HTML 5Instructions (allez à la section suivante pour connaître nos impressions)

Une vidéo est disponible sur YouTube. Nous avons néanmoins tenu à tester le jeu par nous-mêmes afin de nous faire notre propre avis sur la question. Sachez que la démo fonctionne uniquement sur Mac OS X Leopard et plus ou Linux et qu’il faut soit utiliser la dernière version de webkit, soit la dernière build de Chromium, la version pour développeur de Chrome. Pour cela, il suffit de télécharger le fichier zip présent dans le dossier correspondant à votre système d’exploitation, puis une fois le fichier décompressé, se rendre avec le terminal dans le dossier pour lancer le programme en activant WebGL. Si vous utilisez Mac OS X, il faut taper (à condition que le dossier soit sur votre bureau)

 ~/Desktop/chrome-mac/Chromium.app/Contents/MacOS/Chromium –enable-webgl –no-sandbox

Chromium sera alors lancé. Vous pouvez le minimiser et commencer l’installation de Quake 2 sur votre machine.

Sur Mac OS X, il suffit d’installer MacPorts (soyez sûr que Xcode est installé sur votre machine et dans le cas contraire, utilisez la version livrée avec le CD d’installation Mac OS X) et de compiler Ogg Vorbis (sudo port install vorbis-tools) et Lame (sudo port install lame).

Nous tenons à signaler qu’un bug avec la librairie libao empêche l’installation de vorbis-tools sur Leopard. Pour palier ce problème qui n’a pas encore de solution sur MacPorts, nous vous invitons à lancer la commande sudo port install vorbis-tools une première fois et attendre que Mac OS X retourne un message d’erreur au moment de compiler la librairie. Éditez ensuite le fichier PortFile dans
Image 3 : Jouer à Quake 2 grâce au HTML 5
/opt/local/var/macports/sources/rsync.macports.org/release/ports/audio/libao/

et effacer

if {${os.major} < 10} {
    patchfiles patch-AU-src__plugins__macosx__ao_macosx.c
     }

Remplacer ensuite le fichier ao_macosx.c présent dans :

/opt/local/var/macports/sources/rsync.macports.org/release/ports/audio/libao/work/libao-1.0.0/src/plugins/macosx/

avec notre version mise à jour. Le bug est connu, mais nous n’avons pas réussi à appliquer le patch. Nous avons donc corrigé nous-mêmes le fichier ao_macosx.c en suivant les modifications publiées sur xiph.org. 

Relancez ensuite la commande

sudo port install vorbis-tools

Une fois vorbis-tools et lame installés, il faut aller télécharger Mercurial et taper la ligne suivante dans le terminal (on assume que vous voulez télécharger le clone sur votre bureau) :

hg clone https://quake2-gwt-port.googlecode.com/hg/ ~/Desktop/quake2-gwt-port

Aller sur le dossier fraichement téléchargé

cd ~/Desktop/quake2-gwt-port/

et taper

./build-dedicated-server

Si le pare-feu vous le demande, autoriser Java à accéder au réseau. Entrez ensuite

./instImage 4 : Jouer à Quake 2 grâce au HTML 5all-resources

Une fois que la démo originale de Quake 2 a éte téléchargée et installée, il faut corriger un bug en tapant

cp -r maven-build/server/target/gwtquake/war/gwtquake war.

On démarre le serveur en tapant (si vous voulez que le port du serveur soit 8080, ce que nous recommandons)

./run-dedicated-server [8080]

Lorsque vous lisez le message « ====== Quake2 Initialized ====== », vous pouvez aller dans Chromium et taper dans la barre d’addresse

http://localhost:8080/GwtQuake.html

Bravo, vous allez maintenant pouvoir jouer à Quake 2 en HTML 5 directement depuis votre navigateur. Les utilisateurs du système d’exploitation au manchot suivront les mêmes étapes, mais au lieu d’utiliser MacPort, ils taperont sudo apt-get install vorbis-tools openjdk-6-jdk et sudo apt-get install lame. Si apt-get ne fonctionne pas avec Lame, il est toujours possible de télécharger le code source.

Image 5 : Jouer à Quake 2 grâce au HTML 5Des performances honorables pour un projet aussi précaire

Comme vous pouvez le voir, il s’agit d’un projet à un stade précaire de développement, mais qui, si on arrive à le faire tourner sur sa machine, permet de s’extasier devant les futures prouesses de l’HTML 5.

Sur notre machine (iMac 24 pouces fin 2007 faisant tourner trois navigateurs, une myriade d’onglets et de nombreuses applications), le frame rate tournait entre 17 et 20 images par seconde. Bref, sans être un monstre de fluidité, le jeu était jouable. La musique a néanmoins refusé de se lancer et les mouvements de la souris avaient parfois du mal à être reconnus, mais cela ne nous a pas empêchés d’apprécier le travail des ingénieurs de Google et l’accomplissement que cela représente.

La portée de ce projet est intéressante, car bien exploité, le HTML 5 peut radicalement changer la manière dont les Internautes jouent sur la Toile. Il sera ainsi possible de partager ses jeux en publiant un simple lien sans avoir besoin d’installer quoi que ce soit et d’en profiter sur des médias comme l’iPhone, Android ou l’iPad.

Image 6 : Jouer à Quake 2 grâce au HTML 5