Page 1 sur 3

Unity Optimizer : Un nouvel outil pour réduire considérablement la taille de ses builds

Publié : 07 Nov 2020 16:50
par Eviral
Salut à tous,

J'ai le plaisir de vous annoncer la sortie de Unity Optimizer, un outil à la fois simple et puissant pour optimiser la taille de ses builds Unity.

2DGameKit.jpg
2DGameKit.jpg (288.37 Kio) Consulté 4075 fois

Point forts :
- Très facile à utiliser !
- UI très visuelle inspirée par Material Design
- Fonctionne avec Unity 2018, 2019 et 2020 pour des projets 2D et 3D
- Fonctionne pour toutes les plateformes cibles (Builds Windows, MacOs, Linux, IOS, Android...)
- 2 types d'analyse de votre projet Unity (analyse basique et analyse en profondeur)
- L'analyse basique inspecte tous les assets(textures, modèles 3D, sons, scènes, prefabs...)
- L'analyse en profondeur inspecte le contenu des images pixel par pixel
- L'asset explorer permet d'avoir de détail de chaque asset (poids, poids dans la build, inclus dans la build, utilisé ou pas, par qui...)
- Synthèse des plus gros assets qui pénalise le poids de la build
- Synthèse des assets inclus dans la build mais pas utilisé (et qui peuvent être supprimés)
- Statistiques de répartition des types d'assets et leur poids respectif dans la build (textures, sons, modèles 3D, scripts...)
- Liste de toutes optimisations que vous pouvez faire pour réduire rapidement le poids de votre build
- Optimisez chaque asset couteux en suivant simplement les recommandations de Unity Optimizer
- Unity Optimizer vérifie une douzaine de points pour optimiser chacun des assets
- Fonctionne très bien à côté de Unity et en temps réel

Outil standalone :
Ouvre et inspecte votre projet en quelques minutes pour remonter toutes les optimisations possibles.
Disponible seulement pour Windows 10 64 bits sur le Windows Store

Version gratuite :
https://www.microsoft.com/store/apps/9PHN9MF0N9NS
ou cherchez "Unity Optimizer Free" dans le Windows Store

Version complète (seulement 9,99 euros)
https://www.microsoft.com/store/apps/9P2FKD6G51CZ
ou cherchez "Unity Optimizer" dans le Windows Store

Egalement disponible sur itch.io
https://eviral.itch.io/unity-optimizer-free
https://eviral.itch.io/unity-optimizer



Performances :
Unity Optimizer a pu optimiser le projet 2DGameKit disponible sur l'asset store en faisant passer la taille de la build Windows x86/x64 de 1,6 GO à environ 120 MO ! (le projet n'était pas du tout optimisé à la base)


La version complète permet :
- d'avoir accès à la liste détaillée de toutes les optimisations qui peuvent être faites
- d'avoir accès au support technique (questions, proposition de fonctionnalités)
- d'avoir accès à toutes les mises à jour (très régulières)

SideBySide.jpg
SideBySide.jpg (294.29 Kio) Consulté 4075 fois

7.png
7.png (190.4 Kio) Consulté 4070 fois


J'espère que Unity Optimizer va vous faire gagner beaucoup de temps et va vous aider à réduire drastiquement le poids final de votre jeu !

Eviral
Montpellier

Re: Unity Optimizer : Un outil gratuit pour réduire considérablement la taille de ses builds

Publié : 07 Nov 2020 19:04
par jmhoubre
Bonjour,

j'ai essayé la version gratuite du store Microsoft, qui m'apprend que j'ai 169 optimisations possibles sur un projet, ou 6 sur une autre. Le logiciel a l'air intéressant, mais difficile de se prononcer.

J'aime bien l'interface, plutôt dépouillée, avec pas mal de choses utiles (tris, recherche, ...).

J'ai mis en gras quelques questions et propositions.

Personnellement, je trouve que le titre du sujet est légèrement exagéré,, puisque la version gratuite ne permet pas d'exploiter les optimisations, mais renvoie sur la version payante. On apprend seulement qu'il y a des optimisations,

Effectivement l'utilisation a l'air simple, mais j'ai l'impression que le travail reste à faire ? Par exemple, sur l'indication qu'une texture utilise le Mipmaps, Optimizer traite-il la texture ?

Ce serait pas mal que la fenêtre sauvegarde au moins son état (maximisée ou pas) quand on quitte ou quand on change de projet (c'est assez crispant en fait, au bout de quelques tests.).

L'ajout du nom du projet analysé dans le titre de la fenêtre est-il envisageable ?

Effectivement, l'analyse en profondeur prend du temps. J'ai même cru au crash, car il n'y a pas de changement de la fenêtre, ni même de barre de progression. C'est un peu étonnant de voir que le % du temps processeur utilisé par le programme reste à 0 pendant des périodes de temps assez longues (5 à 30 secondes).

Des compléments sont-ils proposés dans les autres écrans ? Comme les cas où il ne faut pas effectuer l'optimisation. (J'avoue ne pas connaître suffisamment les Mipmaps pour savoir dans quels cas les conserver).

Sur l'écran, on ne voit que des optimisations liées aux textures. Les scripts sont-ils examinés à la recherche de code mal fichu ou de fonctions déconseillées ?

Une version en français est-elle prévue ? Si oui, pour quand ?

Dans l'écran "About", à quoi sert la fonction "Change Log" ?

J'aurais aimé terminer ce billet, mais je suis curieux de voir l'analyse en profondeur se terminer.

Re: Unity Optimizer : Un outil gratuit pour réduire considérablement la taille de ses builds

