Prefab Fusion
Un outil pour l'éditeur Unity qui restructure les prefabs : les parties copiées-collées deviennent un seul prefab imbriqué, les quasi-copies deviennent des variantes, en gardant chaque valeur et chaque référence.
Bientôt sur l'Unity Asset Store.
Ce que fait l'outil
Extraire en prefab imbriqué
Choisissez une partie d'un prefab. Prefab Fusion retrouve la même partie dans vos autres prefabs et fait de chaque copie une instance d'un seul nouveau prefab. Chaque copie garde ses propres valeurs en overrides, et les références des scènes, des prefabs et des assets suivent.
Faire une variante, sur place
Transformez un prefab existant en variante d'un autre. Il garde son chemin et son GUID, seules ses différences deviennent des overrides, et tout ce qui l'utilise continue de fonctionner.
Trouver quoi restructurer
Un scan liste les blocs répétés entre vos prefabs, et les paires de prefabs qui devraient être des variantes.
Aperçu, vérification, annulation
Un aperçu avant tout changement, une alerte sur les fichiers aux modifications git non commitées, la vérification de chaque valeur après chaque restructuration, et l'annulation des dix dernières.
En images
Aussi dans le paquet
Exportez un prefab en JSON lisible, modifiez-le, et reconstruisez le prefab sur place. Générez des scripts C# qui reconstruisent un prefab par le code. Faites un rendu PNG d'un prefab. Lancez chaque commande en mode batch ou depuis l'éditeur ouvert, pour les scripts, la CI et les agents de code IA.
Configuration requise
- Unity 2022.3 LTS ou plus récent. Testé sous Windows avec 2022.3, 6.0, 6.3, 6.4, 6.5 et 6.6.
- Le paquet Unity UI (uGUI), et TextMeshPro sur 2022.3.
- Des assets sérialisés en texte (Force Text, le réglage par défaut d'Unity), pour que les références puissent suivre.
- Uniquement dans l'éditeur : rien ne part dans vos builds. Prefab Fusion n'envoie rien nulle part : il lit et écrit seulement les fichiers de votre projet.
- L'interface et le manuel sont en anglais.
Support
Le manuel est livré avec le paquet, dans Documentation/. Pour tout le reste, écrivez-moi :
Pour m'aider à reproduire un problème, indiquez si possible :
- votre version d'Unity et votre pipeline de rendu ;
- la version de Prefab Fusion (en haut de
CHANGELOG.md) ; - ce que vous avez fait, ce que vous attendiez, et ce qui s'est passé ;
- le rapport ou les messages de la console (les commandes les écrivent aussi dans
PrefabFusion/_pending_log.txt) ; - si vous le pouvez, un petit prefab qui montre le problème.