genart.dev
Plugins

Particles

Particle systems — falling, floating, scatter, mist, trailing, flow, and mark fields with depth lanes.

Depth-aware particle systems with 7 layer types, 46 presets, and atmospheric perspective modes. Supports falling, floating, scattered, mist band, trailing, flow field, and mark field particles.

Installation

npm install @genart-dev/plugin-particles

Layer Types

Type IDDisplay NameDescription
particles:fallingFallingGravity-driven particles (snow, rain, petals, embers)
particles:floatingFloatingAmbient drifting particles (dust, fireflies, pollen)
particles:scatterScatterStatic scattered elements (leaves, pebbles, shells)
particles:mistMistHorizontal fog/mist bands with noise
particles:trailingTrailingMotion trails (meteors, speed rain, sparks)
particles:flowFlowCurl-noise flow paths (smoke, ink, aurora)
particles:mark-fieldMark FieldDirectional marks (grass blades, reeds, ink scatter)

Properties

particles:falling

PropertyTypeDefaultDescription
presetselect"snow"snow, rain, autumn-leaves, petals, embers, ash-fall, cherry-blossoms, confetti, pine-needles
seednumber42Random seed (0–99999)
countnumber150Number of particles (5–2000)
sizeMinnumber2Minimum size (0.5–20)
sizeMaxnumber6Maximum size (0.5–20)
windAnglenumber10Wind angle in degrees (−60 to 60)
windStrengthnumber0.15Wind strength (0–1)
fallProgressnumber0.5Fall position snapshot (0–1)
colorcolor"#FFFFFF"Particle color
colorVariationnumber0.1Color variation (0–1)
opacitynumber0.7Particle opacity (0–1)
depthDistributionselect"uniform"uniform, foreground-heavy, background-heavy, midground
depthEasingselect"linear"linear, quadratic, cubic, exponential
horizonYnumber0.3Horizon line position (0–1)
depthLaneselect"foreground"Depth lane for scene integration
atmosphericModeselect"none"none, western, ink-wash

particles:flow

PropertyTypeDefaultDescription
presetselect"flow-smoke"flow-smoke, ink-diffusion, aurora, lava-flow, water-current, wind-streams
seednumber42Random seed
countnumber60Number of flow paths (5–500)
pathStepsnumber80Steps per path (10–300)
stepSizenumber0.018Step distance (0.002–0.08)
noiseScalenumber1.2Curl noise scale (0.1–8.0)
swirlingnumber0.15Swirl intensity (0–1)
flowAnglenumber0Base flow direction (0–360°)
flowStrengthnumber0Flow field strength (0–1)
sizeMinnumber0.8Minimum stroke size (0.2–20)
sizeMaxnumber2.5Maximum stroke size (0.2–20)
colorcolor"#C8C8C8"Flow color
opacitynumber0.55Opacity (0–1)
depthLaneselect"foreground"Depth lane
atmosphericModeselect"none"none, western, ink-wash

particles:mark-field

PropertyTypeDefaultDescription
presetselect"grass-blades"grass-blades, reed-field, ink-scatter, dry-brush, charcoal-scatter, calligraphy-marks
seednumber42Random seed
countnumber300Number of marks (10–2000)
markLengthnumber0.04Mark length as canvas fraction (0.005–0.3)
markWidthnumber1.5Mark stroke width (0.2–12)
anglenumber-80Base angle in degrees (−180 to 180)
angleVariationnumber20Angle variation (0–180°)
curvaturenumber0.25Mark curvature (0–1)
markStyleselect"ink"ink, brush, pencil, technical
colorcolor"#1C1C1C"Mark color
opacitynumber0.7Opacity (0–1)
depthLaneselect"foreground"Depth lane
atmosphericModeselect"none"none, western, ink-wash

MCP Tools

ToolDescription
add_particlesAdd a particle layer by preset (auto-resolves layer type)
list_particle_presetsList 46 presets, optionally filtered by category
set_particle_depthConfigure depth: horizonY, easing, distribution, band
set_particle_motionConfigure motion: wind angle/strength, drift, fall progress
set_particle_styleConfigure visuals: color, opacity, glow, size range
set_depth_laneSet depth lane and atmospheric mode
create_atmosphereCreate multi-layer atmospheric scene from 6 recipes
randomize_particlesAdd a random particle layer, optionally by category
set_mist_bandConfigure mist band position, softness, density, layers

Example

{
  "tool": "design_add_layer",
  "arguments": {
    "type": "particles:falling",
    "properties": {
      "preset": "cherry-blossoms",
      "seed": 42,
      "count": 200,
      "windAngle": 15,
      "windStrength": 0.2,
      "fallProgress": 0.6,
      "depthLane": "foreground"
    }
  }
}