blender_grease_pencil
Create, draw, animate, and modify Grease Pencil objects with operations for strokes, layers, materials, modifiers, and interpolation.
Instructions
PORTMANTEAU RATIONALE: Consolidates 12 Grease Pencil 2D animation operations into a single tool.
Operations:
create: Create a new Grease Pencil object with layer and initial frame
draw_stroke: Draw strokes (LINE, BOX, CIRCLE, ARC, CURVE) with color/thickness
convert: Convert Grease Pencil to MESH, CURVE, or new GP strokes
set_material: Create and assign GP material with stroke/fill color
set_layer: Create, reorder, lock, toggle visibility of GP layers
animate_stroke: Keyframe stroke properties (location, rotation, scale) over time
onion_skinning: Enable/disable onion skin with before/after frame count
add_modifier: Apply GP modifiers (BUILD, NOISE, SIMPLIFY, SMOOTH)
fill_region: Fill enclosed stroke regions with color
interpolate: Generate in-between frames between two GP frames
delete_strokes: Remove strokes from a GP frame by selection type
list_layers: List all layers and frame info on a GP object
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| operation | No | The GP operation to perform | create |
| name | No | Name for new GP object (used by: create) | GPencil |
| gp_object | No | Target GP object name (used by: draw_stroke, convert, set_material, etc.) | |
| stroke_type | No | LINE|BOX|CIRCLE|ARC|CURVE (used by: draw_stroke) | LINE |
| points | No | Point coordinates for LINE/CURVE strokes (used by: draw_stroke) | |
| layer_name | No | Target layer name (used by: draw_stroke, set_layer, animate_stroke) | GP_Layer |
| frame_number | No | Frame number for drawing (used by: draw_stroke, interpolate) | |
| color | No | RGBA stroke color 0-1 (used by: draw_stroke, set_material) | |
| thickness | No | Stroke thickness (used by: draw_stroke) | |
| cyclic | No | Close the stroke (used by: draw_stroke) | |
| location | No | Placement location (used by: create) | |
| target_type | No | MESH|CURVE|GP_STROKES (used by: convert) | MESH |
| keep_original | No | Keep original after conversion (used by: convert) | |
| width | No | Box width (used by: draw_stroke BOX) | |
| height | No | Box height (used by: draw_stroke BOX) | |
| radius | No | Circle radius (used by: draw_stroke CIRCLE) | |
| selection_type | No | ALL|VISIBLE|INVERT (used by: delete_strokes) | ALL |
| material_name | No | Name for new material (used by: set_material) | |
| fill_color | No | RGBA fill color 0-1 (used by: set_material, fill_region) | |
| modifier_type | No | BUILD|NOISE|SIMPLIFY|SMOOTH (used by: add_modifier) | BUILD |
| modifier_settings | No | JSON string of modifier settings (used by: add_modifier) | |
| svg_path | No | File path to SVG (used by: import_svg) | |
| before_frames | No | Frames before current (used by: onion_skinning) | |
| after_frames | No | Frames after current (used by: onion_skinning) | |
| interpolation_frames | No | Number of in-between frames (used by: interpolate) | |
| from_layer | No | Source layer for transfer (used by: set_layer) | |
| to_layer | No | Target layer (used by: set_layer) |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |