Star Citizen Ile Avalon Pilot Logbook
Carnet de Vol d'un Citoyen de l'Espace

Nouveau Système de Dommages

Comme certains d'entre vous l'ont peut-être vu lors des dernières mises à jour mensuelles de Around the Verse ou de Foundry 42, nous travaillons sans relâche depuis un certain temps pour améliorer le système de traitement des avaries des vaisseaux. Nous avons déjà montré à Arena Commander notre système très puissant et flexible pour contrôler les dommages sur vos vaisseaux. Ce système, associé à des illustrations exceptionnelles, donne des résultats remarquables. Mais vos vaisseaux font tellement partie de l’univers de Star Citizen que nous avons senti que nous devions franchir plusieurs étapes.

Nous avons donc examiné de fond en comble notre système de dommages afin de déterminer ce que nous pouvions améliorer. Bien que nous ayons une grande satisfaction à retirer chaque partie d’un vaisseau ennemi lorsqu’ils subissent des dommages importants, nous pensions pouvoir mieux représenter l’emplacement et le type de dommages infligés au vaisseau. Qu'il s'agisse d'une arme à projectile, d'une arme à énergie, d'une explosion ou de griffer votre vaisseau après un atterrissage raté, nous souhaitons que vous soyez en mesure de les différencier simplement en regardant votre vaisseau. Nous pensions que cela serait particulièrement important dans notre jeu, car nous souhaitons que chaque vaisseau raconte une histoire de ce qui a été vécu.

Deux autres domaines que nous voulions améliorer étaient le temps nécessaire à notre artiste pour créer les nombreux états de dommages pour chaque partie du vaisseau et le coût en mémoire important de ces mailles, ce qui pourrait s'avérer être un problème si nous augmentons le Jeu. La raison pour laquelle les états de dommages sont si intensifs en travail est que chaque vaisseau comporte plus de dix pièces principales. Chacune de ces opérations nécessite cinq états de dommages pour représenter les différents niveaux de dommages, puis chacune d’elles nécessite jusqu’à cinq mailles simplifiées que nous utilisons quand elles sont affichées plus loin de la caméra pour améliorer les performances. Cela équivaut à plus de 200 mailles par vaisseau !

Lorsque vous examinez les états de dégâts actuels dans Arena Commander, vous remarquerez que les deux premiers états de dégâts ont tendance à ne contenir que des bosselures mineures, des dégâts de brûlure et peut-être quelques panneaux qui ont été détruits, exposant ainsi certains éléments internes. Ce n'est que lorsque vous atteignez les niveaux de dommages de 75% et 100% que vous commencez à voir des modifications majeures de la silhouette, mais les états de dommages précédents ont toujours le même coût en mémoire. Notre objectif était donc d’essayer d’atteindre les dommages mineurs sans avoir à créer de nouveaux maillages, économisant à la fois de la mémoire et du temps d’artiste. Pour ce faire, nous avons décidé d’enregistrer les impacts sur le vaisseau dans un ensemble supplémentaire de textures qui recouvrent tout le vaisseau, puis de les utiliser dans les shaders pour ajouter dynamiquement les bosselures et brûler précisément à l’endroit où votre vaisseau a subi les dommages. Cependant, plutôt que de simplement choisir de mélanger une texture simplement endommagée dans ces zones, nous avons plutôt choisi de modéliser le type de dommage de manière beaucoup plus précise en enregistrant quatre quantités différentes :

  • Température
    La température actuelle de la coque

  • Brûler
    La température maximale avec laquelle la coque a été brûlée

  • Épaisseur
    Combien reste-t-il de la coque extérieure ?
    La peinture s'enlève en premier, puis le métal sous-jacent

  • Déformation
    Quelle force physique a pris la coque pour la plier et la déformer.

En utilisant ces quatre valeurs de dommage, nous pouvons faire briller la coque avec la chaleur, créer des brûlures et des bulles de peinture, décoller la peinture pour exposer le métal sous-jacent, tordre et déformer la surface, et même percer des trous dans la coque pour exposer le câblage interne et la mécanique. Plutôt que de modéliser les éléments internes du vaisseau dans des emplacements spécifiques, nous modélisons maintenant les éléments internes sous la grande majorité de la coque. Vous pourriez vous attendre à ce que cela implique beaucoup de travail pour les artistes, mais ils ont mis au point plusieurs méthodes pour ajouter ces éléments internes de manière très efficace et la configuration globale de l'état des dommages est désormais bien plus rapide qu'auparavant.

La vie de votre vaisseau

Ce qui est vraiment intéressant si nous avons accès à quatre types de dégâts différents, c’est que ceux-ci peuvent être imprimés sur votre vaisseau avec une structure et une force propre à chaque arme, explosif ou type d’impact. Ainsi, alors que les lasers allumeront votre coque pendant plusieurs secondes, laissant de la peinture brûlée et du métal exposé, une balistique puissante pourrait percer un trou droit dans votre coque. Nous ne faisons qu’explorer à quel point ce système peut aller jusqu’à présent et nous prévoyons d’améliorer prochainement le code des armes / munitions afin d’exposer davantage de comportements de dommages uniques et réalistes sur le plan physique.

