闪烁的光斑-Scratch艺术编程

在阳光灿烂的日子里,当你走出户外,你是否曾留意过树荫下斑驳的阳关,清风拂来,树叶婆娑,地上的光斑闪烁跳跃,如生命般灵动,不禁让人浮想联翩。越是简单的事物,越是能够给我们展现最真挚的美。

创作描述

通过Scratch编程制作光斑闪烁的效果,各色的圆形光斑在舞台上不断产生,然后逐渐消失。项目效果如视频所示:

闪烁的光斑效果

编程思路

针对本作品,我们可以分三步来实现:

  1. 绘制一个光斑角色,并通过克隆技术产生多个光斑并在舞台的随机位置出现
  2. 通过程序改变光斑的颜色
  3. 让光斑在一定时间之后逐渐消失

程序设计

1.绘制光斑并克隆

我们首先需要绘制一个圆形角色作为光斑,打开Scratch编程软件,删除默认的小猫角色,并旋转绘制一个角色,如图:

Scratch选择绘制角色
绘制一个角色

使用Scratch的绘图工具,绘制一个小圆点,如图:

绘制圆形光斑角色
绘制圆形光斑角色

[小技巧]:在绘制圆形光斑的时候,按住shift键,使用圆形工具就可以画出一个正圆了。

不过只有一个光斑可不行,我们希望在舞台上呈现缤纷的光斑闪烁效果,是不是需要手动绘制许许多多的光斑角色呢?

其实没有必要,强大的Scratch为我们提供了克隆功能,可以使用这些功能克隆出多个与角色相同的的克隆体,犹如角色的分身术。

我们可以使用克隆指令不停的克隆光斑角色,这需要使用重复执行,由于计算机执行指令的时间非常短,需要增加一个等待时间指令,具体程序如图所示:

克隆光斑
克隆光斑

单击绿旗执行这段程序时,会发现舞台上面的圆形光斑似乎没有什么变化,此时拖动一下光斑角色,发现拖走一个还有一个,如图所示:

克隆出的光斑
克隆出的光斑

如果这些克隆出来的光斑能随机出现在舞台的不同位置就完美了。要控制角色的位置,可以使用移到(x,y)指令,也可以是移到角色指令(包括鼠标指针和随机位置),可是怎样才能控制克隆体的位置呢,这就需要用到当作为克隆体启动时指令了,一旦角色被克隆出来,就会立即执行该指令下方的程序了,我们将光斑本体隐藏起来,让克隆体在舞台上随机一个位置出现,代码如下:

克隆光斑并随机位置
克隆光斑并随机位置

执行程序,可以看到每隔1秒,就会随机出现一个圆形光斑,效果如下:

随机分布在舞台上的克隆体
随机分布在舞台上的克隆体

2.闪烁效果及色彩变化

通过刚才的程序,已经实现了克隆光斑的效果,但是光斑并没有不断闪烁效果,而且越来越多,这显然不是我们想要的效果,如何删除这些多余的光斑呢,这就需要用到删除此克隆体指令了,我们可以对刚才的程序稍作修改,一次克隆20个光斑,然后等待1秒,而每个克隆体在产生1秒之后自动删除。修改代码如下:

改进的克隆光斑程序
改进的克隆光斑程序

这样一来,就可以实现光斑的闪烁效果了,只是光斑的颜色太单一,我们需要给光斑换点花样,比如光斑的大小,光斑的颜色,光斑的亮度等,在Scratch中,有一个专门设置角色的特效指令,如图:

外观特效指令
外观特效指令

针对克隆体,添加特效设置指令如下:

加入特效设置的克隆体启动程序
加入特效设置的克隆体启动程序

改进后的效果如图所示:

程序改进之后的效果
程序改进之后的效果

3.逐渐消失

我们让光斑出现1秒之后立刻消失,是不是感觉有些太过突然了,可以让光斑渐渐消失,这在编程中应用得非常广泛,那么如何让光斑缓缓消失呢?

可以利用角色的虚像特效,Scratch中的虚像就是透明度,虚像为0,也就是透明度为0,就表示完全不透明,如果将虚像设置为100,则角色完全透明,这就看不见了,是不是很简单。

我们分多次增加角色的透明度即可,编写代码如下:

完整的克隆体启动程序
完整的克隆体启动程序

可以尝试着设置一个黑色背景,其效果会更好,如图所示:

黑色舞台背景下呈现的效果
黑色舞台背景下呈现的效果

总结

我们采用了最简单的基本图形-圆形作为光斑,虽然只绘制了一个光斑角色,但通过克隆指令,可以克隆出多个光斑克隆体,并且可以改变克隆体的位置、大小、颜色特效和虚像特效值等,形成光斑闪烁的效果。

实现闪烁光斑的效果方法并不唯一,可以灵活处理,比如克隆的时候,不加等待指令,或者多绘制几个不同的造型都是可以的,根据你的想法,大胆地去尝试,大胆地去修改吧,从而感受Scratch的强大和灵活之处。

有需要本作品的读者,可以联系作者。

© 版权声明
THE END
喜欢就支持一下吧
点赞11赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片