Object Set Use Fake User
Stop Blender from recycling your avatar meshes
- BPY_OBJ
- BPY_OBJ
If you've spent time in Blender's outliner, you know the little "F" badge: fake user. Object Set Use Fake User is the Avatar Graph node that flips that flag on a mesh - and for a pipeline that generates character geometry on the fly, it's one of the more quietly useful switches in the pack. Avatar Graph is Avatech's rig for turning a 2D character image into an animatable avatar through an embedded Blender (bpy), and like every ObjectSet_ node it sets one property on the Blender object on its BPY_OBJ input and passes the object back.
What it actually does
Blender garbage-collects data-blocks that no longer have users. "Users" here means references - the mesh, the material, the object data - and the moment the last one disappears, Blender considers the data-block dead weight and drops it, especially on save. A fake user is exactly what it sounds like: a phantom reference that tells Blender "keep this data-block even though no real user is attached." It's the standard trick for holding onto assets you don't currently have referenced in the scene.
That maps neatly onto avatar generation. Your graph creates mesh layers, joins them, builds shape keys - lots of intermediate data. If you want a piece of that geometry to survive beyond the current run (or you're seeing meshes you built get recycled between runs), a fake user pins it in place. Nothing visible changes; you've just told Blender's cleanup to look the other way.
The inputs and outputs that matter
BPY_OBJ- the object whose data you want to pin.value- boolean, defaultfalse.trueadds the fake user.
Output is the same BPY_OBJ, unchanged except for the flag. It slots into the middle of any Blender chain - say, right after Object Create Mesh Layer - without affecting what comes next.
How to install it
No standalone install; it's part of the Avatar Graph pack. ComfyUI Manager, search "Avatar Graph", or:
cd ComfyUI/custom_nodes
git clone https://github.com/avatechai/avatar-graph-comfyui
cd avatar-graph-comfyui
pip install -r requirements.txt
then restart ComfyUI. The usual pack-level snag: it pins bpy==3.6.0, whose wheels only exist for Python 3.10.x - install fails on newer Pythons. Use a python=3.10 conda env or Avatech's prebuilt Python-3.10 ComfyUI zip on Windows. First launch also downloads the SAM ViT-H and MediaPipe face/pose models.
Gotchas
The practical warning is the opposite of most nodes: this one can't be debugged by looking. If you set it and see nothing happen, that's correct behavior - it only matters at the moment Blender would otherwise drop the data. Where people get burned is relying on it too late: the flag has to be set while the object still exists, so set it on final assets before you keep running the graph, not after data has already been cleaned up.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| BPY_OBJopt | BPY_OBJ | — | |
| valueopt | BOOLEAN | false | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| BPY_OBJ | BPY_OBJ | — |