c#与unity3d的第一人称射击游戏

随着计算机技术与计算机硬件的快速发展,人们可以用计算机进行更多的应用。射击游戏具有非一般的娱乐性,能提高玩家的反应能力和双手对于距离移动的敏感度。也能在繁忙的工作之余为玩家带来放松的娱乐体验。本次毕业设计的课题为基于C#与Unity3D的第一人称射击游戏,目的在于设计出一款具有第一人称射击游戏基本要素的简单明了的游戏。其中包括主角的移动、射击,敌人的移动、对主角的定位和攻击,以及主角与敌人的交互攻击设定。解决敌人后的分数是游戏中的“行动—收益”交互的直接表现以及最终目的。
目录
一、 引言 1
(一)开发背景 1
(二)研究目的与意义 1
二、 系统技术及运行环境 2
(一) 系统技术 2
1. Uinty3D 2
2. C#语言 2
3. Autodesk Maya 3
(二) 运行环境 3
三、 系统分析 5
(一) 需求分析 5
(二) 可行性分析 5
四、 系统设计 6
(一) 设计目标 6
(二) 系统实现 6
1. 界面设计 6
2. 玩家角色设计 17
3. 敌人设计 26
4. 交互设计 34
5. 出生点 39
6. 发布游戏 41
五、 总结 43
六、 致谢 44
七、 参考文献 45
引言
(一)开发背景
自1964年计算机诞生开始,从军事到社会科学研究到生活,人类在各种领域的生产生活活动都有了计算机的协助。而今,随着硬件系统和软件系统的不断发展,人们能够用计算机实现的东西越来越多,对计算机技术和文化产业的投入也在不断增长,以计算机为平台的娱乐发展也渐渐受到人们的了解与关注。
第一人称视角射击游戏又称FPS(Firstperson Shooter)游戏。FPS游戏出现时与当时市场上的其他类型游戏有很大差异,玩家通常在无法看到屏幕中的虚拟人物,以接近现实的第一人称视角进行游戏。以这种视角进行游戏不仅拉近了玩家与游戏之间的距离感,而且更加细致地、全方位 *好棒文|www.hbsrm.com +Q: ^351916072* 
地向玩家展示了游戏中想要向玩家展现的隐藏信息。将3D作为表达形式将不可避免地使玩家更接近真实的游戏体验,大大增强了游戏的主动性和真实感。其他游戏只能让玩家控制一个可见的角色,这不免使得玩家潜意识中带有违和感,而FPS游戏则带来了前所未有的代入感和视觉冲击。
1992年,《Wolfstein 3D》出现,并由id Software在DOS iPhone OS等平台上发布,这款游戏被认定为FPS游戏的开山之作。游戏中玩家需要在一个完全由纹理映射拼成的纳粹城堡里进行探索来进行游戏。
从此第一人称射击游戏便成为了11个游戏大类中不可或缺的一个部分。在FPS游戏诞生的近30年中,品质优秀、内容深刻、传播范围广、影响力大的FPS游戏层出不穷,将第九艺术的魅力发挥的淋漓尽致。
现如今第一人称射击游戏的受众范围相当大,其中著名的如CS:GO(反恐精英:全球攻势)、Rainbow Six:Siege(彩虹六号:围攻)、CrossFire(穿越火线)等成为众多游戏爱好者们热衷的第一人称射击游戏。以腾讯代理的CF为例子,2011年收入超过40亿,2012年收入近60亿,虽然近两年因以LOL(英雄联盟)为首的MOBA类游戏已经超越FPS游戏成为创收成绩更好的游戏,但这依然无法否认FPS游戏是游戏市场乃至娱乐市场中的不可忽视的一个大的方向。
(二)研究目的与意义
本次游戏设计的目的是开发一个具有基本FPS游戏要素的小游戏,如基本的第一人称视角下的,玩家作为主角的视角移动、人物移动以及瞄准射击的要素。使自己对FPS游戏的框架和设计流程进行一个初步的认知,以及激发自己对于射击游戏开发的兴趣,同时积累对多种类开发软件的协同运用经验。
系统技术及运行环境
系统技术
Uinty3D
图2.1 Unity3D引擎示意图
现在制作3D游戏的主流引擎有虚幻,CryEngine 3,HeroEngine,Rage Engine,Project Anarchy等等,而本次设计我所使用的是Unity3D引擎。
Unity3D是Unity Technologies开发的技术专业游戏引擎。 它可以做很多事情,例如制作3D视频游戏,可视化建筑物,与3D动画内容交互等等。 它可以满足多平台,高度全面的用户需求。
Unity3D是游戏开发者真正负担得起的引擎,拥有众多其他引擎无法比拟的用户群体。 更重要的是,您只需支付一次,无论您的游戏有多成功,都不要担心Unity会分摊您的收入。 对于许多开发人员来说,这当然是非常有吸引力的,尤其是初创公司和新手的开发人员[1]。
介于本次设计的功能实现的要求,使用Unity3D作为开发工具进行界面与画面的开发是较为合适的选择。
C#语言
图2.2 C#语言示意图
C#是一种源自C和C ++的面向对象编程语言。C#将VB的简单可视化操作与C ++的高运营效率相结合,具有以下特点:操作能力强、语法风格优雅简洁、语言创新性强,尤其在面向组件编程时使用十分便捷。这一切都使得它成为.NET开发的首选语言。
在Unity3D物理引擎中仅支持C#进行游戏脚本的编写(自2017年8月份开始,在此之前也支持UnityScript进行脚本编写),这有利于Unity引擎开发效率的提高。
以上因素决定了在本设计中,C#被用于进行游戏脚本的编写。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/rjgc/1040.html

好棒文