一、游戏策划简介(游戏类型、游戏主题、游戏故事简要概述)
1、游戏类型:
个人冒险类游戏
2、游戏主题:
救出Alice的妹妹
3、游戏故事简要:
Alice的妹妹被困在了房子里,Alice请求冒险家帮她把妹妹救出来,冒险家在岛上收集够了足够的能源终于打开房门救出了妹妹。
二、游戏交互方式(玩法、如何操作、游戏规则)
1、玩法
玩家要控制冒险家在岛上的各个地方收集能源,与NPC对话可以获得提示,收集够四个能源之后打开房门救出妹妹赢得胜利。
2、如何操作
WASD控制冒险家上下左右移动,空格键跳跃,X键可以搬动石块。
3、游戏规则
1、必须收集四个能源块才能打开房门。 2、必须在靶场得到400分才能得到能源块。 3、必须搬走石块才能得到能源块。 4、玩家的活动范围不能超出小岛之外。 5、必须救出妹妹才能赢得胜利
三、游戏工程环境(unity版本、外置插件说明、外部资源包)
1、unity版本
Windows版本:Unity3d 5.5.0f3
2、外置插件说明
无
3、外部资源包
1、背景音乐: Pure World 2、游戏界面上的图片
3、神殿的FBX资源包,石门的资源包,房间以及人物模型的资源包
四、游戏场景管理(场景关系)
1、场景关系
1、游戏开始界面的场景 2、游戏玩法介绍的场景 3、游戏游玩的场景
4、关系:游戏开始界面可以进入游戏玩法介绍的场景和游戏过程的场景,游戏胜利之后自动跳转到游戏开始界面的场景
五、功能模块: (实现过程描述)GUI 玩家(摄像机)控制 敌人的生成、敌人的控制……
1、 主要的Gui:
1 人物对话的gui:人物对话时显示背景图片和对话内容,背景图片和对话内容的添加通过代码添加,创建两个public变量,然后从角色位置向NPC发射一条经过鼠标位置的射线,如果击中NPC 则进入到对话状态,显示对话内容和背景图片。
具体代码如下:
效果图:
2打靶处gui的实现:打靶处的GUI是通过人物接触到垫子的触发器出现的,当人物站在垫子触发器的范围之内可以射击靶子,建立三个public变量,分别存放准星,得分以及分数的GUI,然后判断人物是否接触到垫子,如果接触到则显示GUI并且可以发射小球,小球是提前存放的预置对象。 具体代码如下:
3 能源的gui:能源的GUI需要使用动态材质,因为人物每收集一个电池GUI都要发生改变,这段代码放在人物身上,提前设置好需要改变的数量以及GUI图片,再捡到电池的时候依次显示。关键代码如下:
4游戏开始的GUI界面:游戏开始界面的GUI显示是先创建了一个空对象,在空对象上添加了GUItext组件,然后写代码,把图片转换成GUI再拖到代码上。
2 、玩家:
Unity自带的第一人称视角
3、摄像机:
一共2个摄像机,一个主摄像机,一个第一人称的摄像机,玩的时候是以第一人称为主。
4 npc:
Alice:委托玩家任务的NPC,请求玩家救出被困在房子里的妹妹
Amy:被困在房子里的Alice的妹妹,当玩家接触到Amy时则判断游戏胜利。 Bob:给予玩家提示的NPC,告诉玩家哪里可以得到能源。
5 背景音乐:
在主摄像机上添加
这俩个组件。 添加背景音乐
文件。
六、总结(在制作过程出现的问题、学习心得)
1、出现的问题:
1、和Bob说话时,改变鼠标样式之后改变不回来。 2、模型导入时出现的一些贴图丢失。
3、导出时鼠标样式错误,因为之前用的是GUI格式的,改变成Cursor格式后解决了这个问题。
4、还有许多小问题经过努力得以解决。
2、学习心得
以下是对自己在学习unity中所领悟到的新知识的一些体会:
关于摄影机控制,如果场景中有多架摄影机,那么如何确定第一打开时间所显示的摄影机,就需要设置Camera属性中的Depth数值,数值越大的摄影机越优先显示。
加载游戏关卡, 即 切换游戏场景Sence Application.LoadLevel(\"GameSence\"); 销毁游戏对象
Destroy(this.gameObject);
通过这一学期对于Unity的学习,虽然很累,但是很开心,觉得这个专业没选错,真正开始制作游戏才知道游戏制作人的辛苦,以前一直梦想着自己有一天也能够做出来所有人都喜欢的游戏,希望能够更精进的学习Unity,做出来更多有趣的游戏。
因篇幅问题不能全部显示,请点此查看更多更全内容