Nous avons testé cette technologie sur le Gladius et vous constaterez vous-même dans la version 1.1.0 que les résultats sont excellents. Ce que vous ne voyez peut-être pas, c’est que le Gladius utilise quatre fois moins de mémoire que les autres vaisseaux, ce qui équivaut à de meilleures performances pour les contributeurs. Nos artistes sont heureux car cela leur permettra de faire des vaisseaux plus rapidement, ce qui vous donnera finalement ce jeu plus tôt ! Vous serez également heureux de savoir que nous installerons cette technologie sur chaque nouveau vaisseau et que nous moderniserons également les vaisseaux les plus anciens au fur et à mesure.

Nouveaux outils

Des technologies supplémentaires devaient être développées pour placer nos effets de particules et de pétards afin de compléter l'aspect de notre nouveau pipeline de dommages. Lorsqu'une pièce, telle qu'une aile, se détache du vaisseau, les pétards et les particules détonent le long du bord de la séparation. Lorsqu’ils sont détonés, les pétards font apparaître des trous et des brûlures sur la peau du vaisseau, révélant ainsi les « entrailles » du vaisseau, de sorte que le morceau du vaisseau a l’air d’être arraché du corps. Des particules se détachent également lorsque des morceaux se détachent du vaisseau, créant une fumée dramatique, des explosions et des étincelles. Un outil d’art spécialisé, développé par Matt Intrieri, a été créé pour convertir des objets auxiliaires de 3DSMax en code XML afin d’ajouter l’effet dans le jeu. Mike Snowdon, l’artiste effets de CIG, a utilisé cet outil pour ajouter les particules et les pétards au vaisseau le long des bords de chaque partie du vaisseau, créant des effets dynamiques et réalistes basés sur les systèmes du vaisseau à chaque emplacement.

Prochaines étapes

Mais ce n'est pas la fin de la route pour cette technologie, il y a encore plusieurs fonctionnalités majeures sur lesquelles nous travaillons. Parmi eux, les effets de particules créés, simulés et entièrement restitués sur le processeur graphique, ce qui leur confère deux avantages considérables. Le premier est la performance : nous pouvons générer 10 à 100 fois plus de particules de GPU que de particules de CPU pour le même coût. L’autre avantage est qu’ils correspondent parfaitement aux dommages précis que vous avez subis. Ainsi, lorsque la coque brûle, vous aurez des braises ardentes qui tombent, lorsque vous subissez des dégâts physiques, vous verrez des éclats de métal s'envoler et Soufflez sur une grande partie de la coque pour voir l’espace jonché de débris. Nous travaillons également sur quelques optimisations majeures utilisant le système de gestion des dommages en utilisant les fonctionnalités de DirectX 11 pour s’assurer qu’il fonctionnera encore rapidement lorsqu’une vingtaine de chasseurs attaqueront un vaisseau capital !

La première chose que nous avons faite lorsque ce système a fonctionné a été de nous amuser et d'écrire nos noms sur un vaisseau avec un canon Gatling ! Maintenant, c'est à votre tour de jouer et nous avons hâte d'entendre ce que vous pensez de cette nouvelle technologie, n'hésitez donc pas à nous le faire savoir sur les forums.

Star Citizen - New Damage Model

L'avenir

Avec notre nouvelle technologie de dommages maintenant en place, nous continuons à rechercher des méthodes encore plus réalistes et efficaces pour améliorer nos graphiques dans tous les domaines. Nous allons ajouter d'autres effets sous la peau du vaisseau à mesure que des trous béants se révèlent, en ajoutant des touches telles que des étincelles sur du matériel endommagé sous la peau. Plusieurs configurations d'éclairage et de particules sont en cours de prototypage afin de faire passer l'intérieur des vaisseaux à travers les états Sain, Endommagé, Critique et Flatline qui informeront et immergeront nos joueurs pendant les combats. Notre nouvelle machine d'état en cours de développement, appelée GOST, déterminera le flux d'énergie sain (ou malsain) autour des systèmes de vaisseaux et aura un impact important sur nos interactions multi-équipages et l'effet des dommages causés aux vaisseaux. Compte tenu de la complexité de nos plus gros vaisseaux, qui ressemblent vraiment à des niveaux flottants, il reste de grandes questions sur les brèches de coque et sur la manière de décrire les dommages critiques dans le vide de l'espace et sur les conséquences pour les joueurs à l'intérieur. Et les optimisations dans tous les domaines nous permettront d’ajouter de plus en plus de joueurs simultanément pour créer d’énormes batailles multijoueurs. Nous sommes très heureux et excités de publier cette première version de notre technologie de dommages nouvellement optimisée et espérons que les joueurs ressentent la même chose.

Notes et Références

Dernière mise à jour : 28/06/2020