一个无需等待的世界不美吗?为什么游戏开发中需要人为的制造等待?

简介: 本文主要内容有微信小游戏开发中的 3 种不同的等待积木块的使用场景和使用方法。这是微信小游戏开发的基础系列,使用的游戏开发工具为“微信小游戏制作工具”。如果你没有任何的游戏开发经验,欢迎阅读我的“人人都能做游戏”系列教程,它会手把手的教你做出自己的第一个微信小游戏。

本文主要内容有微信小游戏开发中的 3 种不同的等待积木块的使用场景和使用方法。

这是微信小游戏开发的基础系列,使用的游戏开发工具为“微信小游戏制作工具”。如果你没有任何的游戏开发经验,欢迎阅读我的“人人都能做游戏”系列教程,它会手把手的教你做出自己的第一个微信小游戏。



生活中我们总避免不了要等待,整装待发的准备去公司开始新一天的奋斗,但是公交车却迟迟不来,需要等待。一家人订好了周末出游计划,正准备出门,老婆要再选件衣服,擦个脸,需要等待。打开电视看想看的节目,出来了 60 秒的广告,需要等待……


在游戏开发的世界中我们同样的会经常需要处理等待。但是游戏开发中的等待与生活中的等待不同,生活中的等待不可避免,而游戏开发中的等待却需要我们人为的制造。


一个不需要等待的世界不美好吗?为什么还需要人为的制造等待呢?


等待直到某个条件达成时


在游戏开发中我们经常需要处理多项任务,而且这些任务之间又有依赖。举个例子,现在有两项任务需要处理,分别为任务A和任务B,两项任务同时开始进行,但是在任务B进行到一半后,需要拿到任务A执行完的结果,才能继续执行。这时候在任务B执行完一半后,就需要让它等待,直到拿到任务A执行完的结果后,任务B再接着往下执行。


接下来,我们在微信小游戏制作工具中模拟一下这样的场景。



如图,我创建了一个红球和蓝球以及一个 A 点,设想一下这样的场景,蓝球是突击部队需要向前快速进发,但是队伍的补给不足了,于是乎就呼叫了补给运送,红球就是运送补给的车,跑的比较慢,约定好补给部队行进到 A 点等待补给车,拿到补给后再继续前行。


这就是两项有依赖的任务,我们的突击队必须在 A 点等待拿到补给后,才能继续前进。


我们看一下突击队(蓝球)的逻辑。



注意其中的等待积木,等待的条件是直到红球达到A点,直到等待的条件满足后,等待才会结束。


接着看一下补给车(红球)的逻辑。


逻辑很简单,一直向右移动,达到 A 点后停止。


运行一下,看看结果如何。


蓝球先到达了 A 点,然后开始等待,直到 B 球到达 A 点后,又开始继续前进。


等待1帧


另一个在游戏开发中常用的情景是这样的:有三项任务1,2,3。我们希望这三项任务按照一定的时间顺序去执行,例如我想先开始任务2,再开始任务3,最后执行任务1。这种情况我们同样的也需要人为的制造一点儿等待,来让任务按照我们预期的时间顺序依次执行。


下面我们在小游戏制作工具中演示一下这个情景。



我在场景中加入了三个方块,代表了三个任务,每项任务的功能很简单,将自己的序号打印出来,即如果任务顺序是 1,2,3,那么下方的“默认文字”最终会显示 “123”。


看一下任务的逻辑积木块。



其他两个任务的逻辑相同,只不过拼接的序号一个为 2,一个为 3。


运行一下看看结果。



这里我们打印出了“0321”,因为全局变量“显示数字”的默认值为 0,所以拼接字符串时第一个字符显示了 0,这个我们不用考虑,看后面的任务执行结果是“321”,也就是说先执行了任务 3,然后再执行了任务 2,最后执行了任务1。


这里有一点儿需要补充的知识,就是游戏对象积木块执行时的顺序。



如图,在层级管理中,“正方形”表示任务 1,“正方形-1”表示任务 2,“正方形-2”表示任务 3,三个任务的积木同样都是在“场景启动时”执行,最终的执行顺序是3,2,1。也就是说我们的游戏在执行时,对象的积木块会按照层级管理中的顺序从下往上依次执行。


按照这样的逻辑,那么如果我想让任务 2 先执行,那么应该怎么做呢?我们只需要在层级管理中将“正方形-1”拖拽到“正方形-2”下方就可以了。



像这样,然后运行一下看看。



结果就变成2,3,1了。


这样我们就有了第一个方法:可以通过调整层级管理中的对象的顺序,来调整不同对象的积木块的执行顺序。


通常在对象数量比较少时,这是个不错的方法,但是当层级管理中的对象多了以后,可能就很难去记住到底哪个对象应该在哪个对象的下面了,这时我们就可以通过“等待 1 帧”积木,来是实现同样的效果了。



我们将顺序调整回去,按照这样的顺序,任务的执行顺序会是3,2,1。现在我们想让任务 2 先执行,接着执行任务 1,执行顺序变为 2,1,3,要怎么做呢?


只需要在任务 3 中添加一块等待积木即可。



如图,我们在任务 3 中增加一块“等待 1 帧”的积木块。


再次运行一下。



