FS25 : Déformation du sol expliquée
FS25 : Déformation du sol expliquée
Ce n'est plus un secret, le sol de Farming Simulator 25 se déforme. Mais vous voulez des détails, n'est-ce pas ? Alors, allez-y !
Parallèlement à de nouvelles captures d'écran visualisant la manière dont le sol va se déformer, Eddie Edwards, ingénieur logiciel senior de GIANTS Software, expliquera plus en détail son fonctionnement réel.
Eddie, parlez-nous d'abord de vous et de votre poste – quel est votre rôle ?
Je suis l'un des programmeurs seniors du moteur de Farming Simulator. Je travaille chez GIANTS depuis les débuts de FS13. J'ai créé le portage original sur PlayStation 3 et j'ai été responsable d'autres ports du moteur GIANTS sur PS4, PS5, Switch et iOS. Je suis vraiment le « gars PlayStation » de l'entreprise, mais je travaille également sur la technologie des moteurs multiplateformes tels que les cartes de densité, le rendu, le compilateur de shaders, certains aspects physiques, l'audio, etc.
Il n'y a pas grand chose dans le moteur GIANTS sur lequel je n'ai pas travaillé dans une certaine mesure au cours des 12 dernières années ! Et en particulier, bien sûr, j'ai créé les nouvelles technologies qui nous apportent la déformation du sol pour FS25 – le système de carte de densité amélioré, le nouveau système de géométrie du terrain et le système de texturation virtuelle du terrain.
Comment le sol se déforme
Selon le type de sol, la déformation et la compression du sol dépendent de plusieurs facteurs. Regardez !
Quels facteurs définissent la façon dont le sol se déforme ?
Eddie : Plusieurs facteurs entrent en jeu. Tout d’abord, chaque type de sol a un niveau de « fermeté » et de « viscosité » différent. L’asphalte ne peut pas du tout se déformer, alors que la boue peut se déformer beaucoup (en raison de sa « fermeté » différente), et rouler sur la neige l’écrase instantanément, alors que rouler sur la boue la comprime sur une période plus longue (en raison de sa « viscosité » différente). De plus, si le sol est mouillé, cela affecte également la déformation.
Le type de véhicule que vous conduisez affecte également la déformation : le poids du tracteur et la largeur de ses pneus affectent tous deux la réaction du terrain. Et un véhicule lent s'enfoncera plus vite qu'un véhicule rapide.
Comment la déformation du sol affecte-t-elle le gameplay ? Que « ressentiront » les joueurs ?
Pour la première fois, le FS25 donne une véritable réponse physique au terrain : vous sentirez le tracteur heurter le sol et vous le verrez créer des ornières et des pistes, et si vous revenez en arrière et conduisez sur ces ornières et pistes, vous en ressentirez également l'effet.
Il est également plus difficile de diriger le véhicule si vous avez creusé dans le sol, comme c'est le cas dans la réalité. Conduire sous la pluie sera plus difficile que lorsqu'il fait beau. La configuration de vos pneus a également un effet plus important et vous devrez peut-être déterminer quels pneus sont les mieux adaptés aux différentes saisons et aux différents types de travaux sur le terrain.
Labourer à un autre niveau
Bien que la déformation du sol soit propre aux machines, à leur poids et à d'autres conditions, une activité sur le terrain en particulier sera probablement très différente dans Farming Simulator 25.
Quel type de machines/équipements mettra le mieux en valeur la déformation du sol ?
Le labourage est désormais une expérience nouvelle : la charrue crée de véritables sillons physiques qui sont non seulement plus visibles à l'écran, mais qui influencent également le passage du tracteur. Les machines à chenilles prennent également tout leur sens, car elles peuvent très bien gérer les terrains accidentés.
Performances, visuels et défis !
Quels ont été les défis techniques dans la mise en œuvre de la déformation du sol ?
La déformation du sol fonctionne sur une grille de 12,5 cm, ce qui correspond à 16K x 16K pour une carte de 2 km (soit 256 mégapixels – la carte elle-même ne fait que 4 mégapixels). Le stockage efficace de ces données et leur traitement efficace ont posé plusieurs défis techniques, par exemple lorsque des outils comme des cultivateurs ou des charrues travaillent dans les champs, et lorsque des véhicules roulent sur les champs et réagissent à ces bosses et crêtes à petite échelle.
Il existe également un niveau « procédural » de déformation du sol, qui est mappé avec la géométrie de la même manière que le terrain est mappé en texture avec des images, sauf qu'il s'exécute sur le CPU au lieu du GPU plus rapide, nous avons donc dû optimiser considérablement ce code.
Comment les données de déformation du sol sont-elles stockées et gérées ?
Comme la déformation du sol fonctionne à une résolution plus élevée que celle que nous avons utilisée jusqu'à présent, nous avons voulu économiser de la mémoire dans les zones qui ne sont pas déformées (par exemple sur les montagnes rocheuses ou dans les endroits où le joueur n'est pas encore allé), nous avons donc créé une version « clairsemée » des cartes de densité. Celle-ci stocke les tuiles de données uniquement dans les régions où la déformation existe réellement. De plus, pour réduire encore plus l'empreinte mémoire, les tuiles sont toutes compressées, en utilisant une version plus avancée de la compression de la carte de densité existante que nous avons utilisée dans le passé.
De plus, pour prendre en charge des opérations rapides sur ces données haute résolution, nous avons créé une unité de traitement de cartes de densité (DPU) qui ressemble à un petit émulateur de GPU qui s'exécute sur le processeur et qui est capable d'effectuer des opérations sur les cartes de densité à des vitesses beaucoup plus élevées qu'auparavant. Il peut en fait être programmé à l'aide de notre langage de shader interne, bien que cette fonctionnalité ne soit pas encore utilisée dans FS25.
Pour plus de rapidité, l'ensemble du système (compression des données, opérations DPU et génération procédurale) est écrit à l'aide d'instructions SIMD natives (SSE4.1 ou AVX2 sur PC et consoles, et NEON sur Mac basés sur ARM). Il y a bien plus de code optimisé SIMD dans cette version de Farming Simulator que jamais auparavant.
Parlez-nous de la manière dont vous avez optimisé la physique de la déformation pour les performances.
Dans les versions précédentes de Farming Simulator, la physique personnalisée des véhicules traitait le terrain avec une résolution de 0,5 m. Avec la déformation et le déplacement du terrain, la résolution est désormais de 0,125 m, soit 4 fois plus élevée dans chaque direction, soit 16 fois plus de triangles. Cela a ralenti 16 fois notre détection de collision roue contre terrain, nous avons donc écrit une implémentation personnalisée de cela pour FS25 qui est environ trente fois plus rapide que l'ancien code, donc globalement, la physique de nos véhicules est maintenant environ deux fois plus rapide qu'avant, même avec toutes les nouvelles fonctionnalités.
Le nouveau code de physique impliquait des mathématiques et des analyses numériques assez lourdes – heureusement, j'ai une maîtrise en mathématiques, ce qui m'a beaucoup aidé dans cette tâche !
Comment le jeu gère-t-il les transitions visuelles pour la déformation du sol ?
Une autre nouveauté de FS25 est le maillage quadtree du terrain, qui permet un rendu triangulaire haute résolution à proximité du joueur mais utilise une résolution inférieure plus loin – il n'est pas nécessaire de restituer la géométrie déformée lorsqu'elle se trouve à des centaines de mètres.
La géométrie passe en douceur d'une forme déformée à une forme non déformée à une certaine distance du joueur. Cependant, cette transition est assez bien cachée grâce à une autre nouvelle technologie de FS25, qui est le système de texture virtuelle du terrain.
Bien que la déformation ne soit pas rendue au loin à l'aide de triangles, elle est toujours ombrée et rendue dans la texture du terrain (à l'aide d'une technique graphique appelée normal mapping). La déformation est donc toujours clairement visible, même dans les zones éloignées où le nombre de triangles rendus est très faible, et vous pouvez voir les traces laissées par les véhicules IA même si vous les regardez à un demi-kilomètre de distance !
Qu’est-ce que vous aimez le plus personnellement dans la déformation du sol dans le jeu ?
Ce fut une expérience très enrichissante de mettre en œuvre toutes ces nouvelles technologies, et j’adore le fait que le résultat soit non seulement une meilleure expérience visuelle pour le joueur, mais aussi qu’il interagisse avec la physique et le gameplay de manière si intéressante, faisant de FS25 un « simulateur » beaucoup plus intéressant et réaliste que jamais auparavant !