带你读《少儿人工智能趣味入门动画与游戏编程一本通》之二:角色的基础:“运动”“外观”“声音”模块

简介: Scratch是图形化的编程语言,它具有学习环境趣味性强、操作简单且直观等特点,很好适合6-12岁的孩子学习。本书是立足于Scratch 3.0版本的少儿编程入门书,能让孩子轻松愉快地掌握编程技能,锻炼和提高思维能力和创造力,为迎接人工智能时代的到来做好准备。本书以对Scratch中积木块的分类讲解作为主线,并将编程的核心思想融入大量精心设计的案例,让孩子在实际动手操作中更直观、更深刻地理解不同积木块的运用。本书对积木块的功能和用法解释详尽,语言通俗易懂,能够减少孩子对编程的畏惧心理,没有编程基础的家长也能陪伴孩子一起阅读,在融洽的亲子互动氛围中,自信、愉快地完成学习。

点击查看第一章

02 角色的基础:“运动”“外观”“声音”模块

从这一章开始,我们会分模块讲解Scratch中的积木块。“运动”“外观”“声音”这三个模块是直接针对角色和舞台背景变化的模块,也是Scratch中使用频率较高的模块。

2.1“运动”模块:让角色更生动

在Scratch中,要想让舞台上的角色动起来,需要使用“运动”模块中的积木块。角色的运动方式包括角色的移动、方向和旋转,其中角色的移动又分为绝对移动和相对移动两类。下面将详细介绍这几种运动方式。

2.1.1角色的绝对移动

在Scratch中,角色的绝对移动是通过指定坐标来完成的。在上一章中提到了,舞台处在一个长480步、宽360步(每1个单位就是1步)的坐标系下,舞台上所有的位置都有一个对应的坐标。以初始角色“角色1”(小猫)为例,创建新项目后,小猫位于舞台的正中央,此时坐标为(0,0),然后用鼠标将小猫拖动到舞台的其他位置,如下图所示,在角色列表的“x”和“y”框中可观察到坐标值的变化。下面分类介绍“运动”模块中的相关积木块。

image.png

类型 1
分别设置角色的x坐标值和y坐标值。有两个积木块能实现这一效果。为位于原点的小猫添加“将x坐标设为(100)”积木块,可以看到小猫的坐标变为(100,0),如下左图所示。让小猫回到原点,删除已添加的积木块,再添加“将y坐标设为(100)”积木块,可以看到小猫的坐标变为(0,100),如下右图所示。

image.png

类型 2
同时设置角色的x坐标值和y坐标值。为小猫添加“移到x:(-100)
y:(-100)”积木块后,小猫的位置瞬间发生了变化,如下左图所示。为小猫添加“在(1)秒内滑行到x:(-100)y:(-100)”积木块后,小猫的位置同样会发生变化,与前一积木块的区别在于,这是一个人眼可见的动态过程,如下右图所示。通过修改秒数,可以控制移动过程所持续时间的长短。

image.png

小提示
如果要随意指定角色的坐标值,可以使用“移到(随机位置)”积木块和“在(1)秒内滑行到(随机位置)”积木块。两者的区别和类型2中两个积木块的区别相同:前者实现的移动过程是瞬间完成的,人眼几乎无法察觉,如下左图所示;后者实现的则是一个人眼可见的动态过程,并且这一过程持续的时间是可以调控的,如下右图所示。

image.png

类型 3
在舞台上显示角色的x坐标值和y坐标值。除了让角色移动以外,还可以实时显示角色的x、y坐标值。在“运动”模块中勾选“x坐标”和“y坐标”积木块前面的复选框,如下左图所示,就能在舞台中实时显示角色的x、y坐标值,如下右图所示。

image.png

2.1.2角色的相对移动

角色的相对移动是指以角色原来的位置为起点,通过指定移动的步数来实现角色的移动。下面分类介绍相关的积木块。
类型 1
直接设置移动步数。是指让角色从原来的位置向着面朝方向移动指定的步数。为小猫添加“移动(100)步”积木块,由于小猫默认面朝右方,所以小猫从原来的位置向右移动了100步,如右图所示。

image.png