执行顺序变成“213”了,解释一下,游戏运行时是一帧一帧的运行的(如果你还不理解帧的概念,建议你先去看这篇文章把帧的概念弄明白),如果不加任何的等待积木,那么在一帧中,游戏会按照层级管理中从下往上的顺序依次执行每个对象上的积木,就是“321”,现在我们在任务 3 上增加了“等待 1 帧”积木块,那么执行顺序将会变为这样,第一帧先执行任务 3,遇到“等待 1 帧”积木,那么任务 3 的积木逻辑将会停在这里等待,接着正常执行任务 2,任务 1 的积木逻辑,打印出 2,1,第一帧执行完毕后,接着执行第二帧,再次到任务 3,此时任务 3 的“等待 1 帧”结束,继续执行其逻辑,打印出 3。所以,最终的执行是在第一帧里执行了任务 2 和 1,打印出 2,1,然后在第二帧里执行了任务 3,最后打印出 3。


等待1秒


最后,还有一个“等待几秒”钟的积木块,通常会与运动相关的积木块搭配使用,如物体移动到某个位置等待几秒钟后再移动回来等。



移动,旋转,缩放等运动积木块搭配“等待n秒”积木块可以做出一些复杂的运动效果。这里可以自行去尝试做一下各种各样的运动效果。


最后,总结一下,我们了解如下了三种等待积木块的使用场景和使用方法。



每当需要设置等待时,你就应该想起它们。


在我们的生活中,等待无法避免,但是在游戏开发的世界里,一切由你主宰,如何进行等待也将由你来定。


如果你对游戏开发感兴趣,欢迎关注我,如果你有对游戏开发感兴趣的朋友,也欢迎把这个系列文章推荐给他。

欢迎支持一下我的微信小游戏作品“精致1010”,一个可以等待樱花飘落,可以等待流星划过夜空的小游戏。

精致1010

美好的东西值得等待。

小程序

有任何的想法或者疑问,欢迎添加我的微信,我会尽可能的为你提供帮助。

相关文章
|
6月前
|
缓存 安全
无论是学习还是工作,电脑都是IT人必不可少的重要武器,一台好电脑除了自身配置要经得起考验,后期主人对它的维护也是决定它寿命的重要因素! 你日常是怎么维护你的“战友”的呢,维护电脑运行你有什么好的建议吗
无论是学习还是工作,电脑都是IT人必不可少的重要武器,一台好电脑除了自身配置要经得起考验,后期主人对它的维护也是决定它寿命的重要因素! 你日常是怎么维护你的“战友”的呢,维护电脑运行你有什么好的建议吗
|
5月前
|
存储 缓存 搜索推荐
想要快速地拥有Sitecore DXP平台!这九个开发大坑一定要避开!
随着互联网技术的深入的发展,人们对于个性化的渴望已经达到了新的阈值,这也让以数字洞察力、个性化体验为名的Sitecore DXP平台成为了品牌们竞相追捧的新宠。而在这样的需要背景下,一众新手企业纷纷投身市场,想要分一杯羹。但是经验不足的新人入场,难免会带来不少麻烦,甚至引发了人们对于Sitecore性能的质疑。
|
7月前
|
存储 监控 安全
当代工作场所中的屏幕监控软件:提升工作效率的必备工具
当今数字化时代,屏幕监控软件的需求也逐渐增加,许多企业和机构也想有效地监控员工的计算机使用,以确保工作的高效执行和敏感信息的安全。WorkWin屏幕监控软件中有一个功能非常受大家喜爱,那就是——屏幕监控功能,这一个功能可以帮助管理者更好地管理和监督员工的工作活动。
182 0
|
7月前
|
编解码 搜索推荐 定位技术
实用性拉满的5款软件,提高效率必备!
随着网络信息技术的发展,越来越多的人在办公时需要用到电脑了。如果你想提高办公效率,那么就少不了工具的帮忙,今天给大家分享5款办公必备的好软件。
40 0
|
人工智能 运维 大数据
软件开发商何时介入生产过程?一起跟随程序员看看软件开发全阶段
软件开发商何时介入生产过程?一起跟随程序员看看软件开发全阶段
软件开发商何时介入生产过程?一起跟随程序员看看软件开发全阶段
语音软件开发,整洁的代码更有利于长期发展
语音软件开发,整洁的代码更有利于长期发展
|
开发工具
一个无需等待的世界不美吗?为什么游戏开发中需要人为的制造等待?
本文主要内容有微信小游戏开发中的 3 种不同的等待积木块的使用场景和使用方法。 这是微信小游戏开发的基础系列,使用的游戏开发工具为“微信小游戏制作工具”。
161 0
一个无需等待的世界不美吗?为什么游戏开发中需要人为的制造等待?
|
机器学习/深度学习 人工智能 自然语言处理
攻破“鸡尾酒会”难题,人声分离给生活带来了哪些改变?
试想一下,在一个嘈杂的鸡尾酒会上,同时存在着许多不同的声源:多个人同时说话的声音、餐具的碰撞声、音乐声等等。如何在酒会上分辨出特定人物的声音,这对于我们人类来说十分简单。
攻破“鸡尾酒会”难题,人声分离给生活带来了哪些改变?
|
物联网 程序员 测试技术
厉害了我的“猿”!程序员手工建造波音 737 模拟驾驶舱,几乎模拟全部功能
厉害了我的“猿”!程序员手工建造波音 737 模拟驾驶舱,几乎模拟全部功能
厉害了我的“猿”!程序员手工建造波音 737 模拟驾驶舱,几乎模拟全部功能
|
网络协议 应用服务中间件 Android开发
直播软件搭建过程中的这项工作也很重要
要想运营好一个直播平台,需要各方各面的工作和技术相结合完成,而消息推送就是直播app中十分重要的一个部分。App内的消息推送不仅能够给用户提供通知信息,提高用户活跃度,还能够起到召回一部分老用户的作用。那么在直播软件搭建的过程中,关于第三方推送也就是我们所说的消息推送功能又该如何实现呢?
直播软件搭建过程中的这项工作也很重要