Table of Contents
Magical Box
Concept • Documentation • Tutorial • FAQ • Download
Magical Box (MB) is an expandable multi-purpose particle engine. We created Magical Box because we hardly missed some advanced features in Unity's built-in Particlesystem (that was before Shuriken came into play). So while developing Magical Box we focused on the following points:
- Modularity: Allow coders to easily plug their own stuff into both the engine and it's editor.
- Performance: Avoid unneccessary calculations, let multiple emitters share a single mesh etc…
- Fun: Make designing Particle FX an interactive and visually appealing experience.
- 2D: Support a broad range of 2D features like Circle, Rectangle and Imagemap emitters
Screenshots
Features
Unity Integration
- Full-blown Editor GUI: Cut/Copy/Paste all objects and parameters
- Gizmo-Support while editing
- Particle Debugging
- Automatic texture packing and material management
- Hierarchy:
- Full default hierarchy support, just make sure all Magical Box objects have a ParticleSystem somewhere up the tree
- Use Anchors or your own game objects to group emitters.
- Nested emitters and anchors
Performance
- Modular design: only used Parameters will be calculated
- Unlimited emitters per Particlesystem, particles will be batched by material, not by emitter
- ParticleSystems using the same material can be dynamically batched
- Several 2D/3D billboarding modes
Control
- Control single emitters or a whole ParticleSystem at once
- Arrange timing of Emitters using a visual timeline editor
- Use Callback-based and/or SendMessage based event system, link events from within the editor
- Pooling Manager included for easy fx cloning
- playMaker actions available
Emitter Types (Shapes)
- 2D: Circular/Arc/“Donut”, Rectangle, HollowRectangle, ImageMap
- 3D: Spherical, Box, HollowBox
- Vector: Line, Polygon
- Mesh: Vertex, Edge, Surface
- Spline (needs Curvy)
Emitter
- Every child emitter can be used as a trail
- Animate emission rate over emitter's lifetime
- Distribute particles even over EmitterType's shape
Parameters
- Fine control birth and lifetime values
- Almost any value can be animated using curves
- Built-in particle parameters:
- Image animation (OneShot,Loop,Ping-Pong,Manual)
- Lifetime (“Energy”)
- Size (axis independent)
- Velocity, Acceleration, Friction
- Mass, Gravity
- World Collider
- ForceFields: Radial, Rectangle, Spherical
- Color: Fixed, Timeline or based on keys or gradients. Auto-Fade In/Out.
- Heading (i.e. direction velocity and acceleration is applied to)
- Orientation (i.e. Angular velocity) with several modes (including AlignToVelocity, AlignToHeading)
- Rotation (around emitter)
- Transform Connector (instantiate & sync GameObjects with particles)
- MoveAlongSpline, Spline/Tubular force field (needs Curvy)
- Lightning
- Math Operator
Expandability
- Create new emitter types and parameters easily within minutes. Just inherit from the respective base class and add your custom logic (C# only)
- Let your custom parameters add individual data fields to particles
- Fully integrate your custom classes into the Magical Box editor by creating your custom editor handler and using the provided GUI helper functions.