案例3:特效动画
在本教程中,你将学习如何在Scratch中使用各种图形特效创建绚丽多彩的动画效果,让你的项目更加生动有趣。
学习目标
- 掌握Scratch中的图形特效积木
- 学习创建颜色变化、大小缩放和透明度动画
- 理解如何使用特效创建视觉反馈
- 创建粒子效果和复杂的视觉动画
步骤 1:了解Scratch中的图形特效
Scratch提供了多种图形特效积木,可以用来改变角色的外观。这些特效积木位于"外观"类别(紫色区域)中:
基本特效积木:
- 将颜色特效增加25
改变角色的颜色
- 将鱼眼特效增加25
创建鱼眼镜头效果
- 将旋转特效增加25
创建螺旋扭曲效果
更多特效积木:
- 将像素化特效增加25
创建像素化效果
- 将马赛克特效增加25
创建多重复制效果
- 将亮度特效增加25
调整角色的亮度
提示
每个特效的值可以是正数也可以是负数,特效值越大,效果越明显。使用"清除图形特效"积木可以恢复角色的原始外观。
尺寸和透明度控制:
- 将大小增加10
改变角色的尺寸
- 将大小设为100%
设置角色的精确尺寸
- 将幽灵特效增加25
控制角色的透明度
- 清除图形特效
移除所有应用的图形特效
步骤 2:创建彩虹色变换动画
让我们从一个简单的颜色变换动画开始,使角色不断变换颜色,创建彩虹效果:
创建代码:
首先,点击"事件"类别,拖出一个"当绿旗被点击"积木
从"外观"类别拖出一个"清除图形特效"积木(确保开始时没有特效)
从"控制"类别拖出一个"重复执行"积木(无限循环)
- 在循环内,添加"将颜色特效增加5"积木
- 添加"等待0.1秒"积木控制变化速度
效果说明
这段代码会使角色不断变换颜色,因为颜色特效的值会持续增加。当值达到100时,颜色会循环回来,形成彩虹色循环效果。通过调整增加的数值和等待时间,可以控制颜色变换的速度。
创意挑战:
尝试修改上面的代码,探索更多颜色效果:
- 同时改变多种特效,例如颜色和亮度
- 使用条件语句,当特效值达到某个范围时改变方向
- 结合按键事件,让用户控制颜色变化
步骤 3:创建呼吸灯效果
接下来,我们将学习如何使用大小变化和透明度(幽灵特效)创建平滑的呼吸灯效果:
准备工作:
- 为了更好的效果,建议使用一个简单的圆形或灯泡形状的角色
- 你可以在造型库中选择一个合适的形状,或者自己绘制一个
- 如果使用小猫角色,可以先切换到一个简单的造型
创建呼吸灯代码:
点击"事件"类别,拖出一个"当绿旗被点击"积木
添加"清除图形特效"和"将大小设为100%"积木重置角色状态
从"变量"类别创建一个名为"方向"的变量
添加"将方向设为1"积木(用于控制效果是增加还是减少)
从"控制"类别拖出一个"重复执行"积木
- 在循环内,添加"将幽灵特效增加(方向)"积木
- 添加"将大小增加(方向)"积木
- 添加"等待0.05秒"积木
添加一个条件判断:
效果说明
这段代码创建了一个呼吸灯效果:角色的透明度和大小会同时变化,当达到一定值后改变方向,形成周期性的"呼吸"效果。通过"方向"变量来控制特效值是增加还是减少。
提示
可以调整条件判断中的数值来改变呼吸的幅度。幽灵特效的值在0到100之间,100表示完全透明。大小的值可以从很小(如20%)到很大(如200%)。
步骤 4:创建特效交互动画
现在我们来创建一个能够响应用户交互的特效动画,当鼠标移到角色上时触发特效:
创建交互式特效:
点击"事件"类别,拖出一个"当绿旗被点击"积木
添加"清除图形特效"积木
从"控制"类别拖出一个"重复执行"积木
在循环内,添加一个"如果那么否则"条件积木
条件设置为"碰到鼠标指针?"
如果条件为真,添加以下积木:
- 将鱼眼特效增加5
- 将大小增加2
- 等待0.1秒
否则部分添加以下积木:
- 将鱼眼特效设为0
- 将大小设为100%
效果说明
这段代码创建了一个交互式特效:当鼠标指针移到角色上时,角色会逐渐变大并应用鱼眼特效;当鼠标离开时,角色会立即恢复正常。这种效果可以用于为游戏或交互项目创建视觉反馈。
扩展想法:
你可以将这种交互特效应用到更多场景:
- 创建按钮悬停效果:鼠标移到按钮上时轻微放大或变色
- 创建选择菜单:被选中的项目应用特效作为视觉提示
- 创建收藏品效果:在游戏中当角色靠近可收集物品时,物品闪烁或脉动
- 结合声音特效增强交互体验
步骤 5:创建粒子效果系统
最后,我们来学习如何创建一个简单的粒子效果系统,这种效果可用于模拟火焰、烟雾、水花等视觉效果:
准备工作:
- 创建一个新的角色作为粒子,可以是一个小圆点或星星形状
- 将这个角色命名为"粒子",并设置初始大小较小(约30%)
创建主角色代码:
首先,为主角色(可以是小猫)创建以下代码:
点击"事件"类别,拖出一个"当绿旗被点击"积木
从"控制"类别拖出一个"重复执行"积木
- 在循环内,添加"分身为[粒子]"积木(从"外观"类别)
- 添加"等待0.1秒"积木控制粒子产生频率
创建粒子角色代码:
然后,点击"粒子"角色,为其创建以下代码:
点击"事件"类别,拖出一个"当分身产生时"积木
添加"移到[主角色v]位置"积木(粒子从主角色位置开始)
添加"将大小设为30%"和"清除图形特效"积木
添加"显示"积木确保粒子可见
设置随机方向和初始速度:
- 添加"面向(随机数[1]到[360])度"积木
- 添加"将变量[速度]设为(随机数[1]到[5])"积木
从"控制"类别拖出一个"重复直到"积木,条件设为"幽灵特效 > 95"
- 在循环内,添加"移动[速度]步"积木
- 添加"将幽灵特效增加2"积木(使粒子逐渐消失)
- 添加"将大小增加-0.5"积木(使粒子逐渐变小)
- 添加"将颜色特效增加2"积木(使粒子颜色变化)
- 添加"等待0.05秒"积木
最后添加"删除此分身"积木
效果说明
这个粒子系统会从主角色位置不断产生粒子,每个粒子会朝随机方向移动,同时逐渐变小、改变颜色并最终消失。这种效果可以模拟火焰、烟雾、魔法或能量场等视觉效果。通过调整参数,可以创建各种不同类型的粒子效果。
创意改进:
尝试以下方法改进粒子效果:
- 设计不同形状的粒子(星星、火焰、水滴等)
- 根据粒子类型选择不同的特效组合
- 添加重力效果:使粒子向下加速
- 让粒子跟随鼠标指针,创建轨迹效果
- 结合键盘控制,只在按下特定键时产生粒子
总结与挑战
恭喜!你已经掌握了Scratch中的特效动画创建技巧:
- 使用图形特效积木创建视觉效果
- 创建颜色变换和呼吸灯动画
- 设计交互式特效响应用户输入
- 构建简单的粒子效果系统
进阶挑战:
尝试完成以下特效动画项目:
- 创建一个魔法魔杖:当点击舞台时,在点击位置产生闪烁的魔法粒子
- 设计一个能量场效果:角色周围环绕着不断变色的光环
- 制作天气效果:创建雨滴、雪花或落叶的粒子系统
- 创建一个交互式按钮菜单,使用特效强调当前选择的选项