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.
Instructions (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
/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
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.
Des 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.
- Que contient le processeur A4 d'Apple ?
- Toujours plus de netbooks vendus
- La HP Slate : Atom et 1080p
- TDJ : 5870 Vapor-X, Corsair DDR3 Dominator
- Un serveur de base de donnée optimisé SSD
- GreenIT : la Finlande scanne son courrier
- La TA890FXE AM3 de Biostar en détails
- A-Data : de la DDRL certifiée Westemere-EP
- Flash débarque en RC 10.1, améliorations en HD








Explosé de rire cette news. C'est en comprenant tout ce qui est écrit qu'on sent vraiment qu'on est geek XD
Sinon, dommage que sur Windows elle ne marche pas (d'après ce que vous dites).
Pas encore
Et donc linux = apt-get ? ..... Ca laisse songeur.
Et Chromium n'est pas la version "développeur" de Chrome mais le projet open-source servant de base au développement de Chrome. Ce n'est pas tout à fait pareil.
Sinon je ne pense pas que la finalité du projet des ingénieurs de Google soit réellement la niche des joueurs casual, mais plus une démonstration technologique s'efforçant de casser le schéma de pensée établit voulant que flash soit la seule techno pour une expérience web riche.
Cela pourrait déboucher sur une victoire des standards salvatrice même s'il reste des batailles à gagner.
Google utilise WebGL au lieu de Flash, mais au final, ça reste un "plugin".
A l'immense différence près que webGL est en cours de standardisation, a des implémentations ouvertes et est donc destiné à faire partie intégrante des navigateurs. Rien à voir, donc.
Les publicités script et flash sont déjà bien lourdes et invasives. Pour le moment on peut encore naviguer tranquile avec noscript, flashblock, etc...
Qu'est-ce que ça va devenir quand elles seront dans le language normalisé lu par le navigateur ?
Pour une fois qu'un jeu fonctionne sur MasOS et pas sur Windows !
Les publicités script et flash sont déjà bien lourdes et invasives. Pour le moment on peut encore naviguer tranquile avec noscript, flashblock, etc...Qu'est-ce que ça va devenir quand elles seront dans le language normalisé lu par le navigateur ?
WebGL est du javascript... Donc si tu désactive javascript du désactive l'interprétation webGL. Donc pas de soucis
C'est pas que ca marche pas sous windows c'est juste que le serveur ne se compile que sous linux ou macosx mais ensuite en utilisant chrome pour windows et en se connectant sur le server linux, ça fonctionne aussi...
C'est pas que ca marche pas sous windows c'est juste que le serveur ne se compile que sous linux ou macosx mais ensuite en utilisant chrome pour windows et en se connectant sur le server linux, ça fonctionne aussi...
Va falloir que je tente le coup alors...