Needs Particles expansion. Uses 4 emitters, with one effector per emitter. Over time the patterns change as the emitter strength is increased and decreased.
No media required.
sync on
sync rate 60
autocam off
backdrop on
color backdrop 0
set ambient light 50
position camera 0, 6, -12
point camera 0,-1,0
SET PHYSICS FRAME RATE 60
create bitmap 1,30,30
for n = 1 to 14
circle 15,15,n
next n
get image 1,1,1,30,30,1
delete bitmap 1
`load image "particle.bmp", 1
for n = 1 to 4
MAKE BOX EMITTER n, 600
SET EMITTER RATE n,30
SET EMITTER EXPLODE n, 0.1
SET EMITTER PARTICLE VELOCITY n,1,0
SET EMITTER PARTICLE LIFE n,11,10
SET EMITTER PARTICLE MASS n, 50, 50
SET EMITTER PARTICLE SIZE n, 0.1, 50
make point effector n + 10
set point effector n + 10, -30
bind effector to object n+ 10, n
texture object n, 1
set object transparency n, 1
next n
` MAKE GRAVITY EFFECTOR 10
` BIND EFFECTOR TO object 10, 1
` SET GRAVITY EFFECTOR 10, 0, -0.2, 0
r# = 0.5
g# = 0.3
b# = 0.1
f# = -30
rc# = 0.5
gc# = 0.3
bc# = 0.1
fc# = -0.1
repeat
for n = 1 to 4
point object n, 0,4,0
xrotate object n, 90
set emitter particle color n, r#,g#,b#,255
set point effector n + 10, f#
next n
position object 1, 4,4,4
position object 2, 4,4,-4
position object 3, -4,4,-4
position object 4, -4,4,4
UPDATE PHYSICS
sync
inc r#, rc#
inc b#, bc#
inc g#, gc#
inc f#, fc#
if r# > 255 or r# < 0 then rc# = rc# * -1
if g# > 255 or g# < 0 then gc# = gc# * -1
if b# > 255 or b# < 0 then bc# = bc# * -1
if f# > 20 or f# < -250 then fc# = fc# * -1
until spacekey()
BatVink
