Bien entendu, on se dit aussi : c'est probablement pour économiser des ressources graphiques et maintenir le framerate. Ah bravo les mecs terre-à-terre ! Et même ça, on commence à avoir du mal à y croire. Prenez le dernier Crysis par exemple, on peut s'interroger : avec une telle puissance sous le capot, est-ce que ça fait vraiment une différence de garder quelques polygones de plus pendant un peu plus longtemps ? Le jeu tournait très bien quand les ennemis bougeaient, bon sang ! Pourquoi virer les corps sous prétexte qu'ils ne servent plus à rien, si ce n'est à l'immersion ? (j'entends par là que ça casse l'ambiance quand ils disparaissent sans raison, rien à voir avec l'immersion du corps de Ben Laden).

Eh bien, figurez-vous qu'en 2011, c'est encore important de grappiller là où on peut. Pour appuyer mes dires, je suis allé poser la question EsKa, notre développeur favori ex-Crytex new-Ubi, qui m'a confirmé ce fait en long, en large et en clair :

__________________________

Alors en effet, on fait disparaître les corps pour des raisons purement budgétaires, car crois-moi ça nous fait pas spécialement chaud au coeur de voir "dépopper" une IA juste sous nos yeux.

Souvent les "cadavres" ennemis ne sont pas un point primordial du gameplay dans un jeu, sauf peut-être Hitman, Metal Gear et autres jeux de stealth où le but est d'attirer l'attention des ennemis sur le cadavre ou bien de le planquer dans une armoire. Et c'est bien pour cela qu'on estime que ce n'est pas un domaine dans lequel il est utile de trop "dépenser" au niveau ressource.

Cela étant dit, et sachant qu'on n'est pas illimité au niveau ressource sur consoles, on choisit souvent la disparition des corps. Là où il faut être malin, c'est sur le "comment" on les fait disparaître :

  • Après un certain temps ? Mauvais choix, car on peut ouvertement voir les cadavres despawner devant nos yeux, mais utilisés par certains jeux tout de même.
  • Lorsqu'ils sont hors du champ de vision du joueur ? Pas super non plus, si le joueur tourne sur lui-même il peut rapidement se rendre compte de la supercherie.
  • Lorsqu'ils sont hors du champ et après un certain temps ? Bon choix, bon compromis entre le besoin technique et éviter que le joueur s'en rende trop compte.

Les cadavres ne sont pas au coeur du gameplay

Laisser les cadavres en permanence ? Possible aussi, probablement le plus "beau" choix pour le joueur, mais également le plus cher au niveau performances. Nous par exemple sur Crysis 2 on faisait en sorte que les cadavres disparaissent X secondes après que le joueur ne les ai plus dans son champ de vision, ce qui ne marchait pas trop mal en général. On gardait aussi certains cadavres plus longtemps, notamment lorsqu'une autre IA est attirée par le cadavre en question (lorsqu'elle joue son rôle de "hein ? Pourquoi tu réponds plus à la radio Jean-Michel ?"), afin que le tout reste cohérent.

Seul point noir du tableau : on avait un pool d'IA limité et quand on voulait en spawner plus au même endroit, il fallait despawner un cadavre. Et dans ce cas, on se moque de toutes les belles choses que j'ai écrites au-dessus, il faut le despawner tout de suite, quelle que soit la direction dans laquelle le joueur regarde. Ça n'arrive pas souvent (heureusement), mais ça peut arriver quand même dans certains cas d'urgence, car on se dit que spawner un nouvel ennemi est plus important que de voir dépopper un cadavre. Cela étant, je pense, que le système pour lequel on a opté est un bon compromis en général.

__________________________

Merci à EsKa pour ces explications ! Cela dit, ouaisssss, je saissss pas... Je préfère celle des figurants personnellement. Enfin, de toute façon, vous savez ce qu'il vous reste à faire lors des prochains FPS et autres jeux de meurtre : ramassez les munitions, les bonus, et tout ce qui traine, et continuez votre chemin sans jamais regarder en arrière. Sinon vous vous changerez en statue de sel. Si si, c'est vrai.