Scratch(四)舞台区详解
在Scratch里面,所有的表现结果都在“舞台区”呈现,前面我们学习的“石头剪刀布”游戏,也是在“舞台区”完成的。

舞台区是非常重要的区域,所以我们今天单独用一个章节来详细说说这个舞台。
既然是一个舞台,我们在安排角色位置的时候,就必须有一个可以定位的方法,那么我们采用的是坐标系的方式。
坐标系在小学高年级会接触,但是在实际教学中,我们发现低年级的学生也能快速掌握。所以我们先来看这个舞台的坐标系是怎么样的:

我们在舞台区滑动鼠标,会发现在上图红色方框位置的数字会变化,这就是鼠标所在舞台的位置。
舞台坐标系如下图:

注意,在这个舞台区上,所有的数字是没有单位的,也就是说无论是x还是y的数值,我们不能用日常的单位去衡量,这个数字不是毫米,也不是像素,而是一个相对于舞台中心的一个对比值。
下面,我们来让这个小猫移动到舞台指定的位置(98,-110),我们该怎么做呢?
首先,我们先在角色区中点击一下小猫,角色小猫会出现蓝色框,这表示我们将对小猫下命令;

然后在中间功能区找到蓝色动作功能积木:

我们将数字改为98,-110,改了后再点击一下这个蓝色积木块,小猫一下就出现了在98,-110的位置了。

我们要对舞台区的坐标大概位置心里要有概念,因为以后所有的角色都将在舞台区出现,那么对角色位置的精确安排就非常重要,心里对舞台区有概念后,未来我们制作任何游戏,包括角色的大小调整,我们心里都能在第一时间出现这个游戏完整的样子而不会茫然。
我们了解了舞台坐标之后,然后需要了解下一个内容——舞台背景。
一个精美的游戏或是动画作品,除了主要角色之外,应该还有对应的背景,这样会让整个作品看起来更加美观,也容易让观众有代入感。
所以,我们了解舞台后,现在要开始学习安排舞台背景。
舞台背景我们通常会采用一些图片作为素材,Scratch软件里也自带了一部分,我们先从这里打开:

点击红色的框,我们可以看到软件自带的背景图片,选中一个后点击右下角确定按钮:

这个图片然后就会出现在舞台区,并放置于小猫的背后,不会挡住小猫:

同样,舞台背景也是角色,我们一样可以对舞台背景进行编程,只不过舞台背景编程的功能要少一些:

如果有多个背景要切换怎么办呢?
我们点击功能区中的背景选项:

这里我们可以对背景进行添加和删除。

在这一排按钮里,第一个是导入软件自带背景,第二个是自己画一个背景,第三个是导入电脑里其他文件夹中的图片,第四个是调用摄像头拍一张。
对于不要的背景,我们可以右键点击背景,然后选择删除,或是点击背景图片上的小叉:


我们一般会在网上搜索一些图片,或是自己做一些背景,然后导入进来,怎么使用scratch自带绘图功能我们下次再说,我们今天先用自带的背景图片来学习一下对背景进行编程:
我们先导入两张背景图片:

注意看,每个背景图片都有自己的名字,这个名字是在导入的时候就设定好了的。同时,这些背景都有自己的序列号,由上至下从1号开始。

鼠标左键按住背景图片拖住可以上下移动排列顺序。

针对这些背景,我们利用前一章学习的功能模块来对背景进行一个简单编程,让这些背景每1秒钟切换一次:


