Optimiser votre expérience est le processus de configuration de vos ressources et paramètres de Studio pour maintenir votre cadence de frame et vos niveaux de performance élevés pour les appareils souffrant de limitations de mémoire et de traitement graphique (GPU).Ce processus garantit que presque chaque utilisateur a la même expérience de jeu et visuelle tout en visionnant votre environnement.
En utilisant le fichier Art environnemental - Optimisation.rbxl comme référence, cette section du cursus d'art environnemental vous montre comment revoir et configurer votre fichier de lieu pour des graphiques optimaux, y compris des conseils sur :
- Examen des paramètres physiques et de rendu de chaque ressource pour confirmer qu'ils préservent la mémoire et les performances du moteur.
- Élimination des textures, géométries ou transparences excessives qui augmentent inutilement le nombre de calculs que le moteur Roblox doit effectuer pour rendre vos ressources.
Bien que le moteur Roblox gère la plupart du travail d'optimisation pour vous, vous pouvez aider dans ces efforts d'optimisation en utilisant le Microprofiler pour voir où il faut plus de temps pour rendre des cadres spécifiques.En utilisant ces informations, vous pouvez prendre des décisions éclairées sur les ressources qui nécessitent votre attention en ce qui concerne leurs paramètres ou leur contenu excessif.

Revoir la physique et les paramètres de rendu
Dans Assembler une bibliothèque de ressources, vous avez appris à quel point il est important de définir des paramètres de physique et de rendu qui permettent à vos ressources de conserver leur qualité visuelle élevée sur les appareils souffrant de limitations de mémoire et de GPU.Cependant, il est courant de construire votre environnement pour ajuster ces paramètres en fonction de la position contextuelle et du but d'une contenudans votre expérience.Par exemple, une grande partie du feuillage dans l'environnement de balise laser final projette des ombres malgré un coût de performance car il ajoute au réalisme de l'environnement.
Lorsque vous modifiez les paramètres de physique et de rendu, il est utile à la fin du processus de développement de revoir tous les paramètres pour voir où vous pouvez optimiser un paramètre tout en maintenant les objectifs esthétiques et les exigences de jeu.Pour illustrer, vous pouvez désactiver la propriété BasePart.CastShadow pour le feuillage près des bords de la zone de jeu pour économiser sur les performances sans interférer avec l'expérience de jeu ou visuelle d'un utilisateur.


Éliminer le contenu non essentiel
Après avoir examiné vos paramètres de physique et de rendu, vous pouvez examiner les ressources elles-mêmes pour voir où vous pouvez éliminer tout contenu non essentiel de l'expérience qui n'affecte pas votre partie, telles que des textures identiques avec différents ID, une géométrie complexe avec un grand nombre de sommets ou des transparences qui se superposent les unes sur les autres en fonction de la vue de la caméra.Les sections suivantes détaillent ce que vous pouvez faire pour revoir ce contenu et pourquoi cela aide aux efforts d'optimisation.
Supprimer les textures en double
Pendant que vous migrez entre le développement de vos ressources et la construction de votre environnement, il est courant d'itérer sur des mailles ou des textures lorsque vous trouvez ce qui est nécessaire pour vos objectifs esthétiques ou les exigences de jeu.Si vous ne convertissez pas vos ressources en packages, lorsque vous importez ces itérations dans Studio, vous créez des ressources uniques que le moteur Roblox doit référencer lorsqu'il rend vos ressources dans l'environnement.
Par exemple, si vous importez les deux mailles de bouche d'incendie suivantes dans Studio séparément, même si elles sont identiques en apparence, le moteur Roblox les traite comme deux objets avec des identifiants de ressources uniques.Plus les appels sont uniques, plus l'impact sur la mémoire et les performances est important.Pour cette raison, il est important de confirmer lorsque vous réutilisez une ressource plusieurs fois, chaque instance de cette ressource utilise le même ID de ressource afin que le moteur n'ait besoin que d'une seule appel pour le rendre à nouveau plusieurs fois.

Optimiser la géométrie
Si vous trouvez que vous devez faire plus d'ajustements pour augmenter le taux de cadence sur les appareils, il est utile de voir où vous pouvez optimiser votre géométrie en :
- Combiner des groupes de mailles en une seule contenu.
- Réduire le nombre de polygones des ressources avec une complexité géométrique.
En s'appuyant sur cette première technique, chaque ressource unique dans votre expérience représente un appel de dessin sur la GPU dans laquelle elle envoie un signal à la GPU pour appeler des informations afin que le moteur Roblox rende correctement la ressource.Plus les ressources uniques que vous avez sont uniques, plus les appels de tirage que le système doit faire sont nombreux.Pour cette raison, si vous avez un groupe de mailles qui constituent une composante plus importante dans votre expérience, vous pouvez les regrouper dans des outils de modélisation tiers pour réduire le besoin de plusieurs appels de dessin.
Pour illustrer ce point, les parents de l'environnement de balise laser final combinent plusieurs parties et des mailles ensemble pour créer les grands tours en dehors du construction.Si vous deviez combiner tous ces composants individuels ensemble, vous pourriez en faire une seule ressource avec un seul ID de ressource et réduire le nombre d'appels de dessin de 8 à 1.Cependant, il est important de noter que cette technique supprime votre capacité de modifier librement les caractéristiques visuelles et physiques de chaque composant, telles que sa position ou son matériau.
Par exemple, dans l'image suivante, la tour de gauche reste plusieurs ressources sous un objet Model et la tour de droite est une contenuunique.Vous pouvez modifier chacun des composants de la tour de gauche individuellement, mais lorsque vous modifiez la tour de droite, comme changer sa couleur en noir, cela affecte l'ensemble de l'objet.C'est pourquoi il est important de ne prendre en compte cette technique qu'à la fin du développement de votre environnement lorsque vous savez où vous pouvez améliorer les performances sans affecter vos objectifs esthétiques.

En s'étendant sur la deuxième technique, les ressources avec une complexité géométrique ont plus de polygones, ce qui signifie qu'elles ont plus de sommets que l'engine doit calculer lorsqu'il rend leur apparence visuelle.Cela signifie que les ressources avec moins de complexité et de fidélité sont moins coûteuses à rendu, ce qui entraîne une amélioration des performances et de la mémoire.
Supprimer les transparences superposées
Pour fournir un sentiment de réalisme à l'environnement, l'environnement de balise laser final inclut de nombreux maillages avec différents niveaux de transparence, tels que le feuillage dans l'espace extérieur, le verre sur le panneau futuriste ou la rampe de rambarde.Lorsque la caméra voit plusieurs objets semi-transparents qui sont devant ou derrière l'un l'autre, le moteur Roblox doit rendre les pixels superposés plusieurs fois pour tenir compte des zones transparentes.Ce processus s'appelle surérection de transparence élevée et il a un impact important sur les performances.
Par exemple, envisagez la vue suivante d'un planteur dans l'environnement d'échantillon.Le moteur doit rendre les zones transparentes des feuilles entre la plante la plus proche de la caméra à la plante la plus proche de la zone extérieure en couches, équivalant à des centaines de milliers de pixels surchargés.Pour atténuer une partie de cet impact, il est important de revoir la disposition de tous les objets semi-transparents dans votre environnement et de vous assurer qu'il n'y a pas trop de lieux où il y a beaucoup de chevauchements, notamment dans de grandes zones de l'écran.


Lorsque vous avez terminé la révision de tout votre contenu pour vous assurer qu'il est optimal sur tous les appareils, votre expérience est désormais prête à la publication !