| Sommaire de la rubrique Game Design de Pascal Luban Donnez votre avis sur le forum de l'afjv
| L'utilisation de la physique dans les jeux vidéo n'est pas une nouveauté. Nous sommes nombreux à nous souvenir avec émotion de Lunar Lander ou de Marble Madness. Le gameplay de ces jeux reposait intégralement sur la maîtrise de la gravité. Mais la nouveauté vient de la prochaine généralisation de solutions techniques permettant d'offrir une gestion poussée de la physique dans les jeux destinés au marché de
masse : Jeu d’action, simulations sportives, RTS, etc. La gestion de la physique est très exigeante en matière de puissance de calcul. La disponibilité de processeurs dédiés (comme celui développé par Ageia) et la généralisation de CPU multi-coeurs permettent d'envisager une utilisation beaucoup plus intense de la physique dans les jeux. |
|

Pascal Luban
|
La vraie question devient alors qu'allons nous faire avec cette nouvelle ressource. Jusqu’à présent, l’utilisation de la physique dans les jeux d’action se limitait le plus souvent à des effets cosmétiques. Ces derniers sont importants pour l’immersion du joueur mais ne modifient pas le gameplay. La question est maintenant de savoir quelles en sont les applications en termes de gameplay. Comment allons-nous
pouvoir apporter de nouvelles expériences au joueur ? L'objet de cet article est d'y apporter quelques réponses et de partager mon expérience acquise sur le design de la map multi-joueur CTF-Tornado, une map faisant partie d’un mod UT3 dont l’objet est de tirer parti du processeur graphique développé par Ageia. Cette map a été développé par le talentueux studio Game Consulting.