Publié : 07 Nov 2020 19:50
par Eviral
Bonjour,

Merci pour tous vos retours.
C'est une première version, si Unity Optimizer trouve son public et intéresse du monde alors je ferai tout plein d'évolutions.
C'est vrai que seule la version payante apporte la liste des optimisations possibles à la fin, il faut bien une différence entre la gratuite et la payante.
Mon objectif n'est pas de m'enrichir, juste de pouvoir financer mon projet perso The Bloodian Chronicles sur lequel je travaille depuis plusieurs années.
Unity Optimizer m'a bien aidé pour optimiser la taille de la build de Bloodian Chronicles.
Avec le petit peu d'argent récolté j'espère pouvoir m'acheter quelques assets de qualité, ça me ferait gagner un temps précieux.

Si vous voulez jeter un coup d'œil à mon projet :
http://www.bloodianchronicles.com

Pour vous remercier de vos retours constructifs, je vous propose de vous offrir la version full.
Envoyez moi votre mail à eviralsoftware@outlook.com.

Vos retours et avis vont m'aider à améliorer Unity Optimizer.
J'aimerai vraiment en faire à terme un super outil incontournable !

Eviral

Re: Unity Optimizer : Un outil gratuit pour réduire considérablement la taille de ses builds

Publié : 07 Nov 2020 20:03
par Max
Arf, L'Arche du Captain Blood, j'en ai passé du temps sur mon Atari à l'époque (nostalgie, nostalgie...)
N'hésite pas à ouvrir un sujet sur ce projet en complément, tu attireras certainement aussi pas mal de réactions intéressées ;)

Re: Unity Optimizer : Un outil gratuit pour réduire considérablement la taille de ses builds

Publié : 07 Nov 2020 20:40
par Eviral
Ok, Max, tu as raison, je vais ouvrir un autre post sur Bloodian Chronicles.
Merci du conseil :)

Re: Unity Optimizer : Un outil gratuit pour réduire considérablement la taille de ses builds

Publié : 12 Nov 2020 12:19
par chsxf
Salut,

Je vois que nous sommes tous les deux à Montpellier.

J'ai essayé la version gratuite sur notre projet (Crying Suns, en 2018.4) et j'ai noté quelques soucis.
Déjà, il parcourt le dossier .git ce qui est inutile.
Je ne suis pas non plus certain que parcourir tous les dossiers en dehors du dossier Assets soit pertinent. Assets et ProjectSettings devraient suffire je pense. Peut-être les packages aussi éventuellement.

Autre point, il semblerait qu'il ne fonctionne pas bien sur les ressources.
Nous chargeons certains fichiers par leur nom et ils sont marqués comme non utilisés alors qu'ils le sont bien.
Il faudrait envisager un traitement particulier des resources à mon sens.

Outil intéressant en tout cas.

Re: Unity Optimizer : Un outil gratuit pour réduire considérablement la taille de ses builds

Publié : 12 Nov 2020 13:57
par chsxf
Autre sujet : as-tu un repo de ce projet ? Je suppose que non vu qu'il y a une version commerciale, mais ça pourrait m'intéresser d'en faire une version mac. A priori, rien ne l'empêche.

Re: Unity Optimizer : Un outil gratuit pour réduire considérablement la taille de ses builds

Publié : 12 Nov 2020 19:34
par Eviral
Salut Chsfx de Montpellier !

Tu as raison, j'exclus déjà tout un tas de sous dossiers comme :
library, obj, build, builds, projectsettings, packages, .vscode, .vs, logs, temp.
Je vais rajouter .git en effet. Très bonne remarque.
>>> Autre point, il semblerait qu'il ne fonctionne pas bien sur les ressources.
>>> Nous chargeons certains fichiers par leur nom et ils sont marqués comme non utilisés alors qu'ils le sont bien.
Tu as raison, je ne parse pas encore les scripts c# pour essayer de détecter les Resource.Load qui loadent des resources par code.
Je vais le rajouter à ma TODO list et le faire rapidement.

Tu as tout juste, chapeau :)

a+

Eviral

Re: Unity Optimizer : Un outil gratuit pour réduire considérablement la taille de ses builds

Publié : 12 Nov 2020 19:51
par Eviral
Concernant la version Mac, j'ai bien un repo mais il est privé.
Unity Optimizer est fait en C# en .net Core 3.1 et WPF.
Toute la partie core (logique métier) est portable sur MacOs et Linux (.net Core est portable) mais pas la partie UI (WPF reste Windows only à ce jour).
J'envisage d'utiliser Avalonia UI d'ici quelques temps pour rendre portable la partie UI.
J'attends qu'une version finale d'Avalonia UI sorte et j'attends aussi de voir si ça vaut le coup de porter sur MacOS et Linux.
a+
Eviral

Re: Unity Optimizer : Un outil gratuit pour réduire considérablement la taille de ses builds

Publié : 12 Nov 2020 19:54
par chsxf
Merci de ton retour.

Un autre point que j'ai noté, c'est que tu accordes une importance considérable à la compression. Cependant, cela ne tient pas compte de l'impact que peut avoir la compression sur les performances. Donc oui, dans la pratique, cela peut considérablement réduire le poids mais cela n'est pas "gratuit" pour autant, notamment sur mobile.

Concernant un portage Linux, il est assez difficile de se prononcer parce que les chiffres ne sont pas communiqués par unity sur l'utilisation qui est faite de l'éditeur dans ce contexte. Donc, c'est un choix personnel à faire je dirais.

Et en ce qui concerne la partie macOS, étant utilisateur mac et en cotoyant beaucoup, je suis biaisé donc je m'abstiendrais de commenter.