Nodes/Avatar Graph/Object Instance Offset From Cursor
ComfyUI Node

Object Instance Offset From Cursor

The Blender instancing-offset node that's mostly for completeness

By avatechai·Created 3 years ago·Updated 2 years ago· 265
Object Instance Offset From Cursor
  • BPY_OBJ
  • BPY_OBJ

Let me be honest about this one up front: Object_InstanceOffsetFromCursor is a genuinely thin node, and unless you're doing Blender-style instancing inside your avatar graph you'll probably never touch it. It's part of the Avatar Graph pack's blanket auto-generation of Blender object operators - the pack wraps a huge swath of bpy.ops.object.* into nodes, and this is one of the more esoteric entries in that sweep.

So what does it do? It calls bpy.ops.object.instance_offset_from_cursor() - the "From Cursor" entry in Blender's Object > Set Offset menu. Blender's instancing lets a single object repeat (dupliverts, collections, geometry-nodes instancing), and the instance offset is a hidden property that shifts where those repeats land relative to the object origin. "From Cursor" sets that offset so the instances align with the 3D cursor's position. Object_InstanceOffsetToCursor does the inverse flavor.

How it works

The node feeds BPY_OBJ in, sets it active in the embedded Blender scene, runs the operator, and passes the object back out untouched - the pack's universal pass-through convention. There are no other inputs; the operator reads the current 3D cursor location from the scene and the active object's instancing settings, does its thing, and you move on.

If you're wondering when this matters for an avatar: basically when someone has designed a workflow template that uses instancing for something decorative - repeated jewelry, hair strands, eyelash instances - and wants their offset anchored to a cursor that another node positioned earlier in the graph. It's a niche-of-a-niche node.

Inputs and outputs

  • BPY_OBJ - the instanced object to re-anchor; returned unchanged.
  • BPY_OBJ output - pass-through.

Installing it

It ships in Avatar Graph (avatechai/avatar-graph-comfyui). ComfyUI Manager: search "Avatar Graph", or clone:

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

Standard pack caveats: bpy==3.6.0 requires Python 3.10.x - on 3.11+ the wheel won't build and the whole pack disappears from your node list. First startup also auto-downloads the SAM ViT-H checkpoint (~2.5 GB) and MediaPipe landmarkers.

Common issues

Honestly: don't expect this node to matter. If you're hitting an error with it, it's almost always the environment (Python version, missing bpy) rather than the operator. The one semantic trap is confusing it with Object_InstanceOffsetToCursor - they're mirror images of each other, so if your instances land on the wrong side of the cursor, check you grabbed the right one. And keep in mind the README's warning that the pack is still changing, so a node like this can shift or vanish between versions.

Categoryblender

Inputs (1)

NameTypeDefaultDescription
BPY_OBJoptBPY_OBJ

Outputs (1)

NameTypeDescription
BPY_OBJBPY_OBJ