
Vous voulez juste exécuter l'outil à l'aide d'un binaire pré-compilé?
Télécharger Unity Size Explorer
Tout en développant un tublostone pour les appareils mobiles, j'avais besoin de réduire considérablement la quantité d'espace disque nécessaire. Pour iOS en particulier, les jeux doivent être à 100 Mo ou en dessous. Les joueurs doivent être sur le WiFi pour télécharger des jeux supérieurs à 100 Mo - au départ, TumbleStone avait plus de 1 Go! J'ai développé cet outil pour aider à réduire le tubelle de 1 Go à 100 Mo.
Normalement, vous pouvez afficher le journal de l'éditeur Unity après la construction pour voir certaines statistiques sur la taille d'un fichier d'un jeu. Voici à quoi ça ressemble:
Textures 33.1 mb 54.1%
Meshes 0.0 kb 0.0%
Animations 0.0 kb 0.0%
Sounds 8.3 mb 13.6%
Shaders 172.8 kb 0.3%
Other Assets 8.2 mb 13.4%
Levels 82.1 kb 0.1%
Scripts 4.7 mb 7.7%
Included DLLs 6.4 mb 10.5%
File headers 201.5 kb 0.3%
Complete size 61.3 mb 100.0%
Used Assets and files from the Resources folder, sorted by uncompressed size:
2.1 mb 3.4% Assets/Spritesheets/v2/Spritesheet1.png
2.1 mb 3.4% Assets/Spritesheets/v2/Spritesheet2.png
2.0 mb 3.3% Assets/Spritesheets/v2/Spritesheet3.png
2.0 mb 3.3% Assets/Spritesheets/v2/Spritesheet4.png
// list continues for every file included in the game
C'est très utile. Il vous indique la taille de votre jeu et décompose les choses par des catégories de haut niveau. Vous pouvez même parcourir la liste des actifs qui suit pour trouver les pires délinquants. Lorsque vous commencez pour la première fois à optimiser la taille des fichiers, cela est suffisant car, les fichiers les plus importants (répertoriés en haut) peuvent être optimisés pour donner de grandes améliorations.
Cependant, dans la quête pour s'adapter à moins de 100 Mb, j'ai atteint un point où la liste des fichiers n'était plus très utile. C'est parce qu'il n'y avait plus un ou deux gros fichiers à optimiser. Tout ce qui n'est pas essentiel était déjà assez petit, et si je voulais me découper de 10 ou 15 Mo Le fichier journal d'Unity, qui répertorie chaque fichier trié par taille, rend très difficile de voir la situation dans son ensemble.
D'autres choses aggravantes sont le fait que l'unité ne génère ce qui précède après la construction. Dans mon cas, le bâtiment pour iOS a souvent pris 5 à 10 minutes. Cela signifiait que mon flux de travail a été tiré pendant que j'ai apporté un changement, construit, puis comparé les fichiers journaux anciens et nouveaux. Parfois, les résultats ont fonctionné comme prévu et je pouvais continuer. D'autres fois, les changements ont eu un impact plus faible et ont été jetés. J'avais besoin d'un moyen d'évaluer plus rapidement et avec précision quel impact sur une optimisation sans avoir à passer 10 minutes par itération.
C'est là que cet outil entre en jeu. Il lit le fichier journal et génère une vue d'arbre et un graphique à tarte. L'arborescence répertorie chaque fichier groupé par dossier - tout comme dans le système de fichiers. Vous pouvez étendre ou effondrer les dossiers pour afficher les sous-repliants et les fichiers. Vous pouvez vérifier ou désactiver un fichier ou un dossier donné, à l'exclusion de la taille correspondante de la taille du fichier de jeu prévu. De plus, il y a un joli graphique à secteurs visuellement montrant combien d'espace tout utilise par rapport au reste du projet.
Avez-vous des demandes de fonctionnalités, des questions ou souhaitez-vous signaler un bogue? Veuillez les publier sur la liste des problèmes.
Comme ce projet est maintenu par une seule personne, je ne peux pas corriger chaque bogue ou implémenter chaque fonctionnalité par moi-même. Les contributions sont donc vraiment appréciées!
Une bonne façon de commencer:
Unity Size Explorer est un logiciel open source, sous licence de licence MIT. Voir Licence.txt pour plus de détails.
Unity Size Explorer est un programme WPF écrit pour Windows. Il nécessite .NET 4.5.2. Utilisez Visual Studio et ouvrez le fichier de solution sous Source . Vous devrez peut-être restaurer les packages NuGet lors de la première exécution.