类型 2
设置相对坐标。是指通过分别增加x、y坐标值让角色移动到某个位置上。为小猫添加“将x坐标增加(100)”和“将y坐标增加(100)”积木块后,小猫从原来的位置分别向x和y的正值方向移动了100步,如右图所示。

image.png

2.1.3角色的方向

在“运动”模块中,涉及角色方向变化的积木块有“面向(90)方向”和“面向(鼠标指针)”。这两个积木块都可以直接让角色的方向发生变化。
角色的方向指的是角色的面朝方向。以初始角色小猫为例,在创建新项目后,小猫面朝的方向是右方,对应的角度为90°,如下左图所示。在“运动”模块中,“面向(90)方向”积木块就代表了角色的面朝方向,可以通过更改积木块中的数字或在弹出的圆盘中拖动指针来控制角色的面朝方向,如下右图所示。

image.png

将“面向(90)方向”积木块中的数字更改为“135”,更改后小猫的面朝方向发生了变化,如下图所示。

image.png

若为小猫添加“面向(鼠标指针)”积木块,如下左图所示,则在舞台中,小猫的面朝方向会随着鼠标指针的移动而变换,如下右图所示。

image.png

2.1.4角色的旋转

生活中,我们会经常看到旋转的风车、齿轮之类的物品。旋转也是角色运动的一种方式,通常是角色围绕着某一个点或某一根轴旋转。在Scratch中,角色旋转的方式有两种:一种是绕中心点旋转,另一种是镜像翻转。下面分别讲解。
类型 1
绕中心点旋转。为小猫添加“右转(15)度”积木块,并且修改框中的数字为“45”,单击积木块后,小猫绕中心点向右(顺时针)旋转了45°,如下左图所示;然后让小猫恢复原状,再为其添加“左转(15)度”积木块,并且修改框中的数字为“45”,单击积木块后,小猫绕中心点向左(逆时针)旋转了45°,如下右图所示。

image.png

类型 2
镜像翻转。当角色运动到舞台边缘时,若要让角色“回头”,就要用到“碰到边缘就反弹”积木块,这里的“反弹”用到的旋转方式便是镜像翻转。镜像翻转也有两种情况:一种是正向镜像翻转,另一种是反向镜像翻转。在Scratch中,正向镜像翻转被称为“左右翻转”,而反向镜像翻转被称为“任意旋转”,现在来看看效果,如下图所示。
小提示
旋转实现的是运动的一个过程,而不是一个结果。

image.png

试一试
如右图所示的脚本能让小猫在舞台上沿着华丽的曲线运动。自己动手操作一下,看看会有怎样的效果吧。

image.png

2.2“外观”模块:让角色更形象

要让角色在舞台上更形象,就需要让角色产生更多变化,此时就要用到“外观”模块。“外观”模块的功能主要有五个方面:切换角色的造型;改变角色的大小;让角色看起来像在思考或说话;为角色的外观添加特效;调整角色在舞台上的显示层次。

2.2.1造型的切换

造型切换是角色能够生动地展示在舞台上的秘诀之一。通过不断切换造型,可以让角色呈现动态效果。
下面以角色库中的“Shark 2”(鲨鱼)作为示例,来看看角色的造型是如何切换的。将角色库中的“Shark 2”角色添加到角色列表,再单击“造型”标签,如下左图所示,切换至“造型”选项卡,在左侧的造型列表中可以看到“Shark 2”角色所有造型的缩略图,如下右图所示。

image.png

使用“下一个造型”积木块后,鲨鱼角色会切换为造型列表中当前造型之后的一个造型,如下左图所示;使用“换成(shark2-c)造型”积木块后,鲨鱼角色会直接切换为指定的“shark2-c”造型,如下右图所示。

image.png

2.2.2大小的变化

在Scratch中,除了在角色列表中修改角色的大小,还可以通过添加“将大小增加()”积木块或“将大小设为()”积木块来修改角色的大小。“将大小增加()”积木块可将角色大小在原来的大小基础上增减指定的数值,“将大小设为()”积木块则可将角色大小变为指定的数值。下面以初始角色小猫为例,来看看这两个积木块实现的效果。
添加积木块之前,小猫的大小为100%。使用“将大小增加(50)”积木块后,小猫的大小会从100%变为150%(100%+50%=150%),如下左图所示;使用
“将大小设为(50)”积木块后,小猫的大小会从100%变为50%,如下右图所示。

