毕业设计(论文)-《寻找楼兰》三维手机游戏设计与实现.doc_第1页
毕业设计(论文)-《寻找楼兰》三维手机游戏设计与实现.doc_第2页
毕业设计(论文)-《寻找楼兰》三维手机游戏设计与实现.doc_第3页
毕业设计(论文)-《寻找楼兰》三维手机游戏设计与实现.doc_第4页
毕业设计(论文)-《寻找楼兰》三维手机游戏设计与实现.doc_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

琼 州学院QIONGZHOU UNIVERSITY2015届本科毕业论文(设计)全套设计加扣 3012250582题目: 寻找楼兰三维手机游戏设计与实现学 院: 创意与设计学院 专 业: 数字媒体技术 学 生 姓 名: 班 级: 11数字媒体(1)学号: 指导教师姓名: 职称: 日 期: 2015年5月18日 琼州学院教务处 二一三年六月制目 录第一部分 设计说明书一、设计说明书 1第二部分 过程管理资料二、毕业论文(设计)课题任务书31三、本科毕业论文(设计)开题报告33四、本科毕业论文(设计)中期报告43五、毕业论文(设计)指导教师审阅表46六、毕业论文(设计)评阅教师评阅表47七、毕业论文(设计)答辩评审表482015届本科生毕业设计说明书题 目:寻找楼兰三维手机游戏设计与实现学院: 创意与设计学院 专 业: 数字媒体技术 学 生 姓 名: XXX 班 级: 11数媒 学号 11217002 指导教师姓名: XXX 职称 教授 最终评定成绩 2015 年 5 月题目:寻找楼兰三维手机游戏设计与实现作者:XXX导师:XXX摘 要随着手机游戏的商业模式进一步凸显,人们对手机的休闲娱乐功能需求越来越强烈,手机游戏已成为现代人们生活娱乐中必不可少的主流移动终端设备。在此大前提下,开发出一款融入楼兰建筑、文化,游戏性与文化性兼具的三维休闲解谜类游戏。本论文主要围绕实现三维手机游戏技术开发相关内容进行详细的介绍说明。按照当今行业的三维手机游戏应用产品制作相关流程,主要涉及三维游戏场景建模技术、贴图制作技术、Unity场景集成技术、Unity粒子特效、将游戏从Unity三维游戏引擎移植到手机等技术。“矛盾空间”是本游戏的最大特点。在游戏过程中,由最基本的点触控制主角的行走,触发机关,利用旋转建立视觉误差,走出楼兰迷阵。通过触动机关和不同的关卡充分展现楼兰丰厚的历史底蕴,包括现存遗址和复原后的楼兰国,给玩家更直观的视觉感受,带来一场别具风情的文化体验之旅。关键词:手机游戏,游戏引擎,楼兰,矛盾空间IVDesign and Implementation of “For Lonlan”- the Three-dimensional Mobile GamesAuthor:XuYanTutor:Tian XingyanABSTRACTWith the business model of mobile game further highlight, people has increasingly-strong-requirement on the phones leisure and entertainment functions. Mobile games have become essential mainstream mobile devices in modern life and entertainment. Under this premise, we developed a three-dimensional puzzle casual game,integration of Loulan architecture, culture, both cultrual and gameplay.This thesis mainly do a detail instructions focus on achieving three-dimensional mobile gaming technology development related content. According to nowadays related processes of three-dimensional mobile gaming applications, mainly involved three-dimensional gaming scene modeling, texturing techniques,Unity scene integration technology, Unity particle effects, three-dimensional game from the Unity game engine ported to mobile phones and other technologies. Contradictory Space is the most important feature of this game. During the game, player use the most basic touch to control protagonist walking, triggering organ, rotating for establish visual error, finally out of Loulan maze. Through touch organs and different levels,game fully display Loulans rich historical heritage, including the existing site and restored Loulan country, give players more intuitive visual experience, and bring a unique style of the cultural experience trip.Keywords: mobilegame, game engine, Loulan,contradiction space V目 录1 绪论11.1选题背景与意义11.1.1 选题的背景11.1.2 选题的意义11.2 选题国内外的研究现状21.3 游戏概述32 项目框架及流程42.1 框架42.2 流程43 角色状态控制的设计与实现53.1 角色动画的制作53.2 第三人称角色控制器63.3 自动寻路功能84 场景的设计与实现94.1 场景模型的设计与制作94.2 场景模型贴图94.2.1 模型贴图的制作104.2.2 法线贴图104.3 场景的搭建114.3.1 搭建地形114.3.2 着色器的设置124.3.3 粒子特效系统145 事件触发155.1 角色与道具的碰撞155.1.1 碰撞一155.1.2 碰撞二155.1.3 碰撞三165.1.4 碰撞四175.1.5 碰撞五175.1.6 碰撞六185.1.7 碰撞七185.2 玩家对道具的操作195.2.1 玩家操作道具旋转195.2.2 玩家操作道具移动196 游戏规则的实现216.1 游戏规则216.2 关卡介绍216.3 胜负判断217 游戏GUI的实现227.1 开始界面的实现227.2 功能界面的实现237.3 主界面的实现238 游戏展示25结 论28参考文献29致 谢30VII琼州学院本科毕业设计说明书(论文)1 绪论1.1 选题背景与意义1.1.1 选题的背景随着手机游戏的商业模式进一步凸显,人们对手机的休闲娱乐功能需求越来越强烈,手机游戏已成为现代人们生活娱乐中必不可少的主流移动终端设备1 王晓光,梅华,刘阳. FLAC3D数值模拟在地基沉降计算中的应用J.甘肃科技.2013,05:110-111.2 Fadi Chehimi, Paul Coulton, Reuben Edwards. Evolution of 3D mobile games developmentJ. Personal and Ubiquitous Computing, 2007, 12(1).3 张屏,张克平. 古楼兰遗址的保护与开发刍议J.徐州教育学院学报.2004,01:48-50.。基于此背景,如何让游戏最大程度的体现其社会价值、让玩家在玩游戏的过程中获得更多的民族文化输出,是此次选题的重要出发点。希望最终可以结合楼兰建筑、文化,开发出一款游戏性与文化性兼具的3D休闲解谜类游戏,让楼兰的文化得到更大的传播。1.1.2 选题的意义 理论意义随着科学技术的高速发展和3G/4G网络的普及,基于手机操作系统的3D应用早已炙手可热,深受年轻一代人的喜爱。由于技术上的不断创新,导致市场上的大多数产品都是具有硬件加速3D图形功能的智能手机。这首手机进行的游戏画面质量以及视觉效果与专业的游戏设备不分伯仲。市场机遇当前,移动设备上的3D游戏开发项目成为了众多游戏开发商及发行商关注的焦点,大量的资金投入以及技术的不断完善,也促使了移动设备上3D游戏行业本身的发展。所以,3D游戏不仅在现在,在将来也会在市场中占据极为重要的一部分,成为游戏市场的主流。而将游戏与民族文化相结合,对于民族文化没有得到最大传播的当今社会,这种做法,不但可以使手机游戏内容多元化,更重要的是为文化传播提供了一个很好的输出途径。 现实意义楼兰古国有着盛极一时的历史和灿烂的绿洲文明。由于地处丝绸之路要塞,是西出阳关第一站,楼兰往来使者、商贾相望于道,络绎不绝。这不仅是楼兰人获得巨大经济利益,也使各种先进文化得以再次汇合交融,形成了其独特的相当灿烂的绿洲文明3。从目前传世的发掘资料和考古遗存看,当时世界上一切先进文化都可在此找到印迹。所以,举世闻名的楼兰古国遗址一经发现便轰动全世界。楼兰艺术是东西方及本土艺术相互交融的产物,蕴藏在该地区艺术遗产中的不同文化因素极其丰富,它体现了楼兰艺术多元化的文化特质,从而构成了该地区独特的艺术形态和艺术特征。不仅如此,古楼兰艺术还曾对东西方艺术的发展产生过极为重要的影响,该地区所发现的诸多艺术遗迹已成为人类艺术中绝无仅有的珍贵遗产,在中外艺术史中拥有不可低估的学术价值4 李青.论楼兰艺术的风格特征与学术价值J.艺术探索,2003,05:6-10.。但从目前的情况来看,对楼兰的保护和开发做的还远远不够,如此伟大的文明遗产,我们需要将它尽可能的传播出去,并更好的保护它。在这一背景下,便策划了寻找楼兰这样一款更加具有文化传播的现实意义的3D休闲解谜类游戏,将楼兰的建筑、文化与游戏结合起来,在游戏过程中,利用旋转建立视觉误差,通过机关触动和不同的关卡充分展现楼兰丰厚的历史底蕴,包括现存遗址和复原后的楼兰国,给玩家更直观的视觉感受,带来一场别具风情的文化体验之旅。1.2 选题国内外的研究现状随着信息技术不断地更新和发展,人们的工作和生活也被移动商务带来了巨大的改变,手机作为最主要的移动媒介,在人们工作、生活和娱乐中是必不可少的。目前国内的移动通信网络已经进入4G时代,手机游戏产业日益成为数字娱乐文化产业的主力军,人们对手机的休闲娱乐功能需求越来越强烈,手机游戏已成为现代人们生活娱乐中必不可少的主流移动终端设备1。而三维游戏更是逐渐成为了一种游戏主流。从手机游戏开发技术的现状来看,呈现出的特征是挑战多、竞争大,同时发展前景也很好。当今时代是一个技术更新非常快速的时代,手机游戏开发技术的更新和突破正在接受这市场严峻的考验。在发展的过程中有竞争和挑战,更有机遇和成长,手机游戏的开发在未来的市场上具有重要地位,这就对手机游戏开发技术有了更高要求。随着社会节奏的加快,游戏模式也出现了变化,更多游戏者没有足够的时间体验如角色扮演游戏之类消耗过多时间的游戏,此时,简单明了、游戏方法容易上手的游戏受到了极大的追捧,此类游戏时间相对较短,游戏可玩性较高。没有过多的游戏剧情,只有某种简单的行为与通关剧情的休闲游戏成为了大多数玩家的最佳选择,其目的也只是帮助游戏者消磨时间,同时可以得到一些感官上的愉悦。因此在未来的手机游戏设计开发过程中,首先要把握所在平台的硬件性能并且适应系统的特性与缺陷,其次在游戏内容设计上不宜冗长,以短时间内可以通过游戏得到愉悦心情为目的进行定位,将重点放在游戏性上,制造贴合用户需求的游戏。三维手机游戏作为移动终端的主流设备,具有极大的市场潜力。1.3 游戏概述寻找楼兰以玩家找到正确道路通往目的地为背景,结合楼兰古城场景,设计开发出一款三维手机休闲解谜类游戏。将楼兰古城的建筑、文化与游戏结合起来,在游戏过程中,点触控制角色行走,利用旋转建立视觉误差产生“矛盾空间”,通过机关触动和不同的关卡充分展现楼兰,包括现存遗址和复原后的楼兰国,给玩家更为直观的视觉感受,带来一场别具风情的文化体验之旅。2 项目框架及流程2.1 框架开始游戏游戏说明开始界面调节音量第一关卡退出第二关卡寻找楼兰第三关卡游戏失败界面游戏成功界面 图2.1 框架图2.2 流程开始第一关卡游戏说明选择调节音量第二关卡第三关卡退出 图2.2 流程图3 角色状态控制的设计与实现3.1 角色动画的制作使用Maya软件制作人物角色模型,在Photoshop软件中制作模型贴图。然后回到Maya对角色模型贴图材质,进行模型色彩、纹理、质感等的设定工作。根据角色在游戏中的运动要求,进行骨骼蒙皮,使角色可以正常动作。最后从Maya中导出FBX格式的文件,并将其导入Unity3D中。游戏主角是以游戏超级马里奥兄弟中的马里奥为原型设计的。根据游戏的休闲益智的定位,结合马里奥的本身的角色特点以及国内的认知度,将几乎不相关的马里奥和楼兰结合在一起,有矛盾的冲击感。图3.1 角色一未渲染效果图图3.2 角色一渲染效果图游戏中的女性角色是以楼兰美女和楼兰公主为原型制作的。说起楼兰就能想起“楼兰美女”,在游戏的末尾加入该角色可以很直观的强化楼兰元素。同时也使游戏更具有观赏性和趣味性。图3.3 角色二渲染效果图3.2 第三人称角色控制器(1)先设置角色状态,并将当前功能码设为该状态对应功能字段。(2)控制角色移动。根据相机位置获得角色控制方向,在相机空间中进行计算, 使upDirectionOnCamera朝向相机,获得投影到地面后的up和right,根据鼠标位置获得角色控制方向。在处理用户输入时,竖直和水平两个操作方向在世界空间中对应的方向分别是up,right。在地面上,可根据输入调整角色移动方向。部分代码如下:void Controll() if (!CheckFunction (FunctionBit.Controllable) return;Vector3 targetDirection; Vector3 up, right; GetControllDirection (out up, out right);float vertical = Input.GetAxisRaw (Vertical);float horizontal = Input.GetAxisRaw (Horizontal);targetDirection = horizontal * right + vertical * up;(3)角色最终移动的向量,先要在几何上检测角色是否站在地面上,根据重力加速度更新角色下落速度,接受用户操作后,确定本帧的角色状态和运动信息,然后计算位移向量,移动角色。部分代码如下:SetGravity ();Controll (); movement = moveDirection * moveSpeed + verticalSpeed * upDirection + inAirVelocity;movement *= Time.deltaTime;if (customControllable & CheckFunction (FunctionBit.Controllable) transform.rotation = Quaternion.LookRotation (moveDirection, upDirection); Move (movement); (4)根据潘洛斯三角形的需要调整角色位置,部分代码如下:void _DepthAdjust(string hitName) bool isAdjust = false;if (Vector3.Dot (upDirection, cameraObject.transform.forward) 0.0f) if (hitName = Front2) transform.position = new Vector3(3.0f, 0.5f, 2.5f);isAdjust = true;if (hitName = Back0) transform.position = new Vector3(-3.0f, 5.5f, -2.5f);isAdjust = true;if (isAdjust) lastColliderCenter = transform.TransformPoint (capsuleCollider.center); static public float standAngle = 20.0f; private float standAngleCos = Mathf.Cos (standAngle * Mathf.Deg2Rad);(5)检测与地面的接触,解决穿透问题。当角色下落速度太大时,采用连续碰撞检测。角色加上一层skin(防抖动)后,找出其与地面接触点。地面坡度小于standAngle时,直接调整角色位置解决穿透,根据潘洛斯三角形的需要调整角色位置。部分代码如下: void CheckGrounded() if (!CheckFunction (FunctionBit.CheckGround) return; RaycastHit hitInfo; Vector3 curColliderCenter = transform.TransformPoint (capsuleCollider.center); Vector3 movement = curColliderCenter - lastColliderCenter; bool isHit = false; if (Vector3.Dot (upDirection, movement) -1.0f) Vector3 rayDirection = movement - 0.5f*capsuleCollider.height*upDirection; isHit = Physics.Raycast (lastColliderCenter, rayDirection.normalized, out hitInfo, rayDirection.magnitude, (1 LayerMask.NameToLayer (Mario); else isHit = Physics.Raycast (curColliderCenter, -upDirection, out hitInfo, 0.5f*capsuleCollider.height + skin, (1 Create Terrain,窗口内自动产生一个平面,即地形默认使用的基本原型;(2) 选择Terrain Set Resolution功能可以检视默认的地形所设定基本参数;(3) 在Inspector面板中的Terrain(Script)是关于整个地形的所有功能设定,最上面的七个按钮为主功能区,从左至右的功能按钮分别是:l Raise and Lower Terrain 绘制地形表面凹凸程度,如在绘制过程按下 Shift 则将地形向下凹陷。l Paint height 绘制地形高度l Smooth the terrain height 对地形表面进行平滑处理l Paint the terrain texture 绘制地形表面贴图l Place trees 种植树木功能l Place plant,stone and other small foliage 种植花草与地形表面对象l Terrain 地形相关参数设定(4) 选择Import Heightmap Raw功能,Raw文件里记录着灰阶的位阶图,由灰阶的落差来产生地形的高低;(5) 经过贴图的导入,原本的平面转换成高低起伏的地形,接着即可绘制地形上的纹理效果;(6) 导入不同的贴图优化地形;(7) 在地形上防止植物花草等。地形效果图如下:图4.4 地形效果图4.3.2 着色器的设置着色器Shader是用来实现图像渲染的用来替代固定渲染管线的可编辑程序。此处设置着色器的目的是为了达到视觉错觉的目的,使不在同一水平的物体通过着色器的设置达到在一个水平线的效果。部分代码如下:(1)对距离Camera近端:Properties _MainTex (Base (RGB), 2D) = white _DepthOffset (Depth Offset, Float) = 0.0SubShader Tags RenderType=Opaque PenroseType=Front Queue=Geometry+1 LOD 200 Stencil Ref 1 Comp Notequal Pass DecrWrap ZTest Off ZWrite OffCGPROGRAM#pragma surface surf Lambertsampler2D _MainTex;struct Input float2 uv_MainTex;void surf (Input IN, inout SurfaceOutput o) half4 c = tex2D (_MainTex, IN.uv_MainTex);o.Albedo = c.rgb;o.Alpha = c.a;ENDCG FallBack Diffuse(2)对距离Camera远端,同理。图4.5着色器设置前的预览效果图4.6 着色器设置后的预览效果4.3.3 粒子特效系统粒子特效的原理是将若干粒子无规则的组合在一起,来模拟火焰、爆炸、雾气、水滴等效果。它们使场景更加丰满、真实,粒子系统由三个单独的组件组成:粒子辐射源、粒子动化和粒子渲染器。要使用粒子特效首先要创建,在hierarchy视图中点击Createparticle system。本游戏中主要使用了两个粒子特效,一个是Sparkle Rising,作为每关游戏的终点指标;一个是沙尘特效,模拟沙漠的沙尘效果;一个是dust_puff_continuous_01,为场景增加自然风的效果。5 事件触发5.1 角色与道具的碰撞5.1.1 碰撞一当角色与物体Switch发生碰撞后,物体Switch销毁,并触发可旋转建筑体旋转180度。建立视觉差异。如果将角色所站的初始位置视为该建筑的一楼,那么其后树立的物体肯定高于一楼,假定其为二楼。当它旋转180度后,水平的一楼与二楼相接,并且角色可顺畅通行。图5.1 角色在游戏中的碰撞一部分代码如下:void OnTriggerEnter(Collider hit)if (hit.tag.CompareTo (Player) != 0)return;Destroy (this.gameObject);RightAngle.transform.Rotate (0, 180, 0);Sphere.transform.Translate (new Vector3 (3, 0.5f, 0);SEffect1.Play ();5.1.2 碰撞二角色与粒子所在处的隐藏碰撞体发生碰撞,即实现场景转换,从游戏入门,正式进入游戏关卡。图5.2 角色在游戏中的碰撞二部分代码如下:void OnTriggerEnter(Collider hit)if (hit.tag.CompareTo (Player) != 0)return;Destroy (this.gameObject);Application.LoadLevel (2);5.1.3 碰撞三角色正式进入游戏的楼兰场景,与红色圆柱Cylinder_Red1发生碰撞。碰撞发生后,红色圆柱Cylinder_Red1向下移动隐藏,Up1和Up2分别向上平移,同时红色圆柱Cylinder_Red2上移出现。图5.3角色在游戏中的碰撞三部分代码如下:void OnTriggerEnter(Collider hit)if (hit.tag.CompareTo (Player) != 0)return;Cylinder_Red1.transform.Translate (new Vector3 (0, -1f, 0);Cylinder_Red2.transform.Translate (new Vector3 (0, 0.25f, 0);Up1.transform.Translate (new Vector3(0, 2.18f, 0);Up2.transform.Translate (new Vector3(0, 2.68f, 0);Destroy (Door_in.gameObject);SEffect1.Play ();5.1.4 碰撞四角色与隐藏物体Cube_L2发生碰撞,使门Door_Out销毁,并瞬间改变角色的位置。部分代码如下:void OnTriggerEnter(Collider hit)if (hit.tag.CompareTo (Player) != 0)return;Destroy (Door_out.gameObject);player.transform.position = p1;MoveCube.renderer.enabled = true;5.1.5 碰撞五 角色与红色圆柱Cylinder_Red2发生碰撞,可旋转物体RightAngle_L2旋转270度,实现视觉错觉的效果,使明明不在一个水平面的RightAngle_L2与台阶Stairs2在渲染后呈现在一个水平面的效果。图5.4 角色在游戏中的碰撞五部分代码如下:void OnTriggerEnter(Collider hit)if (hit.tag.CompareTo (Player) != 0)return;Destroy (this.gameObject);RightAngle_L2.transform.Rotate (0, 270, 0);SEffect1.Play ();5.1.6 碰撞六 角色与隐藏物体FinalCube_2发生碰撞。部分代码如下:void OnTriggerEnter(Collider hit)if (hit.tag.CompareTo (Player) != 0)return;Destroy (this.gameObject);Destroy (MoveCube.gameObject);Camera_B.enabled = true;Camera_A.enabled = false;StartCoroutine(WaitAndPrint(2.0F);Basic3_up1_8.renderer.enabled = true;Basic3_up1_9.renderer.enabled = true;Basic3_up1_10.renderer.enabled = true;IEnumerator WaitAndPrint(float waitTime) yield return new WaitForSeconds(waitTime);5.1.7 碰撞七 角色与红色圆柱Cylinder_Red3发生碰撞。部分代码如下:void OnTriggerEnter(Collider hit)if (hit.tag.CompareTo (Player) != 0)return;Destroy (this.gameObject);MoveCube.transform.Translate (new Vector3(2.57f,5,2.03f);player.transform.position = p2;SEffect1.Play ();5.2 玩家对道具的操作5.2.1 玩家操作道具旋转玩家选中可旋转物体,可直接操作道具旋转。部分代码如下:Ray rayObj = Camera.main.ScreenPointToRay(Input.mousePosition);RaycastHit hitObj;if (Physics.Raycast(rayObj, out hitObj)target_transform = hitObj.transform;if (target_transform != null)if(target_transform.tag=Rotatable) GameObject.Find(Mario).GetComponent().movement();float mousX = Input.GetAxis(Mouse X) * roate_Speed;target_transform.transform.Rotate(new Vector3(0, -mousX, 0);5.2.2 玩家操作道具移动玩家通过碰撞事件操作道具的移动。与红色圆柱Cylinder_Red1发生碰撞后,图5.5 玩家操作道具移动一部分代码如下:void OnTriggerEnter(Collider hit)if (hit.tag.CompareTo (Player) != 0)return;Cylinder_Red1.transform.Translate (new Vector3 (0, -1f, 0);Cylinder_Red2.transform.Translate (new Vector3 (0, 0.25f, 0);Up1.transform.Translate (new Vector3(0, 2.18f, 0);Up2.transform.Translate (new Vector3(0, 2.68f, 0);Destroy (Door_in.gameObject);SEffect1.Play ();6 游戏规则的实现6.1 游戏规则在游戏过程中,由最基本的点触控制主角的行走,其间利用旋转建立视觉误差、拖拽带有特殊符号的地点改变地形位置,或者借踩踏在凸起的机关上,触发机关,带领角色走出楼兰迷阵。6.2 关卡介绍关卡设计的重要性在于它是游戏性的重要组成部分,游戏的节奏,难度阶梯等方面很大程度上要依靠关卡来控制 11 Phil Co. Level Design for Games: Creating Compelling Game Experiences M.America: New Riders Games, 2007.。本游戏为闯关类游戏,由三关组成。第一关卡:新手入门。由极简的模型搭建的场景,背景为黑色。设置此关的目的是让玩家在进入正式关卡前熟悉游戏的玩法,以便更好的体验游戏。第二关卡:初入楼兰。由一座楼兰城组成,游戏难度属于容易。第三关卡:楼兰之旅。由一座较为复杂的楼兰城组成,它包含城的外部和内部,游戏难度属于中等偏上。6.3 胜负判断玩家控制角色到达目标地点,并通过所有关卡,即为玩家获胜。否则,玩家失败。7 游戏GUI的实现7.1 开始界面的实现打开游戏APP,首先进入游戏的开始界面。开始界面中右游戏名称“寻找楼兰”,“开始”、“游戏说明”、“退出”三个主功能按钮,和关于背景音乐设置的“播放音乐”、“关闭音乐”、“暂停音乐”和调节音量大小的横向滑动条,以及跟楼兰息息相关的沙漠作为背景。图7.1 开始界面先设置默认音量,为50%,再设置播放、关闭、暂停三个按钮,创建一个横向滑动条用于动态修改音乐音量部分代码如下:void Start() musicVolume = 0.5F;void OnGUI() if (GUI.Button(new Rect(10, 10, 100, 30), 播放音乐) if (!music.isPlaying)music.Play();if (GUI.Button(new Rect(10, 50, 100, 30), 关闭音乐) if (music.isPlaying)music.Stop();if (GUI.Button(new Rect(10, 90, 100, 30), 暂停音乐) if (music.isPlaying)music.Pause();musicVolume = GUI.HorizontalSlider (new Rect(10, 140, 100, 50), musicVolume, 0.0F, 1.0F);GUI.color = Color.white;GUI.Label(new Rect(10, 155, 300, 20), 音量大小为 + (int)(musicVolume * 100) + %);if (music.isPlaying)music.volume = musicVolume;7.2 功能界面的实现游戏的功能界面,当点击按钮“开始”,则直接进入游戏;点击按钮“游戏说明”,则进入游戏的说明界面,简单介绍游戏玩法,在“游戏说明”界面中,点击“返回”可重新回到开始界面;当点击按钮“退出”,则直接退出游戏。图7.2 功能界面7.3 主界面的实现当玩家点击“开始”按钮后,先进入的是“新手入门”的关卡,即让玩家先熟悉游戏的玩法,以便更好的感受游戏正式关卡中的趣味。只有通过了“新手入门”的关卡,才能进入游戏主界面,开始真正的游戏。图7.3 新手入门图7.4 主界面8 游戏展示打开游戏APP,出现游戏开始界面,点击“游戏说明”按钮进入游戏说明界面,查看简要说明,了解游戏玩法。点击“开始”按钮进入游戏。相关游戏截图如下:图8.1 游戏展示截图一图8.2游戏展示截

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论