基于Unity3D的五十K手机游戏设计

 2022-01-17 11:01

论文总字数:14347字

目 录

目 录 I

摘 要 III

Abstract IV

1 绪 论 1

1.1 选题背景和研究意义 1

1.2 国内外研究现状 1

1.3 项目实施方法及成果 1

1.4 项目实施技术背景 1

2 可行性分析 3

2.1 经济可行性 3

2.2 技术可行性 3

2.3 时间可行性 3

2.4 运行可行性 3

3 需求分析 4

3.1 硬件需求 4

3.2 软件需求 4

3.3 材料需求 4

4 概要设计 4

4.1 框架设计 4

4.2 模块设计 5

4.3 概要图 5

5 详细设计 6

5.1 框架 6

5.1.1 设计原则 6

5.2 板块 6

5.2.1 策划 6

5.2.2 美术 10

5.2.3 程序 11

5.3 优化与适配 15

5.4 游戏发布 15

结 论 15

参考文献 16

致 谢 17

基于Unity3D的五十K手机游戏设计

董国利

,China

Abstract

The design of the project uses the knowledge of the principles of software engineering, which divides the project into feasibility analysis, demand analysis, outline design and detailed design of parts,it’s the research of these aspects that provides theoretical basis for the planning and implementation of the project.

In the development process of the whole project, we mainly research the game module division, code design of the poker, poker shuffling and player cycling design and the ray theory of game events.We divide the entire game into several modules such as menu, exit, settings and several other modules etc, so that the project structure is stable and clear. The coding design of the poker is to use four digits to represent a single card, which digitize and formalize the real poker to facilitate the process of program. Poker shuffle uses random searching method of the poker’s coding list,through generating a random index to get a code in the list and then delete it to achieve the effect of random licensing. The rotary design of players mainly applies the rule that the pokers the player plays can’t be controlled by anybody and then the player get the right to play to achieve the cycling of the player and the cycle of the game’s round. The ray theory of the game events is to use the position the finger clicks on the phone’s screen to determine a series of UI objects,then the outermost UI game object on that clicked position can receive events.

Key words: schematic diagram; module partition; game cycling; poker meet priciple

1 绪 论

1.1 选题背景和研究意义

扑克牌游戏作为一种大众化的休闲游戏项目,以其简单的操作,灵活多变的出牌方法及益智性,深受民众喜爱,同时,当下五十K手机游戏极少,且都需要网络,设计复杂上手难,在此背景下我做了这个的五十K手机游戏。通过制作这么一款扑克游戏,既能提供一种方便易操作的五十K手机游戏产品,又能对自己在软件架构设计、核心算法设计和程序方法设计方面有所提高。

1.2 国内外研究现状

扑克牌游戏流行于世界各地,国内外都有较为成熟的游戏产品。

如图1-1所示,是一款风靡欧美的德州扑克游戏《德州扑克王Online》,它是GeaxGame公司制作的一款画面精致的德州扑克游戏,它提供多种模式供玩家选择,但操作有点繁琐,背离了休闲游戏的简单易用性。

1-1 德州扑克王Online 1-2 QQ斗地主

如图1-2所示,是国内最为流行的QQ斗地主扑克游戏,Q版的画面风格清新可爱,配合完美的语言和聊天系统,备受玩家追捧,但同时它又是一个强联网的游戏,必须有足够的玩家、良好的网络才能玩。

1.3 项目实施方法及成果

本项目的实施是基于Unity3D游戏引擎,按照软件工程原理和通用游戏开发工作划分细则进行的。将整个游戏划分成开始、游戏、退出、结算等多个相互独立的模块,按模块开发,通过从策划、美术、程序三个角度逐次递进设计,使整个游戏项目进行的有序、清晰,最终完成了一款集娱乐性和休闲性为一体的简单、易用、不受网络限制的单机扑克游戏产品。

1.4 项目实施技术背

在本游戏项目的开发过程中主要用到了以下的技术及手段:

(1)C#语言:文献[4]C#是一种面向对象的高级程序设计语言,运行于.Net Framework之上。它具有跨平台的特点,如图1-3C#源代码并不是直接编译成能够直接在操作系统上执行的二进本地代码,而是被编译成了中间语言MSIL,然后通过被称之为通用语言运行时(CLR)——.NET Framework的虚拟机来根据特定的平台翻译成二进制机器码,进而执行形成跨平台的机制。

图1-3 C#跨平台编译机制

(2)Unity3D:文献[6] Unity3d是最近几年迅速发展起来的以手游为主,兼顾各主流软硬件平台的跨平台游戏引擎。它提供了如下众多简单易用的辅助功能:

① 预设(Prefab):诸如精灵、纹理、模型、节点等多种游戏资源按照一定规则组合成的一种集灵活性、便捷可控性为一体的静态资源模版混合体。

② 动态编辑Inspector:如图1-4,文献[7]在Unity3d的编辑界面中有一个Inspector可视化编辑面板,即可用于游戏运行前美术的可视化编辑,也可以用于游戏运行中程序相关参数的动态修改。

③ 脚本挂载:Unity3d提供了一个运行时基类Monobehavior,所有继承自Monobehavior的类都被称为脚本,并具有挂载能力即脚本可手动拖到游戏中的物体上,一旦所挂载的物体被激活,它上面所绑定的脚本将按照既定的流程和生命周期执行下去。