image.png

2.2.3思考和说话

现在角色已经能够在舞台上自由地切换造型和改变大小了,但是角色的外观不只是切换造型和改变大小,我们还可以让它看起来像在思考和说话,这样会让角色显得更有生机。下面还是用小猫来展示角色思考和说话的效果。
“思考()”和“思考()()秒”这两个积木块可让角色显示指定的思考内容,思考的内容以浮云框的形式展示,“思考()()秒”积木块还会对浮云框显示的时间进行限制。为小猫添加“思考(嗯……)”积木块,单击积木块之后,小猫的右上角会出现一个浮云框,浮云框中显示的“嗯……”就是小猫思考的内容,如下左图所示;重新给小猫添加“思考(嗯……)(2)秒”积木块,单
击积木块之后,小猫的右上角也会出现一个浮云框,如下右图所示,但是浮云框显示2秒之后便会消失。

image.png

“说()”和“说()()秒”这两个积木块可让角色显示指定的说话内容,说话的内容以气泡框的形式展示,“说()()秒”积木块还会对气泡框显示的时间进行限制。为小猫添加“说(你好!)”积木块,单击积木块之后,小猫的右上角会出现一个气泡框,气泡框中显示的“你好!”就是小猫说话的内容,如下左图所示;重新给小猫添加“说(你好!)(2)秒”积木块,单击积木块之后,小猫的右上角也会出现一个气泡框,如下右图所示,但是气泡框显示2秒之后便会消失。

image.png

试一试
如下图所示的两段脚本能让小猫和小企鹅两个角色之间进行一番对话。

image.png

2.2.4角色的特效

角色的特效是指给角色的外观添加一些特殊的修饰,如下图所示。

image.pngimage.png
image.png

小提示
这里的数值与角色大小的数值是一样的,都是百分数。

2.2.5角色的图层

通俗地讲,Scratch中的图层就像是含有角色或背景等元素的透明胶片,一张张叠放在一起,形成最终的舞台效果。图层叠放的顺序不同,会得到不同的舞台效果。下面通过一个例子来帮助理解吧。
保留默认的小猫角色,然后添加新的角色“Fish”(鱼)和“Lion”(狮子),如下图所示。可以清楚地看到,在舞台上,鱼遮住了小猫的一部分,而狮子又遮住了鱼的一部分,所以,狮子的图层在最上面,鱼的图层在中间,而小猫的图层在最下面。

image.png

为小猫添加“移到最(前面)”积木块,单击积木块之后,小猫会移动到所有角色的最上面,如下左图所示;现在让小猫恢复原状,然后添加“(前移)(1)层”积木块,单击积木块之后,小猫会移动到鱼的上面,把鱼遮住一部分,但小猫还是会被狮子遮住一部分,如下右图所示。

image.png

2.3“声音”模块:让角色更有活力

“声音”模块也是项目修饰中一个不可或缺的成分,它可以增加项目的互动性、体验性及生动性。无论是角色还是背景,添加了声音之后,都会更加生动和活跃。给角色或背景添加声音后,还可以修改声音的音效及音量。

2.3.1角色的声音

可以添加Scratch自带声音库中的声音,如下图所示,也可以将外部音效
上传到项目中,还可以自己录制声音。

image.png

2.3.2音调和音量的区别

在“声音”模块中,“音调”和“音量”是有区别的。“音调”主要由声音的频率决定,同时也与声音的强度有关,表示人的听觉分辨一个声音的调子高低的程度;“音量”又称响度、音强,是指人耳对所听到声音的大小、强弱的主观感受。
试一试
通过如下图所示的两段脚本来感受一下音调和音量的区别。

image.png

2.4热闹的森林

下面来编写一个综合性较强的案例。这个案例要运用本章所介绍的“运动” “外观” “声音”模块中的多个积木块,以森林作为背景,有不同的动物在自由地活动,并发出欢快的声音。
实例文件:实例文件第2章:热闹的森林.sb3
步骤 01
选择Scratch自带背景库中的“Forest”(森林)作为舞台背景。单击“选择一个背景”按钮,如右图所示,在弹出的界面中单击“Forest”背景素材,如下图所示。

