fire
shape(200, 0.5, 1.5)
.scale(0.5, 0.5)
.color([0.5, 2].smooth(1), 0.3, [.1, .3].smooth(1))
.repeat(2, 2)
.modulateScale(osc(3, 0.5), -0.6)
.add(o0, 0.9)
.scale(0.9)
.add(voronoi()
.brightness(.7)
.luma(.9)
.color(1, .4, 0)
.mask(shape(() => Math.floor(time % 10 + 3))
.modulateRepeatX(noise())
.repeatY(4))
.brightness(-.1))
.add(voronoi()
.brightness(.7)
.luma(.9)
.color(.9, .6, 0)
.mask(shape(() => Math.floor((time * 1.1) % 10 + 3))
.modulateRepeatX(noise(.1).blend(voronoi()))
.repeatY(3))
.brightness(-.1))
.add(voronoi()
.brightness(.7)
.luma(.9)
.color(.8, .6, .5)
.mask(shape(() => Math.floor((time * 1.2) % 10 + 3))
.repeatX(6)
.modulateRepeatY(noise(.1).blend(voronoi())))
.brightness(-.1))
.out()