④ 生命周期控制:见图1-5,Unity3d拥有一套完整的生命周期控制,Editor-gt;Initialization-gt;Physics-gt;… -gt;Decommissioning,其中Initialization,Input event,Game logic是我们控制游戏的主要阶段。

图1-4 常见的Inspector面板 图1-5 Unity3d脚本的生命周期

(3)五十K:游戏由四个玩家和52张扑克牌组成,每个人各分得13张牌,游戏以玩家最早出完牌和获得最多的分数为目标,所有玩家手中的牌都出完了游戏结束。五十K游戏中包括单张、对子、三张、炸子和五十K四类牌型,单张、对子和三张只能管相同牌型的牌。当一个玩家出的牌,其他玩家都管不住时称为一个轮结束了,并由该玩家启动一个新的轮并出该轮的第一次牌。分数的结算按照玩家出完牌的次序进行。

2 可行性分析

可行性分析具有公正性、可靠性、科学性和预见性的特点。它是通过对计划实施项目的主要内容和配套条件,比如项目规模、硬件设备、市场需求、资源供应、技术储备、资金筹措和盈利能力等,从经济、技术和工程等方面进行调查取证研究和深入分析比较,并对项目完成后可能取得的经济效益及社会效益进行评估预测,从而提出该项目是否值得开发的咨询意见,为项目的最终实施提供可靠依据的一种综合性的系统分析方法。可行性分析主要包括经济可行性、技术可行性、时间可行性、运行可行性。

2.1 经济可行性

由于本游戏项目是自研的一种出于技术实践和技术提高为目的的小型项目,项目所需人员、技术、设备和时间都是在自身所具备的条件下提供的,无需额外花费,故项目在经济方面是可行的。

2.2 技术可行性

本游戏项目需要C#程序设计语言知识、Unity3D游戏引擎知识、简单的PS图片处理知识、游戏策划知识和游戏关键算法设计知识,这些知识都是我本人已经掌握了的,故项目在技术方面是可行的。

2.3 时间可行性

本游戏项目的规划实施是在自身时间允许的条件下,利用周六周日、课后和晚间闲暇时间缓步实施的,既不影响平时学习,又没有其他的额外特殊时间需求,故项目在时间方面是可行的。

2.4 运行可行性

本游戏项目运行所需的硬件设备PC电脑和安卓手机及软件基础Windows7电脑操作系统、Android手机操作系统和Unity3D游戏开发系统都是手上现成可用的,故项目在运行方面是可行的。

3 需求分析

需求分析是指项目规划实施之前对项目做的详细的分析,弄清项目的具体客观要求,包括需要输入什么数据,想要得到什么结果,最终输出什么和项目开发所需的各种其他需求。简单的说就是要确定计算机“要做什么”和需要什么作为前提条件。不同于普通的应用,所需的数据规模往往庞大、复杂,一般通过数据库管理系统单独管理,游戏开发,尤其是手机游戏开发所需的数据量少、简单,都是事先规划好的,数据处理起来也简单,无需额外的数据库系统进行管理。手机游戏所需数据有很大一部分在交互上,属于交互数据,故这部分数据相关需求分析我们留在详细设计阶段,在此不做赘述,我们先做其他非数据部分的需求分析,即项目实施前提需求分析。

3.1 硬件需求

PC电脑、安卓手机

3.2 软件需求

Windows7电脑操作系统、Android手机操作系统、Unity3D游戏开发引擎、Visual Studio 2012代码编辑器、PhotoShop CS6图片处理软件

3.3 材料需求

本项目所需的各种图片、音效、音乐等资源(所需资源材料均来自于网络)

4 概要设计

概要设计是根据用户交互过程和用户需求来形成交互框架和视觉框架的过程,其结果往往以反映交互控件布置、界面元素分组以及界面整体板式的页面框架图的形式来呈现。是用户研究和设计之间的桥梁,使用户研究和设计无缝结合,将对用户目标与需求转换成具体界面设计解决方案的重要阶段。

4.1 框架设计

框架,是指在软件开发实施前对整个项目进行全局提取、优化,以一套成熟而行之有效的构架方法来做一个稳定、高效、最优的软件开发基础底层结构,并脱离于具体的项目开发,实现底层解耦,以达到软件复用的目的,例如C#的.NET框架、Java的MVC框架和Web开发的CS框架等都是最常见软件开发框架。

本游戏项目的开发除了利用了C#的.NET框架和Unity3D固有的框架外,利用单例模式来设计单例类进行游戏全局数据的管理和游戏进程管理,利用观察者模式实现事件的监听,利用模块设计来划分、设计游戏,实现游戏的解耦,进而实现游戏开发的高效、稳定、优化。

4.2 模块设计

根据界面划分,本游戏的主要模块有菜单模块、退出模块、设置模块、帮助模块、开始模块、游戏模块、结算模块等。

4.3 概要图

下面是游戏各模块的效果图

图4-1 菜单界面 图4-2 退出界面

图4-3 设置界面 图4-4 帮助界面

图4-5 开始界面 图4-6 游戏界面

剩余内容已隐藏,请支付后下载全文,论文总字数:14347字

相关图片展示:

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;