Creates pulsing particle emission based on selected particle system which could be useful for music visualization. Blender does not have a way to turn on/off emission of the particles and this approach is kind of a workaround.
- Go to github repository
- Click Code -> Download ZIP
- Unzip anywhere
- Open Blender
- Go to Edit -> Preferences -> Add-ons
- Click Install
- Choose .py file from previously unzipped archive and click Install Add-on
- Enable add-on
- Select object that would be particle emitter
- Add particle system
- Tweak settings keepeing on your mind that this particle system is first pulse and every new particle system would be the same except start frame and end frame*
- With particle system being selected open Particle Specials menu and choose Create Pulsing Particle Emission
- Set inputs (see description below)
- Click OK
* Also two custom properties beat
, beat_loop
and loop
with their corresponding values would be added to each particle system.
- BPM Beats per minute or pulses per minute. First beat frame will be taken from selected particle system from Frame Start.
- Beats per Loop Allows to skip beats in a loop. Ignore this if you don't need to skip beats.
- Skip Nth Beat Comma-separated list of beats to skip in a loop. Ranges are also accepted. Example:
1, 3-4
. Leave it empty if you don't need to skip beats. - Hide Skipped Beats Add but hide skipped beats. Useful if you need a little manual tweaks for some beat variations.
- Frame End No beats after this frame.
- Change Seed Sets seed to a different value for every created particle system.
- Custom Property Name Name of the custom property of particle settings to be controlled by f-curve below. Property have to be created before. Leave it empty if you don't need custom property.
- F-curve F-curve to set particle settings custom property for every created particle system. F-curve will be evaluated at a Frame Start for created particle system and this value will be used as a value of a custom property. Leave it empty if you don't want this behavior.
- Set Non-Custom Properties Takes value from a custom property of particle system settings and copies it to a non-custom property with the same name. This allows you to change properties like
count
(total number of particles) per pulse which is not animatable otherwise. Doesn't do anything if Custom Property Name and F-curve omitted. To get non-custom property name quickly you can right click on the setting and select Copy Data Path.
When you specify Custom Property Name and F-curve each particle system corresponding to one beat will contain certain value inside custom property. Value is evaluated from F-curve at a Frame Start of particle system. And this value remains constant for each particle system during the lifetime of each particle. This value could be used to control the size of a particles with driver (driver must be added before applying this add-on to be copied across all particle systems) and to control material properties with Attribute shading node (set Type to Instancer and Name to custom property name).