2017-02-02 1 views
0

Je suis dans un besoin sérieux d'optimisation de mes projets Unity et j'ai tellement d'objets qui sont de 3DsMax, donc je me demande si Combinaison des mailles aurait un effet sur la mémoire/performance ou je devrais laisser les objets Instance les uns aux autres car cela me ferait économiser un peu d'espace.Dans l'union des mailles Vs Instance objets la différence

Ce poser la question quelle est la différence entre objets de maillage combinés ou emple car il permettra d'économiser beaucoup de mémoire et sans tracas si l'on connaît vraiment la différence et ce qui est mieux

Perspectives d'avenir pour certains de brèves informations sur les deux

Merci

+1

Il améliore les performances ** un lot ** en réduisant les appels tirage. Il y a des inconvénients cependant. S'il vous plaît voir [this] (http://answers.unity3d.com/questions/179017/reducing-drawcalls-many-prefabs-vs-combined-mesh.html) pour une explication complète. – Programmer

+0

J'aime beaucoup votre lien et cela explique beaucoup merci mais ma question est toujours sans réponse la différence entre eux et une brève explication –

+0

Votre première étape devrait effectivement être d'identifier si la quantité de mailles que vous avez est en fait le principal coupable derrière votre performance problèmes. Avez-vous revu le Unity Profiler pour confirmer vos soupçons à ce sujet? Vous ne voulez pas passer beaucoup de temps à enquêter sur un angle qui se révèle être un hareng rouge tout au long. – Serlite

Répondre

1

la combinaison est utile si vous avez beaucoup d'atouts uniques qui apparaissent une seule fois ou deux fois dans une scène, par exemple des bâtiments uniques dans un FPS en 3D, mais pas cloné maisons dans un SimCity jeu de style. Si vous avez un modèle qui apparaît plusieurs fois dans une scène, il est plus performant d'avoir Unity (automatiquement) batch them, c'est le comportement par défaut d'Unity. Par exemple, disons que votre scène se trouve dans une galerie d'art; Si la galerie contient une douzaine de sculptures distinctes, combinez-les. Si elle contient une douzaine de la même sculpture ne dérange pas, Unity will batch them for you. Cependant, vous devez vous méfier de l'utilisation de different materials, chaque matériau s'ajoutant au nombre de tirages. Donc, si vous avez 10 du même modèle mais que vous utilisez 5 matériaux différents, cela va coûter cher. La solution consiste à utiliser un atlas de texture avec un seul matériau, avec une cartographie UV différente pour chaque modèle. Cela signifie que vous avez beaucoup de modèles différents, mais économisez sur le temps de rendu en raison du matériau unique. De plus, sachez que les shaders transparents sont beaucoup plus chers que les opaques, si vous avez trois objets semi-transparents l'un devant l'autre, soit au moins 4 passes de rendu.

Comme vous le savez probablement, il s'agit d'un sujet complexe avec beaucoup de variables (beaucoup plus que je ne peux décrire ici) et est mieux jugé en utilisant le profileur.

Voici quelques règles générales de base que je l'ai appris tout en créant un jeu pour mobile qui est naturellement la performance critique:

  • Utilisez aussi peu que possible un matériel
  • Utilisation comme moins textures que possible, partager des textures entre les matériaux
  • Recyclez les modèles aussi souvent que possible. Souvent, un modèle orienté à un angle différent ou dans un matériau différent peut ressembler à un tout nouveau modèle pour le joueur, surtout si leur attention est ailleurs dans le jeu
  • Utilisez LODS largement
  • Assurez-vous que les modèles sont propres, enlever tous les Après l'importation, pensez à savoir s'il y a quoi que ce soit sur le modèle qui pourrait être représenté avec moins de sommets
  • Une bonne utilisation de la cartographie normale peut être payante, selon la plate-forme. Si vous pouvez échanger 1000 verts pour une carte normale de 256 px et 50 verts alors faites-le, sinon ne dérangez pas la cartographie normale juste pour économiser quelques verts
+0

Nice ... Merci ... Mais j'ai une chose dans mon esprit que si je combine des textures disons de faire atlas alors comment vais-je garder un œil sur la qualité visuelle, il est difficile de faire un atlas et j'espère que la qualité sera la même? –

+0

Il n'y a aucune différence de qualité, à condition de ne rien redimensionner. Atlas ne veut pas dire plus petit - c'est juste un gros fichier au lieu de beaucoup de gros fichiers. http://www.gamasutra.com/view/feature/2530/practical_texture_atlases.php?print=1 – Absinthe