Accueil » Actualité » Rage sur iPhone : quelques considérations techniques

Rage sur iPhone : quelques considérations techniques

Image 1 : Rage sur iPhone : quelques considérations techniques

Samedi, nous vous présentions Rage HD de façon volontairement polémique. Aujourd’hui, revenons sur le dernier jeu de John Carmack, en analysant le côté technique. Premièrement, Rage existe en deux versions : la classique et la HD. La différence entre les deux vient d’une part de la qualité des textures et des éléments d’interfaces, d’autre part du prix (0,80 € la première, 1,6 € la seconde) et enfin de la compatibilité. La capture le montre bien, sur la version iPad les éléments d’interfaces sont bien nets sur la version HD, tout comme les détails des textures.

La version classique fonctionne normalement sur tous les appareils iOS, même si nos tests sur un iPhone de première génération se sont soldés par un échec. Sur des appareils plus récents, Rage fonctionne parfaitement, alors que Rage HD nécessite un appareil doté d’une puce de type PowerVR SGX (les premiers modèles sont en PowerVR MBX). Rage HD fonctionne donc uniquement sur les iPhone 3GS, iPhone 4, iPod touch 3G et 4G ainsi que l’iPad.

La particularité de Rage, c’est d’utiliser le concept de mégatextures. En simplifiant, c’est une énorme texture compressée qui est utilisée pour le rendu. Dans Rage, on se retrouve avec un jeu nécessitant 750 Mo sur l’appareil, avec Rage HD, on passe à 1,2 Go. Dixit John Carmack, le passage à un environnement libre (Rage est sur « rails ») ne pose pas techniquement de problèmes, mais nécessite deux à trois fois plus d’espace de stockage pour les textures, ce qui est problématique sur les appareils d’Apple : certains appareils ne disposent que de 8 Go de mémoire. Qui plus est, les appareils sous iOS ont peu de RAM (entre 128 Mo et 512 Mo) et iOS pose quelques problèmes au niveau de la gestion de la mémoire, avec notamment l’absence de fichier de pagination.

Actuellement, le jeu n’exploite pas totalement les capacités des appareils et utilise OpenGL ES 1.1, une API qui permet de garder la compatibilité avec la puce PowerVR MBX des anciens appareils, mais vu le succès de la version HD, John Carmack devrait passer à OpenGL ES 2.0 dans ses prochains jeux, une API qui permet plus de choses mais qui limite la compatibilité aux appareils dotés d’une puce PowerVR SGX.

Pour ceux que ça intéresse, les appareils de première génération ont un CPU ARM11 entre 400 et 533 MHz, avec une puce PowerVR MBX. Cette dernière peut calculer environ 1 million de triangles/s et a un fillrate de 100 Mpixels/s. Les autres appareils ont une puce contenant un core de type Cortex A8 (entre 600 et 1 GHz) et une puce PowerVR SGX, capable d’atteindre 7 millions de triangles à la seconde et 250 Mpixels/s de fillrate.

Enfin, point intéressant que nous avons montré, Rage ne se limite pas à l’écran du smartphone, il est aussi capable de prendre en charge les différents adaptateurs vidéo pour les appareils iOS. Il existe en effet une sortie composite, une composante (limitée au 480p) et une VGA (limitée au 1 024 x 768).

Rage HD sur un iPad et une télévision