Nodes/Avatar Graph/Object Gpencil Modifier Move Up
ComfyUI Node

Object Gpencil Modifier Move Up

Walk a modifier up the stack, one slot at a time

By avatechai·Created 3 years ago·Updated 2 years ago· 264
Object Gpencil Modifier Move Up
  • BPY_OBJ
  • BPY_OBJ
modifier

Object_GpencilModifierMoveUp nudges a grease pencil modifier one slot up the stack - the exact inverse of Object_GpencilModifierMoveDown. Grease pencil modifiers evaluate in stack order, top to bottom, and that order is often the difference between a clean outline and a muddy one. This node is how you move a modifier toward the top of that order, one step at a time.

When you'd reach for it

Right after anything that adds a modifier at the wrong place. Object_GpencilModifierAdd appends to the end of the stack and Object_GpencilModifierCopy dumps its duplicate at the bottom, and neither is usually where you want the new modifier to live. So the bread-and-butter sequence is: add or copy, then MoveUp a few times to bring the modifier into position. It's the gentler alternative to Object_GpencilModifierMoveToIndex - you use it when you know the direction but not the exact target, or when you want to preserve relative order while walking something up.

How it works

Thin auto-generated wrapper over bpy.ops.object.gpencil_modifier_move_up. It makes your BPY_OBJ active, moves the named modifier up one slot, and passes the object back through. Inputs:

  • BPY_OBJ (optional) - the grease pencil object.
  • modifier (STRING, default empty) - the name of the modifier to move.

Output: BPY_OBJ, the same object, with the stack reordered by one position.

The same naming rules as its siblings

Every Object_GpencilModifier* node addresses modifiers by exact name, and this one rewards naming discipline most, because moving the wrong modifier is silent. Watch out for Blender's auto-suffixing: a copied GP_Noise becomes GP_Noise.001, and if you mean to move the copy, GP_Noise will move the original instead. There's no dropdown or query node, so keep your modifier names deliberate - it saves real debugging time.

Also worth knowing: if the modifier is already at the top of the stack, the move is a harmless no-op. The node reports success, nothing changes, and that's expected behavior rather than a fault.

Install and gotchas

Standard pack install:

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

or ComfyUI Manager → "Avatar Graph". House rules: Python 3.10 for bpy==3.6.0, ~2.5GB SAM checkpoint + mediapipe models on first load, scene resets every run (so the stack order is rebuilt fresh each execution), live preview needs --enable-cors-header.

Object_GpencilModifierMoveUp is a tiny, focused tool - but "one slot up" is the exact operation that fixes half of all modifier-order annoyances. When your outline is rendering underneath instead of on top, this is the node that puts it back where it belongs.

Categoryblender

Inputs (2)

NameTypeDefaultDescription
BPY_OBJoptBPY_OBJ
modifieroptSTRING

Outputs (1)

NameTypeDescription
BPY_OBJBPY_OBJ