Nodes/Avatar Graph/Object Shaderfx Add
ComfyUI Node

Object Shaderfx Add

Real-time glow and effects for 2D avatar art

By avatechai·Created 3 years ago·Updated 2 years ago· 264
Object Shaderfx Add
  • BPY_OBJ
  • BPY_OBJ
type

Object Shaderfx Add is one of the more fun nodes in Avatar Graph, because it adds actual post-processing effects instead of fiddling with hidden Blender flags. The pack - Avatech's rig for turning 2D character images into animatable avatars via an embedded Blender - has most of its nodes set one property and move on. This one calls a real Blender operator (bpy.ops.object.shaderfx_add) to attach a Shader FX to the incoming object. Choose your effect, and the object starts wearing it.

What it actually does

Blender's Shader FX are real-time, non-destructive effects applied on top of an object's look - think filters, not geometry. The node exposes nine of them through its type dropdown: FX_BLUR, FX_COLORIZE, FX_FLIP, FX_GLOW, FX_PIXEL, FX_RIM, FX_SHADOW, FX_SWIRL, FX_WAVE. That's your standard post-processing kit - a soft blur, a tint, a mirror flip, a neon glow, a pixelate, a rim light, a drop shadow, a swirl distortion, and a wavy ripple. Blender's Shader FX are built around Grease Pencil (2D stroke) objects in particular, which is why they fit this pack: the emoji and cartoon avatars in Avatar Graph's demos are exactly the kind of flat art where a glow or a ripple reads instantly.

So the workflow is: wire in a BPY_OBJ (a Grease Pencil or 2D-style object from your avatar graph), pick FX_GLOW for a neon look or FX_SHADOW to lift the art off the background, and the effect attaches to the object. It's a direct, unfiltered call to the Blender operator - the pack generated it from Blender's operator list rather than hand-building it, so you're getting the same effect you'd add in Blender's UI. Note this is an Object_ (operator-call) node, not an ObjectSet_ (property-setter) node - different mechanism, same BPY_OBJ-in, BPY_OBJ-out shape.

The inputs and outputs that matter

  • BPY_OBJ - the object to attach the effect to.
  • type - the effect, chosen from the nine listed above. This is the only input you'll touch.

Output is the same BPY_OBJ, now carrying the shader FX. Feed it into the next Blender node, and ultimately Avatar Main Output.

How to install it

Ships with the full 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

restart ComfyUI. The pack-wide snag: bpy==3.6.0 only has wheels for Python 3.10.x, so install fails on modern Python. python=3.10 conda env, or Avatech's prebuilt Python-3.10 ComfyUI zip on Windows.

Gotchas

Effects like glow and pixelate are cheapest and most legible on flat, stylized art - on a photorealistic textured plane they can look muddy, so match the effect to the art style. And since Shader FX are real-time effects rather than baked geometry, always confirm the result in the exported .glb/.gltf (right-click Avatar Main Output → Save File) rather than assuming the ComfyUI preview shows the final look.

Categoryblender

Inputs (2)

NameTypeDefaultDescription
BPY_OBJoptBPY_OBJ
typeoptCOMBO9 options: FX_BLUR, FX_COLORIZE, FX_FLIP, FX_GLOW, FX_PIXEL, FX_RIM, +3

Outputs (1)

NameTypeDescription
BPY_OBJBPY_OBJ