nParticles ist Mayas Nucleus-basiertes Partikelsystem, das physikalische Simulation von Partikelschwärmen für Effekte wie Feuer, Rauch, Regen, Flüssigkeiten, Staub und komplexe Massen-Phänomene ermöglicht und direkt mit nCloth und nHair interagiert.
Rubrik: Software & Tools · Unterrubrik: Maya · Niveau: Fortgeschritten Synonyme / Auch bekannt als: nParticle System, Nucleus Particles, Maya Particles
Was ist nParticles?
nParticles ist der Nachfolger von Mayas klassischem Particle-System und Teil des Nucleus-Frameworks (zusammen mit nCloth und nHair). Es wurde mit Maya 2009 eingeführt und bietet gegenüber dem alten System physikalisch korrektere Kollisionen, Selbstkollision und Interaktion mit anderen Nucleus-Objekten. nParticles unterstützt verschiedene Render-Typen (Sprites, Spheres, Tubes, Blobby Surfaces für Fluid-Looks) und kann über Instancing komplexe 3D-Meshes auf Partikel-Positionen platzieren. Maya's Bifrost hat für Fluid-Simulationen nParticles teilweise abgelöst, aber nParticles bleibt der Standard für klassische Partikel-VFX.
Erklärung
nParticle-Erstellung und Emitter
nParticles werden von Emittern ausgesandt:
- Omni-Emitter: Emittiert in alle Richtungen (Feuer, Explosion)
- Directional Emitter: Emittiert in eine Richtung (Rauch aus Schornstein, Wasserstrahl)
- Surface Emitter: Emittiert von Mesh-Oberfläche (Regen auf Boden, Blut aus Wunde)
- Volume Emitter: Emittiert aus einem Volumen (Cube, Sphere, Cylinder, Torus, Cone)
- Curve Emitter: Emittiert entlang einer NURBS-Kurve
Emitter-Parameter:
Rate: Partikel pro SekundeSpeed: Anfangsgeschwindigkeit der PartikelSpeed Random: Zufallsvariation der GeschwindigkeitDirection/Spread: Emissionsrichtung und -streubreite
nParticle-Attribute
Partikel besitzen eine reiche Attribut-Bibliothek:
Lebensdauer (`Lifespan Mode`): Live Forever, Constant, Random Range, lifespanPP (per Partikel, per Partikel steuerbar via rampAttribute)
Per-Partikel-Attribute (PP-Attributes): Jede Eigenschaft kann perParticle gesetzt werden (z. B. rgbPP für individuelle Partikelfarbe, opacityPP für individuelle Transparenz). Diese PP-Attribute sind via Creation Expression (einmalig beim Emittieren) und Runtime Expression (jeden Frame) animierbar.
Physics-Attribute: mass, radius, drag, damp, conserve (Impuls-Erhaltung: 1 = keine Dämpfung, 0 = maximale Dämpfung)
Partikel-Expressions: MEL und Python
Die mächtigste Feature ist das Expression-System. Expressions sind kleine MEL-Code-Snippets, die pro Partikel oder pro Frame ausgeführt werden:
Creation Expression (wird einmalig beim Emittieren ausgeführt): ``mel // Zufällige Farbe beim Emittieren nParticleShape1.rgbPP = <<rand(0.8, 1.0), rand(0.1, 0.3), 0>>; nParticleShape1.lifespanPP = rand(1.5, 4.0); ``
Runtime Expression (wird jeden Frame ausgeführt): ``mel // Partikel werden heller mit zunehmendem Alter float $age = nParticleShape1.age; float $life = nParticleShape1.lifespanPP; nParticleShape1.opacityPP = 1.0 - ($age / $life); ``
Render-Typen
nParticles unterstützen verschiedene Render-Darstellungen:
- Sprites: Kamera-zugewandte Textured Quads; ideal für Rauch und Staub
- Spheres / Blobby Surfaces: Für Flüssigkeitstropfen; Blobby = weiche Meta-Surface-Verschmelzung (wie SPH-Fluid-Look)
- Cloud: Volumetrischer Rauch-Look (nur mit Software-Renderer oder speziellen Setups)
- Streak / Multi-Streak: Bewegungsunschärfe-artige Streifen für Funken, Regen, Lichteffekte
- Numeric: Debug-Anzeige von Attributwerten im Viewport
Instancer: Beliebige 3D-Meshes auf Partikel-Positionen instanziieren. Particle Instancer (Particles → Instancer) verknüpft Partikel-Attribute (objectIndex, rotation, scale) mit Instanz-Eigenschaften.
Fields (Kraftfelder)
Kraftfelder beeinflussen die Bewegung von Partikeln (und nCloth):
- Gravity: Schwerkraft (auch im Nucleus-Solver direkt)
- Turbulence: Chaotische Richtungsänderungen (Rauch-Swirl)
- Vortex: Kreisbewegung (Tornado, Whirlpool)
- Uniform: Konstante Kraft in einer Richtung (Wind)
- Drag: Geschwindigkeits-Dämpfung (Luftwiderstand)
- Newton: Gravitations-Anziehung zu einem Punkt (Planet-Effekte)
- Radial: Abstoßung/Anziehung von einem Punkt (Explosion, Schockwelle)
Fields werden via Fields/Solvers → Connect Field mit nParticles verbunden.
nParticles und nCloth-Interaktion
Da beide im selben Nucleus-Solver arbeiten, kann nParticles physikalisch mit nCloth kollidieren: Regen-Partikel prallen von einem flatternden Segel ab, Sand-Partikel häufen sich auf einem Cloth-Zelt. Diese Cross-System-Interaktion ist ein wesentlicher Vorteil des Nucleus-Frameworks.
Goals und Soft Bodies
Goal: Partikel versuchen, die Position eines Ziel-Objekts zu erreichen (Goal Weight 0–1). Nutzbar für geführte Partikel-Animationen, bei denen physikalische Kräfte von einer Ziel-Animation überlagert werden.
nSoft Body: Ein Polygon-Mesh wird zu einem nParticle-System konvertiert, bei dem jeder Vertex zu einem Partikel wird – vergleichbar mit nCloth, aber für massivere, kompaktere Deformationen.
Caching
nParticle-Caches über nCache → Create nCache. Analog zu nCloth-Caches. Für Production-Workflows unverzichtbar, da Partikel-Simulationen nicht-deterministisch sein können.
Beispiele
- Funken-Regen (Sparks): Directional-Emitter über Schweißstelle; hohe
Speed, starkerGravity-Field;Streak-Render-Typ; Per-Partikel-Lebensdauer für organisches Erlöschen; Glow im Arnold-Shader. - Rauch-Säule: Surface-Emitter auf Feuer-Geometrie; aufsteigende Partikel mit Turbulence-Field;
Spritesmit alphatransparenter Rauch-Textur; Opacity fades über Lebensdauer. - Regen-Simulation: Volume-Emitter weit über Szene; Downward Gravity;
Streak-Render-Typ; Collision mit Terrain erzeugt Splash-Partikel via Partikel-Kollisions-Event. - Explosion Debris: Omni-Emitter aus Explosionszentrum; Instancer mit mehreren Trümmer-Meshes; Rotation-PP-Attribut für tumbling Motion; Gravity und Drag.
- Bienenschwarm / Vogelschwarm: Instancer mit Vogel-Mesh; Goal-System zu animiertem Lead-Objekt; Turbulence für organische Variation; per-Partikel-Rotations-Expression.
In der Praxis
Expressions vs. Ramp-Attribute: Für einfache Wert-über-Lebensdauer-Kurven rampAttribute (visueller Ramp-Editor) verwenden; für komplexe Logik MEL-Expressions.
Rate-Optimierung: Beginne mit niedrigem Rate-Wert und erhöhe schrittweise. Zu viele Partikel verlangsamen den Viewport und die Simulation.
Partikel-Kollisions-Events: Particle → Particle Collision Event Editor definiert, was beim Kollisionsevent passiert: neue Partikel emittieren (Splash), Partikel töten, Attribut ändern.
Sprite-UVs: Für Sprite-Sheets (Animation auf einem einzelnen Bild) UV-Cycling via Expression: nParticleShape1.spriteNumPP = ...
Vergleich & Abgrenzung
| Software | Partikel-System | Unterschied |
|---|---|---|
| Houdini | POP (Particle Operators) / DOP | Deutlich mächtiger; VEX-Integration; Industrie-Standard für komplexe VFX |
| Blender | Particle System / Geometry Nodes | Gute Basis; kein Nucleus-Equivalent |
| Cinema 4D | X-Particles (Plugin) | Leistungsstarkes Plugin; beliebter in Motion-Graphics |
| Bifrost (Maya) | Newer, more powerful system | Bifrost hat nParticles für Fluid-VFX weitgehend abgelöst |
| Niagara (UE5) | Echtzeit-Partikel | Echtzeit; kein Film-VFX-Level-Solver |
Häufige Fragen (FAQ)
Wann sollte ich nParticles statt Bifrost verwenden? nParticles sind ideal für klassische Partikel-VFX: Funken, Staub, Debris, Insektenschwärme, Regen. Bifrost ist besser für Fluid-Simulationen (Wasser, Rauch, Feuer als volumetrische Simulation). Für neue Projekte lohnt es sich, Bifrost auch für Partikel-Effekte zu evaluieren.
Kann ich nParticle-Simulations-Ergebnisse als Geometrie exportieren? Ja, über nParticles → Convert → nParticles to Polygons. Alternativ Partikel-Positionen als .mc-Cache exportieren und in anderen Tools (Houdini, Blender) einlesen, oder über den Instancer als fertige Geometrie rendern.
Verwandte Einträge
Weiterführend
- Autodesk nParticles Documentation: (2025)
- Gnomon Workshop "Particle FX in Maya": (2023)
- CGCircuit Maya Particles Masterclass (2024)