image.png
image.png

步骤 02
添加Scratch自带角色库中的“Grasshopper”(蚱蜢)角色。单击“选择一个角色”按钮,如右图所示,在弹出的界面中,先在顶端单击“动物”分类,然后在下方单击选择“Grasshopper”(蚱蜢)角色,如下图所示,将其添加到角色列表中。

image.png
image.png

步骤 03
添加好角色之后,先删除初始角色“角色1”(小猫),如下左图所示,然后修改“Grasshopper”角色名称为“蚱蜢”,修改角色大小为“30”,如下右图所示。

image.png

步骤 04
修改蚱蜢坐标值为(-160,-140),使它位于舞台的左下角,看起来就像是趴在草地上一样,如下图所示。

image.png

步骤 05
接着要让蚱蜢在舞台上反复不停地左右移动,并且在触碰到舞台边缘后能够回头继续移动,这就需要为蚱蜢添加如下图所示的脚本。

image.png

步骤 06
现在要让蚱蜢在移动的同时变换自己的外形,让其更灵动一些。在“将旋转方式设为(左右翻转)”积木块的下方添加“等待()秒”积木块(位于“控制”模块)和“下一个造型”积木块,在输入框中输入“0.2”,让造型变化的速度稍快一些,符合蚱蜢的特性,如下图所示。

image.png

步骤 07
现在要让蚱蜢在移动的同时发出声音。展开“声音”选项卡,将鼠标指针移至下方的“选择一个声音”图标上,在弹出的列表中单击“选择一个声音”按钮,如右图所示。在弹出的界面顶端单击“动物”分类,然后在下方选择“Crickets”(虫鸣)声音,如下图所示。

image.png
image.png

步骤 08
返回“代码”选项卡,如下左图所示,现在要让蚱蜢能够一边移动一边发出声音,在“下一个造型”积木块下方添加“声音”模块下的“播放声音(Crickets)”积木块,如下右图所示。蚱蜢的脚本就写好了。

image.png

步骤 09
还可以添加一些其他动物,下面依次给出这些角色的基本信息,包括大小和坐标,以及每个角色的脚本。首先是蝴蝶,大小设为“50”,坐标设为(50,100),如右图所示;脚本和蚱蜢类似,修改每次移动的步数为“1”,并且去掉播放声音的积木块,如下图所示。

image.png
image.png

步骤 10
接下来是狮子,大小保持不变,坐标设为(110,-20),如下图所示;脚本和蝴蝶类似,修改每次移动的步数为“3”,如右图所示。

image.png
image.png

步骤 11
接着是瓢虫,大小设为“50”,坐标设为(-160,-140),如下图所示;脚本和蚱蜢类似,修改每次移动的步数为“1”,并且修改播放的声音为“Chirp”,如右图所示。

image.png
image.png

步骤 12
然后是蛇,大小设为“60”,坐标设为(-130,-30),如下图所示;脚本和蝴蝶类似,修改每次移动的步数为“2”,如右图所示。

image.png
image.png

步骤 13
最后是鹦鹉,大小设为“60”,坐标设为(-130,70),如下图所示;脚本和蚱蜢类似,修改播放的声音为“Bird”,如右图所示。

image.png
image.png

步骤 14
单击image.png运行程序,热闹的森林场景就呈现出来了,如下图所示。

image.png

