Object Set Is Runtime Data
A flag node that mostly exists for the runtime
- BPY_OBJ
- BPY_OBJ
ObjectSet_IsRuntimeData is the most "internal plumbing" node in this batch. It does one thing: sets the is_runtime_data boolean on a Blender object. In Blender, that flag marks data blocks as temporary - stuff created at runtime that shouldn't be saved to disk or treated like a permanent asset. It's the "this object is disposable" sticker.
Why it exists (and when you care)
The Avatar Graph pack builds avatars through a multi-stage pipeline: segment the image, build mesh layers, shape-key them, hand the result to the Avatech Shape Flow runtime. A lot of the intermediate meshes are runtime scratch - they exist to be deformed and driven by the editor, not to live in your .blend as authored assets. That's exactly what is_runtime_data is for: telling Blender (and anything reading the scene) that this object is generated on the fly.
For you as a beginner, the honest answer is that you'll rarely touch this node. The default is false, and most stock templates never wire it in. It becomes relevant when you're building a custom pipeline and you want downstream export or the runtime to treat an object as ephemeral - or when you're debugging why the avatar export is carrying along junk meshes you didn't intend to ship.
How it works
This is one of the pack's auto-generated setter nodes, the same family as ObjectSet_ActiveMaterialIndex. Look in blender/ops_mesh.py and you'll see is_runtime_data in the bpy_object_member list of object attributes; create_obj_setter_class turns each entry into a node whose whole implementation is setattr(BPY_OBJ, 'is_runtime_data', value). No Blender operator runs, no geometry changes. The object is mutated in place and passed straight through.
Inputs and outputs
BPY_OBJ(optional) - the object to flag.value(BOOLEAN, defaultfalse) - set ittrueto mark the object as runtime data.
Output: BPY_OBJ, the same object, unchanged except for that flag.
Install and gotchas
Same story as the whole pack - ComfyUI Manager (search "Avatar Graph") or:
cd ComfyUI/custom_nodes
git clone https://github.com/avatechai/avatar-graph-comfyui.git
cd avatar-graph-comfyui && python -m pip install -r requirements.txt
House rules apply: bpy==3.6.0 needs Python 3.10; first load pulls down the ~2.5GB SAM checkpoint plus mediapipe models; the scene resets to factory settings on every graph run, so this flag - like everything else - is rebuilt fresh each execution and won't persist between runs. Live preview needs --enable-cors-header on ComfyUI; without it you export GLB/GLTF from Avatar Main Output instead.
ObjectSet_IsRuntimeData is a flag, not a feature. You'll mostly encounter it while reading other people's graphs and wondering what it's for. Now you know: it's the pack's way of keeping generated scratch geometry out of your saved assets.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| BPY_OBJopt | BPY_OBJ | — | |
| valueopt | BOOLEAN | false | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| BPY_OBJ | BPY_OBJ | — |