案例2:角色动画效果
在本教程中,你将学习如何在Scratch中通过切换角色造型创建生动的动画效果,使角色看起来更加栩栩如生。
学习目标
- 掌握角色造型的创建与编辑
- 学习通过造型切换创建角色动画
- 理解动画帧与播放速度的关系
- 创建行走、跳跃等基础角色动画
步骤 1:了解角色造型
在Scratch中,每个角色可以有多个不同的造型(costume),通过快速切换这些造型,我们可以创建出角色的动画效果:
- 造型是角色的不同外观状态
- 默认的小猫角色已经包含了两个造型
- 通过编程切换造型,可以创建行走、说话、跳跃等动画效果
查看角色造型:
- 打开Scratch编辑器
- 点击角色区域中的小猫
- 在编辑区域上方,点击"造型"选项卡
- 你将看到小猫的两个默认造型:costume1和costume2
提示
动画的基本原理是利用人眼的视觉暂留效应,快速播放一系列略有差异的图像,从而产生连续运动的错觉。在Scratch中,我们通过快速切换造型来实现这一效果。
步骤 2:创建简单的行走动画
现在,我们来创建一个简单的行走动画,让小猫看起来像是在行走:
编写代码:
首先,点击"事件"类别,拖出一个"当绿旗被点击"积木
从"控制"类别拖出一个"重复执行"积木(无限循环)
在循环内部,添加以下积木:
- 从"外观"类别(紫色)拖出"下一个造型"积木
- 从"控制"类别拖出"等待1秒"积木,并将时间改为0.2秒
- 从"移动"类别拖出"移动10步"积木
再添加一个"碰到边缘就反弹"积木,防止角色移出舞台
效果说明
这段代码会让小猫不断切换造型,因为默认的两个造型分别显示小猫抬起左脚和右脚的状态,所以快速切换时会产生行走的效果。同时,角色会向前移动并在碰到边缘时反弹。
调整动画速度:
动画的流畅度取决于造型切换的频率。你可以通过调整"等待"积木的时间来改变动画速度:
- 缩短等待时间(如0.1秒)会让动画更快
- 延长等待时间(如0.5秒)会让动画更慢
- 尝试不同的等待时间,找到最合适的动画效果
步骤 3:添加更多造型创建更丰富的动画
两个造型的切换可能看起来有些简单。现在,我们来添加更多的造型,创建更丰富的行走动画:
添加新造型:
在"造型"选项卡中,点击右下角的"选择造型"按钮
在造型库中搜索"cat",你会看到许多猫的造型
选择不同姿势的猫咪造型,例如"Cat Walking1"、"Cat Walking2"等
点击"确定"添加所选造型
调整造型顺序:
为了使动画流畅,造型的顺序很重要。你可以拖动造型来调整它们的顺序,使其形成一个完整的动作循环。例如,对于行走动画,顺序可能是:
- 左脚抬起
- 双脚落地
- 右脚抬起
- 双脚落地
创意提示:
如果找不到合适的现成造型,你也可以自己编辑造型:
- 在造型编辑器中点击"编辑"按钮
- 使用绘图工具修改造型
- 也可以点击造型编辑区域的"复制"按钮创建现有造型的副本,然后稍作修改
- 这样可以创建更多连续的动画帧
步骤 4:创建交互式动画
让我们更进一步,创建一个可以响应用户输入的交互式角色动画:
创建左右行走动画:
首先,确保你已经有了多个行走的造型
点击"代码"选项卡返回编程区域
创建以下积木组合:
效果说明
这段代码创建了一个交互式角色:按下左右方向键,角色会切换造型并移动,形成行走动画。当没有按键时,角色会切换到站立的造型(第一个造型)。
改进方向控制:
在Scratch中,有两种方法让角色在移动时改变朝向:
方法1:使用"面向"积木
当按下左右方向键时,使用"面向"积木改变角色朝向:
- 右键:面向90度(右方)
- 左键:面向-90度(左方)
方法2:使用翻转方式
针对只有一组造型的角色,可以使用翻转设置:
- 点击角色编辑区域上方的"方向"设置
- 选择"左右翻转"选项
- 这样角色就会根据移动方向自动翻转
步骤 5:创建跳跃动画
除了行走动画,我们还可以创建跳跃动画。这种动画通常结合了造型变化和位置移动:
准备跳跃造型:
- 在造型库中找到或创建一个跳跃姿势的造型
- 确保有一个站立姿势的造型(通常是默认造型)
创建跳跃代码:
创建一个新的事件:当空格键被按下时
添加以下代码块:
效果说明
这段代码会在空格键被按下时执行跳跃动画:角色切换到跳跃造型,然后使用"y坐标增加"积木向上移动,短暂停留后下落,最后切回站立造型。这创建了一个简单但有效的跳跃动画。
进阶跳跃效果:
想要创建更真实的跳跃效果,可以尝试以下改进:
- 添加重力效果:让角色下落的速度逐渐增加
- 添加缓动效果:让角色上升的速度逐渐减小
- 添加跳跃声音:在跳跃开始时播放音效
- 添加落地动画:在角色落地时短暂显示一个"着地"造型或添加粒子效果
总结与挑战
恭喜!你已经学会了如何在Scratch中创建角色动画:
- 使用多个造型创建角色动画
- 控制角色动画的播放速度
- 创建交互式动画,响应键盘输入
- 结合造型变化和位置移动创建复杂动画
进阶挑战:
尝试创建以下动画效果:
- 添加奔跑动画:当按住Shift键的同时按方向键时,角色移动速度更快,动画播放也更快
- 创建攻击/动作动画:当按下特定键(如A键)时,角色执行攻击动作
- 创建情绪表达动画:当按下数字键时,角色展示不同的表情(开心、生气、惊讶等)
- 尝试使用特效积木(如颜色、大小、透明度)增强动画效果