在游戏中实现飘花和落叶效果

简介: 嗨!大家好,我是小蚂蚁。今天这篇文章分享一下如何在游戏中实现飘花和落叶的效果,在游戏背景中加入它们,能够让你的游戏更加的栩栩如生。之前我们讲过如何在游戏中实现一场雨,主要利用的随机性,一系列的随机处理模拟出了下雨的效果,对于飘花和落叶同样也需要各种各样的随机处理。

嗨!大家好,我是小蚂蚁。


今天这篇文章分享一下如何在游戏中实现飘花和落叶的效果,在游戏背景中加入它们,能够让你的游戏更加的栩栩如生。


之前我们讲过如何在游戏中实现一场雨,主要利用的随机性,一系列的随机处理模拟出了下雨的效果,对于飘花和落叶同样也需要各种各样的随机处理。


不知道你是否曾仔细的观察过花瓣飘落的过程,一阵风吹来,一片花瓣从花朵上飘离,向着风吹过的方向,缓缓的飘落,旋转,翻转...... 如果同时有很多的花瓣在飘落,每一个花瓣都有着不同的移动轨迹,不同的飘落速度,不同的翻转方式.....世界上没有两片完全相同的树叶,也没有两片飘落轨迹一模一样的花瓣,世界变美了,因为随机性。


相比于水滴,花瓣的随机性要更多一点儿,除了大小,透明度,移动速度之外,还要增加风的随机性,花瓣旋转和翻转的随机性。


来到微信小游戏制作工具中,我们首先准备一下资源。



如图,就是需要的所有资源了,两个花瓣,一片落叶,一个基础文字,以及一个背景。


接下来,选中一个花瓣精灵,然后在属性区中点击“管理行为”按钮,打开行为面板,为其开启“旋转”和“翻转”的两个行为。



我们将会使用这样的两个行为来实现花瓣的旋转和翻转效果。


开启行为之后,在属性区中会看到与“翻转”和“旋转”有关的行为,关掉默认的“自动开始”选项,我们会在逻辑中使用积木块手动控制开始。



接下来为花瓣创建两个局部变量,一个“X偏移”,一个“Y偏移”,这两个变量记录的是当前的花瓣受到的风力的大小。



最后,来看一下花瓣上的积木逻辑。



这段积木中使用了大量的随机,包活花瓣大小的随机,透明度的随机,所受风力的随机,翻转时间和方向的随机,旋转时间和方向的随机。


将这一系列的随机性作用到一个小小的花瓣上,就能够出现奇妙的效果。


预览一下场景。



此时,应该能够感受到一阵向右的风从一棵樱花树上经过,扰动了树枝,一片片的樱花被吹起,开始了充满随机性的舞蹈。


至于落叶该怎么实现呢?与落花是一样的逻辑,只不过调整一下其中的各种随机数值,一直调整到你觉得对落叶满意时为止。



当春天的樱花碰撞到了秋天的落叶,感觉有点儿怪怪的。


不过,在游戏的世界里没有什么是不可能的。这也是做游戏的一个魅力之处,你是一个游戏世界的创造者,这个游戏世界是什么样子,将完全由你来决定。


最后,我为这个小示例增加了一个“溪流鸟鸣”的背景音效,打开它,看着缓缓飘落的樱花和树叶,听着清澈的溪流和鸟鸣声,分分钟就能够让你的那颗躁动的心安静下来。

这里是我的游戏开发课程服务,不只是一门课,而是围绕着新手学习做游戏有关的一整套服务。致力于帮助更多的人学会做游戏并做出自己的游戏,欢迎来跟 63 位同学一起学习做游戏,一起创建属于自己的游戏世界。【点击这里】了解课程服务详情。

也欢迎交个朋友,朋友圈每日分享与做游戏有关的知识和内容,可以来围观。备注“学习做游戏”可免费领取学习做游戏的原创教程资料。接受付费咨询,不闲聊,望见谅。

相关文章
kde
|
3月前
|
文件存储 数据安全/隐私保护 开发者
群晖NAS Docker镜像源加速配置教程
本教程介绍了群晖NAS用户如何通过配置轩辕镜像加速服务提升Docker镜像拉取速度。内容包括配置前准备、详细设置步骤及日常使用说明,帮助用户快速完成配置并享受高效稳定的镜像下载体验。
kde
1875 59
|
12月前
|
数据挖掘 UED
ClkLog埋点分析系统支持漏斗分析
漏斗分析是基于事件的一种分析模型。 漏斗分析主要是对一个多步骤的场景进行的每一步的转化数据分析。可以理解为是从顶部(广泛数据)到底部(目标数据)逐步筛选和转化分析的过程。
ClkLog埋点分析系统支持漏斗分析
|
图形学 Android开发 开发者
U3D游戏开发实战:有效策略缩小包体大小,提升加载速度
【7月更文第12天】随着移动设备的普及,Unity 3D(简称U3D)作为一款强大的跨平台游戏开发引擎,成为了众多独立开发者和游戏工作室的首选。然而,面对日益增长的用户需求与有限的设备存储空间,如何在保证游戏质量的同时,有效缩减游戏包体大小,成为了开发者面临的一大挑战。本文将探讨一系列实用技巧和最佳实践,帮助你在U3D开发小游戏时显著减小包体尺寸,从而提升玩家的下载体验与启动速度。
426 12
|
前端开发 API 微服务
SpringCloud微服务之间使用Feign调用不通情况举例
SpringCloud微服务之间使用Feign调用不通情况举例
1495 2
|
11月前
|
关系型数据库 MySQL 数据库
【赵渝强老师】MySQL的参数文件
MySQL启动时会读取配置文件my.cnf来确定数据库文件位置及初始化参数。该文件分为Server和Client两部分,包含动态与静态参数。动态参数可在运行中通过命令修改,而静态参数需修改my.cnf并重启服务生效。文中还提供了相关代码示例和视频教程。
260 6
|
12月前
|
存储 编译器 C语言
C语言函数的定义与函数的声明的区别
C语言中,函数的定义包含函数的实现,即具体执行的代码块;而函数的声明仅描述函数的名称、返回类型和参数列表,用于告知编译器函数的存在,但不包含实现细节。声明通常放在头文件中,定义则在源文件中。
小功能⭐️Unity 如何判断物体是否在摄像机视野内或外
小功能⭐️Unity 如何判断物体是否在摄像机视野内或外
|
SQL 监控 数据可视化
Google Analytics
【6月更文挑战第8天】Google Analytics
473 4
|
SQL Java 关系型数据库
SpringBoot整合SpringData与JPA
SpringBoot整合SpringData与JPA
224 0
|
Linux 计算机视觉 Python
在Linux系统上安装OpenCV
在Linux系统上安装OpenCV
1496 0