const emitter = new Emitter();
emitter
.setRate(new Rate(2, 0.1))
.addInitializers([
new Mass(1),
new Radius(6, 12),
new Life(2, 5),
new RadialVelocity(45, new Vector3D(0, 1, 0), 180),
])
.addBehaviours([
new Alpha(1, 0),
new Color('#ff2d95', '#0029ff'),
new Scale(1, 0.1),
]);
system.addEmitter(emitter).addRenderer(renderer);Simple, Powerful API
Choose from a wide variety of particle initializers & behaviors to create truly expressive, dynamic particle systems from textures or 3D objects.
Get startedLoadable & Portable via JSON
Load your entire system from a JSON object which you can easily share with others or modify for a fast and user friendly development experience.
Read the docs
GPU-Accelerated
Render tens of thousands of particles at a buttery 60fps with the dedicated WebGL & WebGPU renderer — built for scale without dropping frames.
See it in actionDesign your particle systems visually – coming to the browser soon!
Nebula has been a desktop editor for Windows, Mac and Linux, letting you design three-nebula particle systems visually — no code required.
Now it's coming to the web: the same intuitive interface, running right in your browser, with your creations exported as JSON.