Première partie – Introduction
Définitions
Commençons par quelques définitions. Le champ d'application de la physique ne se limite pas à la simulation de la gravité et des collisions entre des objets. La physique englobe aussi les domaines suivants :
La dynamique des fluides, qu'ils soient liquides ou gazeux
La déformation des objets souples comme les tissus ou des objets rigides comme des tôles plates ou des solides
La simulation des frictions et des viscosités
Les changements d'état de la matière comme le passage d'un volume d'eau de l'état liquide à l'état solide
Les ruptures de matériaux.
On voit d'emblée que la physique couvre un vaste champ d'applications dont certains n'ont encore été jamais exploité dans les jeux. Les défis posés sont cependant à la hauteur des enjeux.
Les défis posés par l'utilisation de la physique dans les jeux
Ces défis sont de plusieurs ordres :
- Les besoins en capacité de calcul
- Le défi posé par les jeux multi-joueurs
- L'incompatibilité entre la dimension scriptée de certains jeux et la nature chaotique de la physique
Passons-les en revu.
Les besoins en capacité de calcul
La gestion de la physique est extraordinairement gourmande en capacité de calcul. Ce n'est pas un hasard si l'application de la physique a été très modeste jusqu'à présent alors que de bons moteurs logiciel de physique comme Havok sont disponibles depuis plusieurs années.
Dans les jeux actuels, seule une part très faible de la puissance du ou des CPUs peut être allouée à la physique, entre 10 et 25% d’un seul cœur. Or, la physique demande des ressources considérables. Prenons le cas le plus simple, celui de la gestion des collisions. Le déplacement de chaque objet dynamique est géré par de nombreux paramètres (vecteur de déplacement, vitesse, rotations sur plusieurs axes) qui doivent être
recalculé pour chaque image. Ensuite, il faut calculer les interactions entre les objets dynamiques eux-mêmes. Dix objets dynamiques entassés les uns à côté des autres demanderont infiniment plus de calcul que si ces derniers ne se touchent pas. L’augmentation de la puissance des CPUs (ou la multiplication des cœurs) peut-il résoudre ce problème ? Probablement pas à court terme car les besoins des jeux en terme de CPU – et
hors calcul de la physique – continuent à augmenter.
La physique induit aussi d’autres charges pour le ou les CPUs.
L’utilisation de la physique dans un niveau rend le pathfinding beaucoup plus complexe. Ce dernier doit en effet s’adapter à la volée à un univers changeant. Si un gros bloc tombe au milieu d’une rue, l’intelligence artificielle du jeu doit en tenir compte pour que les personnages pilotés par l’IA évitent l’objet ou s’en servent pour se protéger.
Enfin, les lumières et les ombres doivent être dynamiques. Si des objets bougent ou si des murs sont détruits, on ne peut plus utiliser des ombres et des éclairages pré-calculés. L’utilisation d’éclairage dynamique devient alors indispensable. On peut cependant s’en passer en adoptant des environnements peu contrastés mais la qualité graphique de la map en pâtie.
Le défi posé par les jeux multi-joueurs
L’utilisation de la physique dans un jeu multi-joueurs offre de très intéressantes perspectives du point de vue du gameplay car le joueur peut alors utiliser le décor à son avantage. Cependant, par rapport à un jeu solo, un jeu multi-joueurs offre des contraintes supplémentaires : La bande-passante disponible pour les sessions jouées sur internet et la latence. Le défi est de synchroniser sur toutes les machines les
évènements ayant un impact direct sur le gameplay. Jusqu’à présent dans la majorité des jeux, seuls le positionnement des joueurs ainsi que celui de leurs projectiles devaient être synchronisés. Si la physique doit avoir un impact sur le gameplay, il faut aussi synchroniser tout ses acteurs : Objets physiques, nuages de particules susceptibles de bloquer la vue, zones d’effet, etc.
Cette contrainte est malheureusement largement indépendante de la puissance de calcul de la machine de jeu mais plusieurs solutions permettent d’avoir de la physique dans une session multi-joueurs. La stratégie à suivre est d’avoir une physique dont l’impact se concentre sur les machines clients et qui ne nécessite que peu de synchronisation. Ainsi il faut limiter le nombre de gros objets ayant un impact sur le gameplay car
ces derniers doivent être synchronisés sur toutes les machines. A l’inverse, un nuage composé de particules ou de petits objets ne nécessitent pas de synchronisation parfaite sur toutes les machines. Il suffit de synchroniser le positionnement du nuage et son éventuel volume de dégât. Ainsi, si on veut synchroniser les effets de la chute d’un mirador, il faut synchroniser sur toutes les machines un volume de dégât associé avec
la chute des débris et non pas les débris eux-mêmes qui sont trop nombreux. La physique gère localement les collisions entre les débris. Le level design doit tenir compte de cette contrainte dès sa conception 1) en prévoyant qu’un maximum d’effets physiques soient gérés localement et 2) en se donnant un « budget » d’objets à synchroniser.
L'incompatibilité entre la dimension scriptée de certains jeux et la nature chaotique de la physique
Tous les jeux offrant une expérience solo cherchent à offrir le maximum de sensations aux joueurs. En raison du cout de développement des jeux, ces derniers s’articulent le plus souvent autours de parcours relativement linéaires car ils permettent de s’assurer que le joueur profite des effets spéciaux, des cinématiques, des scénarisations de combat prévues. Le parcours linéaire permet également de contrôler le rythme du
jeu. Si le joueur commence à errer dans un lieu et qu’il ne se passe pas grand-chose, l’ennui peut le gagner. Il existe bien entendu de nombreuses exceptions offrant des univers de jeu ouverts comme la plupart des RPGs ou certains jeux d’actions se déroulant en extérieur comme Far Cry mais la plupart des jeux d’action ou d’action/aventure offrent des architectures linéaires ou semi-linéaires.
| Dans ce genre de contexte, l’utilisation de la physique peut conduire à des situations non-anticipées par le level designer. On appelle cela le gameplay émergent. Ce type de gameplay est généralement le bienvenu mais l’utilisation de la physique permet de modifier la topologie des lieux et donc de créer de situations de blocage des déplacements, de perturbation de l’IA des personnages ou de disparition
d’éléments-clé d’évolution du scénario. Ce genre de problème peut d’ailleurs aussi se présenter dans des maps multi-joueurs. Ainsi dans CTF-Tornado nous nous somme très vite rendu compte que le déplacement de gros objets par la tornade ou les joueurs eux-mêmes pouvaient bloquer les accès aux bases et donc empêcher les joueurs d’aller récupérer ou déposer les drapeaux capturés. |
|