今天我们熟悉了舞台和背景,这样是不是未来可以做出魂斗罗这样有滚动的背景呢?好期待呀。
是不是觉得很简单,对,入门确实非常简单,不过也别高兴的太早,本编要在下一开始对角色进行详解,会渐渐提高难度,也越来越精彩,敬请关注。
附加题:
请给上一期做的“石头剪刀布”游戏加入背景,有没有办法让小猫出不同的动作选择不同背景呢?
Scratch零基础魔法编程(一)为什么你要学Scratch儿童编程
Scratch零基础魔法编程(二)来不及解释了,马上开始编程游戏
Scratch零基础魔法编程(三)剪刀石头布
Scratch零基础魔法编程(四)舞台区详解
Scratch零基础魔法编程(五)角色详解
Scratch零基础魔法编程(六)用“角色”与“舞台”的组合做个小动画
Scratch零基础魔法编程(七)“触碰”基础
Scratch零基础魔法编程(七)篇外.用小动画和触碰能做大型游戏?
Scratch零基础魔法编程(八)声音模块详解
Scratch(四)舞台区详解的更多相关文章
- [转]Linux服务器上11种网络连接状态 和 TCP三次握手/四次挥手详解
一.Linux服务器上11种网络连接状态: 图:TCP的状态机 通常情况下:一个正常的TCP连接,都会有三个阶段:1.TCP三次握手;2.数据传送;3.TCP四次挥手. 注:以下说明最好能结合”图:T ...
- S7-300过程映像区详解
一.概念 W过程镜像区输入字 PIW立即输入区字 PIW不用等系统刷新,立即读入 IW等待系统刷新后读入 二.PIW/IW,PQW/QW 引用西门子论坛一位大侠的比方加深理解: ...
- ElasticSearch第四步-查询详解
ElasticSearch系列学习 ElasticSearch第一步-环境配置 ElasticSearch第二步-CRUD之Sense ElasticSearch第三步-中文分词 ElasticSea ...
- J2EE进阶(四)Spring配置文件详解
J2EE进阶(四)Spring配置文件详解 前言 Spring配置文件是用于指导Spring工厂进行Bean生产.依赖关系注入(装配)及Bean实例分发的"图纸".Java EE程 ...
- JVM 运行时数据区详解
一.运行时数据区 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同数据区域. 1.有一些是随虚拟机的启动而创建,随虚拟机的退出而销毁,所有的线程共享这些数据区. 2.第二种则 ...
- TCP三次握手与四次挥手详解
目录 TCP三次握手与四次挥手详解 1.TCP报文格式 2.TCP三次握手 3.TCP四次挥手 4.为什么建立连接需要三次握手? 5.为什么断开连接需要四次挥手? 6.为什么TIME_WAIT状态还需 ...
- TCP三次握手四次挥手详解
转载 http://www.cnblogs.com/zmlctt/p/3690998.html 相对于SOCKET开发者,TCP创建过程和链接折除过程是由TCP/IP协议栈自动创建的.因此开发者并不需 ...
- [ 转载 ] Tcp三次握手和四次挥手详解
#TCP的报头: 源端口号:表示发送端端口号,字段长为16位.目标端口号:表示接收端口号,字段长为16位.序列号:表示发送数据的位置,字段长为32位.每发送一次数据,就累加一次该数据字节数的大小.注意 ...
- TCP三次握手四次挥手详解2
相对应socket开发者,TCP创建过程和连接拆除过程是由TCP/IP协议栈自动创建的,因此开发者并不需要控制这个过程,但是对于理解TCP底层运作机制,相当有帮助 TCP三次握手 所谓三次握手,是指建 ...
随机推荐
- ADO.NET五大对象增删改查使用
string ConnStr = "Data Source=.;Initial Catalog=ADO_DEMO;Integrated Security=True"; #regio ...
- Flutter扫码识别二维码内容
前面一篇写了生成二维码图片,这篇来写使用相机扫描识别二维码 识别二维码需要用到插件 barcode_scan 首先在 pubspec.yaml 文件中添加以下依赖,添加依赖后在 pubspec.yam ...
- tail -f 加过滤功能
实时查看日志 通过-f参数,我们可以实时查看文件的新增内容: $ tail -f itbilu.log 注意:使用-f参数时不会中断文件监视,需要通过ctrl+c手动结束. 实时日志查看与grep过滤 ...
- Microservices in action: java(spring) and .net
Manning | Homehttps://www.manning.com/ What is a Microservice? | Manninghttps://freecontent.manning. ...
- winddows rabbitmq安装与配置
RabbitMQ是一个在AMQP协议标准基础上完整的,可复用的企业消息系统.它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器,Rab ...
- Python监控rabbitmq的代码
author:headsen chen date: 2019-07-26 17:22:24 notice: 个人原创 import requests, json, time, datetime fr ...
- Leetcode: Shortest Way to Form String
From any string, we can form a subsequence of that string by deleting some number of characters (pos ...
- Android 打开相册拍照选择多张图片显示
添加依赖: compile 'me.iwf.photopicker:PhotoPicker:0.1.8' compile 'com.jaeger.ninegridimageview:library:1 ...
- pytorch 不使用转置卷积来实现上采样
上采样(upsampling)一般包括2种方式: Resize,如双线性插值直接缩放,类似于图像缩放,概念可见最邻近插值算法和双线性插值算法——图像缩放 Deconvolution,也叫Transpo ...
- docker安装并运行mysql
docker拉取mysql镜像: [mall@VM_0_7_centos ~]$ sudo docker pull mysql:5.7 5.7: Pulling from library/mysql ...