Nodes/Avatar Graph/Object Make Override Library
ComfyUI Node

Object Make Override Library

Escape linked-library lock-in with a library override

By avatechai·Created 3 years ago·Updated 2 years ago· 264
Object Make Override Library
  • BPY_OBJ
  • BPY_OBJ
collection0

Library overrides are Blender's answer to "I linked this asset in from another .blend file, and now I need to tweak one little thing." Linked data is read-only by default - you can't edit it without breaking the link. An override makes a local, editable version while keeping the link to the source file alive. Object_MakeOverrideLibrary wraps bpy.ops.object.make_override_library() so you can do that from inside a ComfyUI graph.

Now the honest part: this is the most deep-utility node in this list, and you will almost certainly not need it in an Avatar Graph workflow. The pack generates nodes from Blender's operator registry wholesale, and library management ops came along for the ride. The typical Avatar Graph user - segmenting a character image, building mesh layers, setting up shape keys for the Avatech Shape Flow - never touches linked .blend libraries at all. This node exists for the edge case where you've structured an avatar project with library files and need to make a local edit without unlinking.

The mechanism. As with every Object_ node, your BPY_OBJ becomes the active object and the operator runs against it. The generated schema exposes a single control, collection, typed as an integer - in the underlying operator this identifies which library collection the override applies to. In practice the index maps against the collections present in the hidden Blender scene, which, after the pack's factory reset, is usually an empty or trivial set. Don't expect a friendly picker; this is one of the rawest wrappers in the pack.

Inputs.

  • BPY_OBJ - the active object from a linked collection.
  • collection - integer index of the library collection to override.

Output. BPY_OBJ, passed through unchanged.

Installing it. Ships in Avatar Graph; install via ComfyUI Manager ("Avatar Graph") or clone and pip-install:

cd ComfyUI/custom_nodes
git clone https://github.com/avatechai/avatar-graph-comfyui
cd avatar-graph-comfyui
python -m pip install -r requirements.txt

Restart with --enable-cors-header for the live preview. Pack pins bpy==3.6.0 and therefore needs Python 3.10.x; newer Pythons won't import bpy and the node goes red.

Troubleshooting. If the node errors with something about linked data, it's usually because your active object isn't actually linked (override works on linked data, not local objects). If the collection index is confusing, remember the pack resets the scene each run, so your linked library has to be loaded in the same graph before this node executes. If you're a beginner and this all sounds like plumbing you don't have, skip it - it's not part of the main avatar path, and nothing in the demos uses it.

Categoryblender

Inputs (2)

NameTypeDefaultDescription
BPY_OBJoptBPY_OBJ
collectionoptINT0-2147483648–2147483647

Outputs (1)

NameTypeDescription
BPY_OBJBPY_OBJ