CTF-Tornado
|
Il fallait offrir cette option car elle ouvre de nouvelles possibilités tactiques mais il fallait veiller à ce la map ne soient pas bloquée. Différentes solutions furent alors développées : Le nombre des accès fut augmenté et nous offrîmes aux joueurs la possibilité de débloquer eux-mêmes les éventuels obstacles en utilisant l'Impact Hammer, une des armes d’UT3 offrant un effet répulsif.
Seconde partie - Les applications de la physique au gameplay
A l’exception des jeux qui en ont fait leur principal mécanisme de gameplay, la physique a été jusqu’à présent essentiellement utilisée à des fins cosmétiques dans les jeux. Très peu de jeu d’action ou de stratégie y ont fait appel pour enrichir leur gameplay. La raison en est simple. Ces jeux sont déjà très exigeants en matière de calcul. Or nous avons vu que la physique est particulièrement gourmande en puissance de
calcul et impacte fortement d’autres paramètres comme la bande passante ou l’affichage temps réel.
Aujourd’hui, il devient envisageable d’utiliser la physique de manière plus intensive, et cela, quelque soit le genre du jeu mais que faire avec ?
Je vois quatre grandes familles d’application de la physique au gameplay, quatre mécanismes mis à la disposition du joueur ou des designers :
- De nouvelles fonctionnalités pour faire face aux défis posés par le jeu
- Des univers de jeu mouvants
- Un puissant mécanisme d apprentissage
- La construction d’outils
Donner au joueur de nouveaux outils
La logique du gameplay de la plupart des jeux est la suivante : 1) Offrir au joueur un défi à surmonter, comme vaincre un groupe d’ennemis et 2) lui donner des outils pour y arriver : armes, mouvements, éléments du décor, etc. L’objectif pour le joueur est alors d’apprendre à maîtriser ces outils et de les utiliser à bon escient pour relever le défi.
Dans cette optique, tout nouvel « outil » apporté au joueur doit lui permettre d’atteindre cet objectif. Il en va de même de la physique. Si celle dernière n’apporte pas au joueur de nouveaux moyens de relever son défi, elle ne sert à rien du point de vue du gameplay, CQFD.
Cette dure réalité ne doit jamais être perdue de vue car l’utilisation de la physique demeure très gourmande en ressources et implique des arbitrages importants en début de projet. Voyons maintenant quelques pistes permettant de réellement tirer parti de la physique pour améliorer le gameplay d’un jeu.
Les jeux d'action représentant un genre majeur, voyons les applications possibles de la physique au gameplay. Le gameplay y repose essentiellement sur des défis de combat ou de déplacement. La physique doit donc apporter au joueur de nouveaux outils pour répondre aux problématiques suivantes :
- Affaiblir ou éliminer son adversaire
- S'en protéger
- S'ouvrir ou fermer un passage
- Détecter ses adversaires
- Se masquer à leurs yeux.
A partir du moment que la finalité du joueur est acquise, de nombreuses applications viennent à l'esprit :
La destruction d'éléments du décor permet de toucher un adversaire, de s'en protéger en construisant une barricade, d'ouvrir de nouveaux chemins ou au contraire d'en fermer.
La gestion des fluides offre un champ d'application totalement nouveau. Les fluides peuvent aussi bien être liquides ou gazeux. Ils permettent d'allumer un incendie et de laisser le vent le pousser dans la bonne direction. La fumée générée par les actions des joueurs peut masquer la vision du joueur ou de ses adversaires et offrir ainsi de nouvelles opportunités tactiques. Un liquide en expansion ou en
mouvement affectent radicalement la physique des autres corps : Certains vont couler ou au contraire flotter. Remplir ou au contraire vider un local peut radicalement y changer les conditions de combat et de déplacement et offrir un gameplay totalement neuf dans un lieu déjà exploité. Un fluide animé d'un mouvement peut servir à transporter une odeur, élargissant ainsi les moyens de détection mis á la disposition du joueur ...
ou de ses adversaires.
Des univers de jeu mouvants
La quasi-intégralité des niveaux de jeu sont aujourd’hui totalement statiques. Ce sont les adversaires qui les animent. Imaginons des jeux ou l’environnement du jeu lui-même est l’adversaire, ou du moins offre des conditions changeantes de jeu. La physique permet de rendre un environnement mouvant, avec toutes les conséquences qui en découlent : chute d’objets, perte d’équilibre, objets plus ou moins difficile à déplacer
selon la pente, etc.
Imaginez un jeu d’action se déroulant sur un navire en train de couler. Les compartiments se remplissent d’eau et modifie les déplacements des personnages en bloquant certains passages mais en permettant aussi de d’éteindre un incendie. L’inclinaison de la coque elle-même change. De gros objets peuvent maintenant glisser le long les ponts et être utilisés comme obstacles ou même comme arme. Le changement complet d’assiette
du navire, comme un retournement ou son passage à la vertical, conduit à modifier radicalement la circulation dans la coque.
D’autres situations sont envisageables : Incendie, tremblement de terre, raz-de-marée, bombardements, tempête en pleine mer, modification de la gravité ou de la pressurisation dans l’espace, etc.
C’est d’ailleurs ce que nous avons fait avec CTF-Tornado. La tornade se comporte comme la « troisième équipe », aidant ou défavorisant tel ou tel camp. La tornade modifie la circulation dans la map en bloquant ou en ouvrant de nombreux passages. Sa seule présence empêche les joueurs d’emprunter les passages les plus directs. Elle modifie aussi les conditions de défense de la map en arrachant des pans de murs ou de toits.
Elle dévie même les projectiles des joueurs !
Offrir au joueur un mécanisme d'apprentissage
Le jeu n'est pas le propre de l'homme. Il s'agit d'un mécanisme de découverte et d'apprentissage développé par la nature bien avant que l'Homo Sapiens ne soit descendu de son arbre. Jouer c'est apprendre. Ce mécanisme est bien entendu à l'œuvre dans nos propres production. Le joueur apprend dans un FPS à anticiper les réactions de ses adversaires ou à évaluer la puissance d'une arme. Comment le fait-il ? En explorant son
unviers de jeu et en le testant, par exemple en utilisant les armes mis à sa disposition par les développeurs du jeu et en évaluant les résultats. Il manipule et apprend les règles propres à cette arme en constatant les résultats. La relation de cause à effet est évidente. Il est ainsi possible d'enseigner au joueur à utiliser des outils qu'il ne connaît pas. Ce mécanisme devient en revanche beaucoup moins efficace lorsque la
relation de cause à effet n'est pas évidente. C'est le cas de certains puzzles qui ne répondent pas à notre logique mais plutôt à celle du game designer qui les a conçus.
La physique se prête particulièrement bien à ce genre de mécanisme d'auto-apprentissage car nous en connaissons tous le fonctionnement dans le monde réel. Ainsi nous savons instinctivement comment les forces de la gravité et de la physique des fluides vont influencer un liquide renversé. Offrir au joueur un gameplay reposant sur la physique permet de lui donner l'opportunité de trouver ses propres solutions à des problèmes
complexes.
| Théorie fumeuse ? Examinons quelques applications concrètes. Dans Half-Life 2 plusieurs puzzles de déplacement reposent sur un mécanisme que nous connaissons tous : La flottabilité - ou son absence - de certains objets. Le joueur utilise ainsi la flottabilité positive de barils pour faire remonter ou flotter un objet lourd ou á l'inverse, tire profit de la masse de pièces de métal pour faire couler un objet flottant. Dans
la version PC de GRAW 2 développée par le studio Suédois Grin les joueurs peuvent se débarrasser d'adversaires embusqués en haut d'une tour en causant sa chute. Enfin, prenons l'exemple de Switchball. Dans ce jeu de réflexion, une partie des puzzles sont résolues en utilisant des billes de différentes densités. Le joueur découvre très vite qu'une bille trop légère n'a pas assez
d'inertie pour se frayer un chemin au milieu d'obstacles. Rendre un univers de jeu physique permet de libérer l’esprit d’initiative du joueur. Le joueur peut trouver des solutions en s’appuyant sur sa propre expérience du monde réel et sur ses propres expérimentations dans le jeu. |
|
 
