库覆盖

    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.

    Library overrides supports:

    • Multiple independent overrides of a same linked data (e.g. having the same character multiple times in the same scene).

    • Adding new modifiers and constraints, anywhere in the stack.

    • Recursively chaining overrides (i.e. link and override overrides from another library file, etc.).

    Note

    There are known issues that have to be addressed. See Phabricator main task of the project, for more details.

    参考

    编辑器

    3D Viewport and Outliner

    模式

    物体模式

    菜单

    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

    There are two ways to create an override of a linked data-block.

    You can override a single data-block from two places:

    • The data-block menu in the UI (Shift-LMB on the chain icon to the right), in which case only that specific usage will be remapped to the new local override.

    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).

    The operator will go through the whole hierarchy of collections and objects, and override all those needed to allow posing/animation of a character.

    Note

    Proper Collections Layout Matters

    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

    参考

    编辑器

    3D Viewport and Outliner

    模式

    物体模式

    菜单

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

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

    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.

    Tip

    So users linking overrides (or creating recursive overrides) should ensure that their library files are regularly updated, to avoid this overhead on file load (typically, opening and saving those library files should be enough to update them).

    Tip

    Auto resyncing can be disabled in the .

    Editing an Override

    Essentially, an override is edited the same way as a regular local data-block. You can use operators on them, edit their properties from various editors, etc. There are some limitations however, most notably Edit Mode is not allowed for overrides. In most cases, as soon as you edit a property, you can see that it’s overridden by its teal blue outline/background.

    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.

    参考

    编辑器

    任意

    模式

    物体模式

    属性

    Context Menu ‣ Define Overrides Context Menu ‣ Define Override

    Mark a property to be overridden in the local blend-file. For array properties all elements will be overridden.

    Define Single Override

    参考

    编辑器

    任意

    模式

    物体模式

    属性

    Context Menu ‣ Define Single Override

    Mark a property to be overridden in the local blend-file. For array properties only the selected element will be overridden.

    参考

    编辑器

    任意

    模式

    物体模式

    属性

    Context Menu ‣ Remove Overrides Context Menu ‣ Remove Override

    Remove the property from the overrides. The value of the linked in data-block will be used. For array properties all elements will be removed from the override.

    覆盖单个覆盖

    参考

    编辑器

    任意

    模式

    物体模式

    Context Menu ‣ Remove Single Override

    Remove the property from the overrides. The value of the linked in data-block will be used. For array properties only the selected elements will be removed from the override.

    参考

    编辑器

    大纲视图

    模式

    物体模式

    大纲视图

    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.

    重新同步库覆盖层级

    参考

    编辑器

    大纲视图

    模式

    物体模式

    大纲视图

    Context Menu ‣ ID Data ‣ Resync Library Override Hierarchy

    The structure of the linked data (the relationships between linked data-blocks) can be changed. Overrides need to be resynced to match the new structure. This operator will resync the override to the new structure in the library.

    Warning

    While resyncing a library override it is possible that edited overrides get deleted if they are changed in the original library. If this is the case, a warning message will be displayed stating how many overrides were deleted, if the deletion is undesirable the resync can be undone before saving the blend-file.

    参考

    编辑器

    大纲视图

    模式

    物体模式

    大纲视图

    Context Menu ‣ ID Data ‣ Resync Library Override Hierarchy Enforce

    In some cases, especially with older blend-files that were saved with ‘broken’ (non-hierarchy-matching) overrides, a regular resync itself cannot rebuild properly the override as expected (e.g. some objects might go missing). To solve this issue, this operator rebuilds the local override from its linked reference, as well as its hierarchy of dependencies, enforcing that hierarchy to match the linked data (i.e. ignoring existing overrides on data-blocks properties). This is similar to a regular resync but is a more forceful resync, at the cost of a potential loss of some overrides on ID pointers properties.

    删除库覆盖层级

    参考

    编辑器

    大纲视图

    模式

    物体模式

    大纲视图

    Remove the library override from the selected data-block and all its children and replace them with the original linked data-block. This will revert the Make Library Override.