Library Overrides (Remplacement de Librairie)

Library Overrides is a system designed to replace and supersede Proxies. Most types of linked data-blocks can be overridden, and the properties of those overrides can then be edited. When the library data changes, unmodified properties of the overridden one will be updated accordingly.

Note

The old proxy system has been deprecated in Blender 3.0, and will be fully removed in Blender 3.1. Automatic conversion from proxies to library overrides happens by default when loading a blend-file, but results on complex characters are not guaranteed and may need manual fixes.

Les Library Overrides prennent en charge:

  • Plusieurs remplacements indépendants d’une même donnée liée (par exemple, un personnage complet).

  • Ajout de nouveaux modificateurs et contraintes, n’importe où dans la pile.

  • Chaînage récursif des remplacements (c’est-à-dire remplacements de lien et de remplacement à partir d’un autre fichier de bibliothèque, etc.).

Note

Il y a des problèmes connus qui doivent être résolus. Voir la tâche principale du projet Phabricator, pour plus de détails.

Créer un Remplacement

Référence

Éditeur

Fenêtre 3D et Outliner

Mode

Mode Objet

Menu

3D Viewport ‣ Header ‣ Object ‣ Relations ‣ Make Override Library Outliner ‣ Context Menu ‣ ID Data ‣ Make Library Override Hierarchy Outliner ‣ Context Menu ‣ ID Data ‣ Make Library Override

Il existe deux façons de créer un remplacement d’un bloc de données lié.

Remplacement d’un Bloc de Données unique

Vous pouvez remplacer un seul bloc de données à deux endroits :

  • L”Outliner (il se trouve dans le menu contextuel des IDs), auquel cas toutes les utilisations locales de cet ID lié seront remappées vers le nouveau remplacement local.

  • Le menu du bloc de données dans l’interface utilisateur (Maj-LMB sur l’icône de chaîne à droite), auquel cas seule cette utilisation spécifique sera remappée au nouveau remplacement local.

Make Library Override Operator/Make Library Override Hierarchy

This operator goes over linked objects or local empties instantiating a linked collection (typically, a linked character).

L’opérateur parcourra toute la hiérarchie des collections et des objets, et remplacera tous ceux nécessaires pour permettre la pose/animation d’un personnage.

Note

La mise en page appropriée des Collections est importante

For this operator to work properly, it is crucial that all the collections needed by the character are children of the root (linked and instantiated) one. Otherwise, some won’t be automatically overridden, and manual work will be needed to fix the override.

Converting Proxies to Library Override

Référence

Éditeur

Fenêtre 3D et Outliner

Mode

Mode Objet

Menu

3D Viewport ‣ Header ‣ Object ‣ Relations ‣ Convert Proxy to Library Override Outliner ‣ ID Data ‣ Convert Proxy to Library Override

Converts a Proxy to a local override. This operator is used to help convert older blend-files to the new override system.

Remplacements de resynchronisation

The relationships between linked data-blocks can be changed resulting in outdated overrides. When this happens overrides need to be resynced to match the new structure. Overrides are automatically resynced when opening blend-files, however, overrides can be resynced manually using Resync Library Override Hierarchy.

Astuce

Blender est également capable de resynchroniser les remplacements de bibliothèque à partir de bibliothèques externes, qui sont ensuite liées dans un fichier de travail. Cependant, il s’agit d’un processus coûteux qui doit être entièrement refait à chaque fois que le fichier de travail est chargé, car Blender ne peut pas éditer/modifier directement la bibliothèque externe.

Ainsi, les utilisateurs liant des remplacements (ou créant des remplacements récursifs) doivent s’assurer que leurs fichiers de bibliothèque sont régulièrement mis à jour, pour éviter cette surcharge lors du chargement des fichiers (généralement, l’ouverture et l’enregistrement de ces fichiers de bibliothèque devraient suffire pour les mettre à jour).

Astuce

La resynchronisation automatique peut être désactivée dans les Préférences Expérimentales.

Modifier un Remplacement

Essentiellement, un remplacement est édité de la même manière qu’un bloc de données local normal. Vous pouvez utiliser des opérateurs dessus, éditer leurs propriétés à partir de divers éditeurs, etc. Il existe cependant certaines limitations, notamment le mode d’édition n’est pas autorisé pour les remplacements. Dans la plupart des cas, dès que vous modifiez une propriété, vous pouvez voir qu’elle est remplacée par son contour/arrière-plan bleu sarcelle.

