L'eau "cheap" de la majorité des jeux vidéo
La consommation due à la simulation de l’eau est possible à gérer dans des milieux plus riches comme le cinéma mais ça n’est pas le cas dans tous les domaines. Pour les jeux-vidéo, par exemple, c’est un problème puisqu’ils doivent faire la même chose sur des machines mille fois moins puissantes, avec plus de fps et en temps réel. Mais alors, comment font-ils ?
Les techniques les plus simples.Avant les années 2000 les zones aquatiques n’étaient que des sprites 2D bleu légèrement animée, mais, avec l’arrivée de processeurs plus puissants, de nouvelles techniques sont apparues dont le normal mapping et le vertex displacement.
![]()
Le normal mapping :
Les normal maps sont des shaders qui agissent sur les textures et qui donnent une illusion de profondeur sans ajouter de polygones à afficher.
En en superposant deux désynchronisés avec quelques animations quand les entités interagissent avec l’eau et un flou bleuté quand le joueur est dans l’eau, on obtient une eau basique, peu réaliste pour les interactions mais qui fonctionne.
Le vertex displacement :
Les displacement maps sont une autre couche que l’on ajoute au-dessus du shader et qui va agir uniquement sur ce dernier pour apporter plus de profondeur et de détail.
Dans la simulation de l’eau le vertex displacement permet une interaction réaliste entre l’eau et les hitbox des entités, il va dire à la normal map de mettre plus de lumière entre deux zones d’ombre ce qui donne l’impression d’un pic entre deux creux et donc d’une ondulation lorsque les entités passent dans l’eau.Quelles sont les limites de ce système ?Bien que ces techniques permettent de créer une eau presque photoréaliste, selon les jeux, elles se limitent à des étendues d’eau calme. Dès que l’on veut créer une eau agitée, voire déchaînée, cette technique ne suffit pas, il faudrait pour cela utiliser les équations de Navier-Stokes ce qui "exploserait" les ordinateurs et consoles trop peu puissants. Il est donc impossible de simuler une eau complètement réaliste dans le jeu-vidéo.
Pour ceux qui souhaiteraient des informations plus précises.
Sujet du site Le Normal Mapping Le Vertex Displacement Tester une Normal Map Lien du site https://fr.wikipedia.org/wiki/Normal_mapping https://en.wikipedia.org/wiki/Displacement_mapping https://cpetry.github.io/NormalMap-Online/