|
Projetons-nous dans l'avenir et essayons de voir ce qu'un level designer ayant à sa disposition un univers de jeu physique pourrait faire. Imaginons qu'un joueur soit bloqué par un groupe d'adversaires solidement retranchés derrière une barricade. Quelles solutions pourrait-il inventer pour passer ? La chute d'un arbre ou d'un bloc peut écraser ses adversaires, un gros objet cylindrique peut être mis en
mouvement par le joueur qui peut alors le pousser pour se constituer un rempart mobile, la libération d'un véhicule le long d'une pente afin qu'il se transforme en bélier, l’explosion d'un véhicule pour que la colonne de fumée masque les déplacements du joueur. Toutes ces solutions découlent de la simple observation de l’environnement et de notre compréhension innée de ce qui est possible dans le monde réel.
Permettre au joueur de construire ses propres outils
La physique autorise la déformation d’objets comme des plaques, des tuyaux ou des poutres. Il devient alors envisageable de permettre au joueur de les façonner selon ses besoins. Ainsi, en déformant des tôles, le joueur peut construire des canalisations pour de l’eau ou pour une bille. Une toile habilement découpée peut faire office de voile ou de toiture dans le cadre d’une simulation de survie. La fragilité de certains
matériaux comme des branchages permettent de construire un piège en recouvrant une fosse avec lesdits matériaux. Les caractéristiques de flexibilité d’une planche ou d’une lame d’acier permettent de construire une catapulte primitive.
Une telle application de la physique la limiterait probablement à certains genres comme les puzzles ou les jeux de survie. L’interface devrait en effet y être adaptée. Mais le potentiel ludique pourrait être énorme. Imaginons un jeu de construction ou chaque « brique » est dotée de caractéristiques physiques. Le joueur pourrait se construire un univers de jeu totalement unique.
Conclusion
La physique est extraordinairement gourmande en ressource et une partie des idées que j’ai développées ne sont pas encore réalisables mais les outils et les technologies se mettent en place. Dès maintenant, il est possible d’enrichir le gameplay avec des applications de la physique qui ne sont pas que cosmétiques. Le développement d’environnements de jeu dynamiques que le joueur peut modifier est une des tendances du level
design d’aujourd’hui. La physique rend possible cette évolution.
Les technologies prochainement disponibles vont nous étonner et nous apporter le surcroit de puissance dont nous avons besoin. La balle sera alors dans le camp des game et des level designers qui devront alors tirer parti de ces nouvelles possibilités afin d’enrichir l’expérience du joueur.
Liens
Ageia: www.ageia.com
Havok: www.havok.com
Game Consulting: www.game-consulting.com
The Game Design Studio: www.gamedesignstudio.com
UT3 CTF-Tornado, téléchargement du mod et video: www.ageia.com/physx/ut3.html
Remerciements
Je tiens à remercier les personnes suivantes pour leur contribution :
David Black
Hervé Vazeilles
James Dolan
Jean-Pierre Bordes
Majdi Kraiem
Monier Maher
Philippe Geldard
Sommaire de la rubrique Game Design de Pascal Luban
Donnez votre avis sur le forum de l'afjv |