You can also animate overrides, animated properties just replace/supersede overrides then. Note that you cannot override-edit an existing animation, you’ll have to create a new action. You can manually define or remove an override from the context menu of the relevant property.

Définir les remplacements

Référence

Éditeur

N’importe lequel

Mode

Mode Objet

Property

Context Menu ‣ Define Overrides Context Menu ‣ Define Override

Marque une propriété à remplacer dans le fichier-blend local. Pour les propriétés de tableau, tous les éléments seront remplacés.

Définir un remplacement unique

Référence

Éditeur

N’importe lequel

Mode

Mode Objet

Property

Context Menu ‣ Define Single Override

Marque une propriété à remplacer dans le fichier-blend local. Pour les propriétés de tableau, tous les éléments seront remplacés.

Supprimer les remplacements

Référence

Éditeur

N’importe lequel

Mode

Mode Objet

Property

Context Menu ‣ Remove Overrides Context Menu ‣ Remove Override

Supprime la propriété des remplacements. La valeur du bloc de données lié sera utilisée. Pour les propriétés de tableau, tous les éléments seront supprimés du remplacement.

Supprimer un remplacement unique

Référence

Éditeur

N’importe lequel

Mode

Mode Objet

Property

Context Menu ‣ Remove Single Override

Supprime la propriété des remplacements. La valeur du bloc de données lié sera utilisée. Pour les propriétés de tableau, seuls les éléments sélectionnés seront supprimés du remplacement.

Réinitialiser le remplacement de la bibliothèque

Référence

Éditeur

Outliner

Mode

Mode Objet

Outliner

Context Menu ‣ ID Data ‣ Reset Library Override Context Menu ‣ ID Data ‣ Reset Library Override Hierarchy

Reset the override to its original values. Reset Library Override Hierarchy will also reset the overrides of its child data-blocks.

Resync Library Override Hierarchy

Référence

Éditeur

Outliner

Mode

Mode Objet

Outliner

Context Menu ‣ ID Data ‣ Resync Library Override Hierarchy

La structure des données liées (les relations entre les blocs de données liés) peut être modifiée. Les remplacements doivent être resynchronisés pour correspondre à la nouvelle structure. Cet opérateur resynchronisera le remplacement avec la nouvelle structure de la bibliothèque.

Avertissement

Lors de la resynchronisation d’un remplacement de bibliothèque, il est possible que les remplacements modifiés soient supprimés s’ils sont modifiés dans la bibliothèque d’origine. Si tel est le cas, un message d’avertissement s’affichera indiquant combien de remplacements ont été supprimés, si la suppression n’est pas souhaitable, la resynchronisation peut être annulée avant d’enregistrer le fichier blend.

Resynchronisation de la hiérarchie de remplacement d’une bibliothèque

Référence

Éditeur

Outliner

Mode

Mode Objet

Outliner

Context Menu ‣ ID Data ‣ Resync Library Override Hierarchy Enforce

Dans certains cas, en particulier avec les anciens fichiers blend qui ont été enregistrés avec des remplacements «cassés» (sans correspondance hiérarchique), une resynchronisation régulière elle-même ne peut pas reconstruire correctement le remplacement comme prévu (par exemple, certains objets peuvent disparaître). Pour résoudre ce problème, cet opérateur reconstruit le remplacement local à partir de sa référence liée, ainsi que sa hiérarchie de dépendances, en appliquant cette hiérarchie pour qu’elle corresponde aux données liées (c’est-à-dire en ignorant les remplacements existants sur les propriétés des blocs de données). C’est similaire à une resynchronisation régulière mais est une resynchronisation plus puissante, au prix d’une perte potentielle de certains remplacements sur les propriétés des pointeurs d’ID.

Delete Library Override Hierarchy

Référence

Éditeur

Outliner

Mode

Mode Objet

Outliner

Context Menu ‣ ID Data ‣ Delete Library Override Hierarchy

Supprime le remplacement de bibliothèque du bloc de données sélectionné et de tous ses enfants et les remplace par le bloc de données lié d’origine. Cela annulera le remplacement de la bibliothèque.