基于Unity 3D实现的融合多元素风格游戏

Viewer

发布日期: 2021-03-24 08:43:46 浏览量: 173
评分:
star star star star star star star star star star_border
*转载请注明来自write-bug.com

1.综合描述

1.1 产品背景

随着人们对游戏的追求,越来越多的优秀游戏被开发出来。目前,多风格元素游戏深受大众喜爱,例如绝地求生融合了 FPS 射击与生 存元素,守望先锋融合了 FPS 射击与 MOBA 元素等。所以,本项目旨在融合生存、弹幕、养成、冒险和闯关等元素,开发一款多元素风格游戏,为广大游戏爱好者带来福音,有着很好的市场。

1.2 产品功能

本软件的主要功能有:

  • 具有不同的角色:玩家可选择发射弹幕的角色或近距离攻击角色,体验不同的操作

  • 具有冒险元素:玩家在每一关需要面对众多怪物和最终 BOSS

  • 具有闯关元素:玩家通过击杀 BOSS 可以到达下一关卡,面对属性加强的敌人

  • 具有生存元素:玩家在游戏中需要应对不断逼近的危险区域,可体验逃生风格

  • 具有升级养成元素:玩家可以通过击杀怪物升级,可通过拾取物品和金币等进行发育

  • 具有连续性功能:玩家可以通过暂停/继续功能或存档/读档功能延续游戏

1.3 用户类和特征

该产品面向对生存、弹幕、养成、冒险和闯关游戏元素中的一种元素或多种元素感兴趣的玩家。

1.4 运行环境

适用于支持 DX11 的 Windows 系统

1.5 设计和实现上的限制

主要是开发环境限制:

  • 支持 DX11 的 Windows 系统下 unity 3D 游戏引擎

  • visual studio 编程环境

  • c#编程语言

2.系统特性

2.1 整体需求

本项目旨在融合生存、弹幕、养成、冒险和闯关等元素,开发一 款多元素风格游戏。

2.1.1 用户界面功能需求

用户界面是该游戏与玩家交互的主要部分,主要需求有:

  • 提供开始游戏选项

  • 提供角色选择选项

  • 提供读取存档选项

2.1.2 人物控制功能需求

人物控制是该游戏的核心部分,主要需求有:

  • 控制人物移动与攻击

  • 人物技能设计

  • 人物属性(血量、经验、速度和攻击力等)系统设计

2.1.3 怪物功能需求

怪物是该游戏必不可少的部分,主要需求有:

  • 当玩家距离较近时,怪物需要攻击玩家

  • 怪物在地图中随机刷出

  • 怪物属性系统设计

2.1.4 地图功能需求

地图是该游戏必不可少的部分,主要需求有:

  • 控制安全区域与危险区域的分布

  • 地图预制件(石头、树木等)的随机生成

2.2 用例图

指引流程用例图

游戏内容用例图

3.系统架构与设计

总体上系统框架由两部分组成,负责功能引导的主菜单部分,以及负责游戏内容的场景部分。

3.1 框架模块划分

由于本项目基于 Unity 开发,所以大框架基于场景来划分,目前设计为两个部分,其中第一部分为游戏打开界面,第二部分为游戏场景。不同部分间通过加载场景来实现连接和切换。

  • 在主界面部分中:主要包括进入游戏模块,退出游戏模块,存档模块和 UI 模块。进入游戏和退出游戏模块分别实现进入游戏和退出游戏功能;存档模块实现读取游戏存档的功能;UI 模块主要包括切换动画和加载动画

  • 在游戏场景部分中:主要分为以下个模块:地图模块,主角控制模块,怪物模块,UI 模块,数据传递模块和物品模块

    • 地图模块:主要实现地图贴图和地图预制件(石头、树木)生成功能
    • 主角控制模块:主要实现移动控制,攻击控制,动作设计,拾取物品,技能释放控制和属性控制等功能
    • 怪物模块:包括怪物属性,怪物 AI,Boss 移动和 Boss 子弹控制等
    • UI 模块:包括人物属性显示,暂停菜单,辅助信息(技能信息和操作信息)提示,商店菜单显示等
    • 数据传递模块:主要实现人物数据在不同关卡之间的传输功能以及文件存档和读档功能
    • 物品模块:主要实现物品属性控制和物品交易功能

框架示模块示意图

3.2 类图

处于中央的类是 Unity 引擎提供的 MonoBehaviour 基类,提供了一系列初始化接口、逐帧更新接口、事件接口。以此作为基础层,我们派生出了一系列类。

  • ThirdPersonCharacter:定义角色控制、运镜规则、提供相关方法

  • AICharacterControl:怪物 AI 控制

  • ThirdPersonUserControl:游戏主角控制

  • Attribute:定义角色/敌人/Boss 属性、提供相关方法,以及游戏数据读取和保存功能

  • Ballistic:定义弹道系统、提供相关方法等基本功能层

  • Safe_area_sever:安全区逻辑、进度控制

  • GameObjectGenerate:地形/物品/敌人随机生成等应用层

  • MainMenu_Sever:主界面中,对应按钮及功能实现

  • Shop:打败 Boss 后,商店互动等交互层

4.测试

  • 测试环境:Unity 3d 2017.2 + MonoDevelop

  • 测试方法:分为单元测试和集成测试

初始界面

新的游戏

角色选择

读取存档

游戏指引

角色信息

游戏画面

结束画面

上传的附件 cloud_download 基于Unity 3D实现的融合多元素风格游戏.7z ( 7.35mb, 2次下载 )
error_outline 下载需要11点积分

发送私信

如果没有为想要的东西努力,就别为自己失去的东西哭泣

16
文章数
16
评论数
最近文章
eject