相关文章
|
6月前
|
机器学习/深度学习 人工智能 自动驾驶
智能新纪元:人工智能在现代社会的角色与挑战
随着科技的飞速进步,人工智能(AI)已从科幻小说的幻想步入我们的现实生活。本文将深入探讨AI在各行各业中的应用,分析它如何重塑我们的工作和生活方式,同时也会触及伴随这一技术发展而来的伦理、隐私和就业等挑战。通过具体案例,我们将一窥AI技术的未来可能性及其对人类社会的深远影响。
|
2月前
|
机器学习/深度学习 人工智能 TensorFlow
人工智能浪潮下的自我修养:从Python编程入门到深度学习实践
【10月更文挑战第39天】本文旨在为初学者提供一条清晰的道路,从Python基础语法的掌握到深度学习领域的探索。我们将通过简明扼要的语言和实际代码示例,引导读者逐步构建起对人工智能技术的理解和应用能力。文章不仅涵盖Python编程的基础,还将深入探讨深度学习的核心概念、工具和实战技巧,帮助读者在AI的浪潮中找到自己的位置。
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
生成式人工智能入门指南
生成式 AI 是人工智能的一个子领域,专注于通过学习现有数据的模式创建新内容或生成解决方案。它是一种鼓励 AI 系统利用对数据结构的理解自主生成新颖、类似于人类的输出的方法。这可以采用图像、文本、音乐或甚至是代码的形式呈现。
66 3
|
4月前
|
机器学习/深度学习 人工智能 自然语言处理
揭秘人工智能的魔法:深度学习入门
【9月更文挑战第15天】在这篇文章中,我们将探索深度学习的奥秘,从基本原理到实际应用,一步步揭示这一技术如何改变我们的世界。你将了解神经网络的核心概念,学习如何训练模型,并看到深度学习在不同领域的应用案例。无论你是初学者还是有一定基础的学习者,这篇文章都将为你打开一扇通往AI未来的大门。
|
5月前
|
机器学习/深度学习 人工智能 自然语言处理
【人工智能】学习人工智能需要学习哪些课程,从入门到进阶到高级课程区分
基于人工智能的多学科特性和其广泛的应用领域,学习这一技术涉及从基础理论到实践应用的各个层面。入门阶段应重点掌握数学基础、编程语言学习以及数据结构和算法等。进阶阶段需要深入机器学习、深度学习以及自然语言处理等专题。高级课程则包括专业核心课程、认知心理学与神经科学基础以及计算机图形学等课程
173 1
|
5月前
|
机器学习/深度学习 人工智能 自动驾驶
智能新纪元:人工智能在现代社会的角色与挑战
【8月更文挑战第9天】 本文旨在探讨人工智能(AI)技术如何塑造我们的未来社会,并分析其带来的机遇与挑战。文章将简要介绍AI的发展历程,阐述AI在不同领域的应用,以及这些技术如何影响经济、工作和日常生活。同时,我们也将讨论AI技术所面临的伦理、隐私和安全问题,并提出相应的解决策略。最后,文章将展望未来AI技术的发展趋势,并鼓励读者思考如何在AI时代中找到自己的定位。
88 3
|
6月前
|
机器学习/深度学习 人工智能 算法
人工智能与创造力:探索AI在艺术创作中的角色
【6月更文挑战第30天】本文深入探讨了人工智能(AI)如何在艺术领域内重新定义创造力的概念。通过分析AI技术在绘画、音乐和文学创作中的应用案例,我们揭示了AI不仅能够模仿传统艺术形式,还能开创全新艺术风格的可能性。文章还讨论了AI艺术对知识产权法的挑战,以及公众对于由机器创造的艺术作品的接受度问题。
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
零基础如何入门人工智能
通用人工智能(AGI)是人工智能的一种理论形式,可以像人类一样学习和推理,有可能解决复杂的问题并独立做出决策。 然而,那些致力于AGI开发的人旨在复制人类的认知能力,包括感知、理解、推理、学习、规划、决策、创造等多个方面,跨越广泛的领域。
80 2
|
6月前
|
机器学习/深度学习 人工智能 自然语言处理
IT入门知识第八部分《人工智能》(9/10)
IT入门知识第八部分《人工智能》(9/10)
50 0
|
7月前
|
机器学习/深度学习 人工智能 IDE
人工智能平台PAI操作报错合集之交互式建模(DSW)环境中,numpy模块如何正确安装
阿里云人工智能平台PAI (Platform for Artificial Intelligence) 是阿里云推出的一套全面、易用的机器学习和深度学习平台,旨在帮助企业、开发者和数据科学家快速构建、训练、部署和管理人工智能模型。在使用阿里云人工智能平台PAI进行操作时,可能会遇到各种类型的错误。以下列举了一些常见的报错情况及其可能的原因和解决方法。