2026,你好!分享三例漂亮的烟花源码,愿您的生活似烟花般绚烂多彩!


马上就要过新年了,作为学编程的小朋友们来说,如果能亲自动手编写出漂亮的烟花效果代码,一定会带给你小小的成就感!
好,今天,我们就来分享三例不同的烟花效果,分别是:喷花筒、满天星和礼花弹效果。(源码见文末)
首先我们需要了解下,制作烟花用到的几个关键技巧:
1、画笔
烟花真正呈现出的效果是画笔来实现的。那些喷射的烟火,或者飞溅出的,像火星儿的艺术效果,并不是存在这样的角色,而是由Scratch画图功能,通过颜色、亮度,以及方向等来实现的。
所以,对于实现烟花所需要角色没有要求。因为,我们只是需要角色的替身–克隆体,由克隆体执行设计的程序,而本体是隐藏起来的。
2、克隆
克隆是Scratch里一个非常重要的功能,克隆的功能是复制角色,新复制的角色称为克隆体,原来的角色称为本体。在Scratch中,每个克隆体又都是独立的实体,它们可以独立地执行任务,包括再次克隆自己。
克隆出来的克隆体,又对自己实现了克隆,这就是实现烟花炸开的关键技术。那些五颜六色、四处飞溅的烟花效果,都是克隆体再次克隆,并通过设计不同的画笔形成的。
3、私有变量和随机函数
执行“克隆”积木指令时,会复制一个与本体一模一样的克隆体,不仅模样相同,位置、方向、大小和造型等属性也相同。那么,如何来实现五颜六色、以及不同方向飞溅的烟花呢,答案是:使用私有变量,给每一个再克隆体,赋予不同的属性,而这些属性,往往又是利用随机函数来达到千变万化的效果。
4、模拟抛物线和自由落体运动
我们知道,由于地球引力的作用,从地面向上抛出的物体,会先快后慢,达到最高处时,速度为零,然后开始降落,并且速度越来越快。
所以,我们需要将烟花升空或降落的过程,分解为水平速度和垂直速度,并定义两个不同私有变量,如:水平移位、垂直移位。其中:烟花升空时,垂直速度持续减少,而当烟花降落时,垂直速度不断加大。从而模拟出抛物线和自由落体运动。
5、虚像和图章
烟花在黑暗的天空中实现拖尾渐隐效果,又是如何实现的呢?答案是:虚假+图章。通过不断地刷新(图章)铺满舞台的黑框角色来实现的。
虚像:在Scratch中,虚像是一种特效指令。它可以用来创建角色的透明效果,使角色看起来像幽灵一样。通过调整虚像的数值,可以控制角色的透明度,数值越大,角色就越透明。使用虚像功能可以让角色在舞台上消失或变得半透明,创造出神秘或梦幻的效果。
图章:它允许用户将角色的造型复制到画布上,类似于在画布上盖章一样。通过使用图章功能,用户可以快速创建多个相同造型的角色,而无需手动绘制每个角色。
所以,通常来说,实现烟火类效果,需要有两个角色:

角色1,烟花的本体,主要实现烟花被点燃后的飞行路线,以及用来实现画笔功能。
角色2,一张铺满整个舞台的,实现拖尾效果的黑色图片。
有了以上编程技术,实现不同的烟花效果也就轻车熟路了。
一、喷花筒
运行效果如下:

特点是:鼠标在舞台上点击某个点后,即刻喷射出缤纷多彩的烟火效果。
二、满天星
运行效果如下:

特点是:不停地从舞台底部发射出烟火,烟火在空中持续炸开,形成满天星式的烟花效果。
三、礼花弹
运行效果如下:

(以上音效未录制)
特点是:按空格键,会从舞台底部中间随机位置向上发射一颗礼花弹,到达一定高度后爆炸,绽放出近似圆形的五彩缤纷的烟花,非常壮观。
用 3 款烟花源码,为同学们点亮 2026 的编程星光✨
源码获取方式:请在在公众号主页发消息:烟花,获取下载地址。
~~~
发文不易,点赞支持


夜雨聆风
