基于UE4的SLG植物养成手机游戏设计与实现
一、引言
快节奏的生活让上班族很难有时间养植物,但对植物的喜爱又使人们希望在空余时间养殖植物,于是植物养成游戏顺应着人们的需求而诞生。截止2017年6月,根据互联网络信息中心统计,中国手机游戏用户已超过3.8亿
由此可见,针对上班族制作的手机游戏有着潜在的巨大市场与经济效益。本游戏是基于UnrealEngine4(以下简称UE4)软件平台,结合运用SpeedTree以及Maya软件制作的安卓端的单机植物养成类游戏。
二、核心技术简介
UnrealEngine4是一款用于三维场景构建的虚拟现实软件。其强大的渲染功能、可视化系统、全新的工作流程、深入的工具集以及完全的C++源码使得该引擎迅速成为3D游戏制作的首选软件。开发者使用游戏引擎进行游戏开发能够降低开发成本、缩短开发周期、提高游戏品质并降低风险,从而高效的实现开发者的创意
SpeedTree的树木类建模功能和大量的模型库,为游戏提供了数百种植物品种。通过SpeedTree制作出植物的生长动画可以使玩家能够感受植株变化的乐趣。Maya主要制作场景天空盒以及盆栽等基本模型,UE4强大的可视化蓝图实现游戏所需的所有的交互功能。
三、系统设计分析
(一)游戏机制
养成游戏作为一种“造梦”的游戏类型,可玩性是由游戏机制产生的,游戏机制涵盖物理机制、内部经济、渐进机制、战术机动和社会互动。
本文主要涉及游戏的物理机制与内部经济来产生与增强游戏的可玩性。本游戏的物理机制是指玩家可对盆摘进行移动、缩小与放大等改变物体位置的操作;内部经济则由植物的健康值体现:玩家对植株进行浇水、除草等操作来积累植物的健康值,当植株的健康值达到一定数值时,植株便会成长。
(二)系统模块设计
根据上班族体的特点,本游戏设计分5个模块:
1.游戏模块
手机游戏源码论坛每周登陆一次,浇水使植物保持存活状态;每天登陆,查看植物每天的变化并铲除每日出现的杂草,增加植物的健康值。
2.杂草随机生成模块
负责生成一定数量的杂草,随机排列在电子花盆中。
3.数据存储模块
用于游戏用户登陆的数据保存,获得系统时间差,实现用户再次登入时记录前一天的数据。
4.交互模块
负责游戏界面旋转,负责洒水动画、除草动画。
5.音效模板
负责管理游戏的各种音效,如:游戏背景音效、洒水音效、除草音效等。设计模块,如图1所示。
图1 模块设计图
玩家主要可进行浇水、除草操作,享受陪伴植物生长以及收获成果的过程。游戏场景为一矩形界面,屏幕中央放置着电子盆栽。操作方法为点击游戏图标进行对应播种、除草、洒水操作。
在进行游戏操作时,玩家每点击一个物体,系统都需要判断此物体是玩家所种植的植物还是为增加游戏真实性随机生成的杂草。若物体判定为植物,玩家可进行的操作便是给其浇
水;若为杂草,玩家所进行的操作便是清除杂草。
(三)界面设计
游戏启动后首先呈现在玩家面前的是欢迎界面,欢迎界面最基本、也最主要的元素是游戏的标识、进入游戏以及退出游戏按钮。这些元素能让玩家明白游戏名称以及是否进行游戏,如图2所示。
游戏界面为矩形,屏幕中央放置着电子盆栽。玩家在游戏过程中有暂停的需求,暂停时可进行游戏音效管理、刷新游戏、退出游戏等动作。使用Triggers触发事件从操作界面弹到暂定界面,进行相应动作。
图2 游戏界面设计
四、系统实现
(一)植物变化实现
在“植物养成记”游戏中,玩家登陆游戏达到一定时长时会发现植物的微小变化,直至达到设定的植物周期后,玩家便可收获植物并获得奖励。本文以SpeedTree(Trunk生长)实现了APP效果。导出10帧的生长动画,导入MAYA,再进行模型导出,将对应的模式导入UE4利用蓝图实现变化交互,制作出demo可以快速高效实现植物变化实现。
(二)交互实现
交互实现即本游戏设计界面在UE4中使用C++代码实现自动旋转花盆、获得时间差,再次登陆时会呈现植物不同与上一次登陆的成长状态。
1.自动旋转物体
函数在Tick()生成类中运行,开头需引入头文件:#include”Engine/World.h”

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。