- 2
- 0
- 约8.77千字
- 约 15页
- 2016-12-30 发布于辽宁
- 举报
各专业完整优秀毕业论文设计图纸
基于安卓平台上的猴王争霸游戏设计与开发
班级 软件092 姓名 王伟涛 指导老师:薛桂香
摘 要:
在游戏中,每次进行绘制屏幕时,都会重新获得当前时刻玩家角色的坐标值(为游戏地图上的坐标值)。然后,绘制出一个等于显示屏幕大小的、以玩家角色为中心的屏幕,这样就能做到让画面视角始终跟随玩家角色。但是,由于地图是有边缘的,所以仅当玩家角色位于屏幕中的一定范围内(如下图所示的虚线框范围内)时才生效。当玩家角色落到游戏地图的边角时,那么屏幕就会使用最接近的一个中心点来完成屏幕跟随显示。
在开发游戏地图时分三个图层进行制作。第一个图层是背景层,第二个是前景层,第三个是碰撞层。
二维游戏中,利用背景层和前景层的相互关系来造成玩家视觉上的空间立体感,更有利于画面的逼真。游戏中,背景层始终显示在屏幕的最底层,简单言之可以理解为用来填充屏幕的空缺部分的一层。而前景层则是游戏地图上的画面。画面是根据玩家角色所在的地图坐标显示的一个等于当前屏幕尺寸的矩形。这样,当玩家的角色在跳跃或者降落时,前景图片就会动态变化,而背景图片始终不变,游戏角色的活动也动态显示。这样就会形成一种错落有致的画面感,产生距离的效果。
4.3 游戏绘图技术
在通常情况下,开发二维游戏甚至做界面相关都使用View作为其显示图片的容器。可是,当开发一些复杂的、对效率要求较高或者对画面质量要求较高的游戏时,View类就不能满足开发需求了。这是因为View类并不能直接访问Canvas,必须要通过handler才可以,这样就降低了效率。另一方面,当采用SurfaceView类来进行开发时,对于刷新频率要求较高的图片可以采用双缓冲来显示,游戏中的背景、人物、动画等都需要绘制在一个画布(Canvas)上,而SurfaceView可以直接访问一个画布,提供给直接画像素而不是使用窗体部件的应用。所以在开发游戏时,可以通过创建一个线程对SurfaceView进行访问以刷新图片。
在游戏绘图中,往往是设置一个单独的绘图线用于直接访问SurfaceView里面的Canvas并对其进行绘制。游戏每秒钟绘制的图片数量要合适,既不能少,也不能太多。首先,如果每秒钟绘制图片少于24张就会使人感觉到视觉上的卡顿;相反,虽然每秒绘制的图片非常多肯定会使图片的连贯性很好,但是由于游戏是运行在安卓机器上,考虑到机器的配置差异、性能差异以及当前手机的内存和CPU使用率等重要因素,一味的追求高品质画面只会让游戏无法在低配置的机器上正常运行,从而影响游戏的推广。所以,对于每秒刷新次数进行控制的最好的方式是结合当前机器的配置和CPU使用率进行动态配置,可以将刷新次数规定为35-45次每秒。
由于SurfaceView里面并不能直接插入按钮控件,而游戏又必须要用到状态的切换按钮、暂停按钮等等。对于这个问题本系统所采用的方式是在屏幕需要插入按钮的位置插入那些按钮图片,然后在屏幕触摸事件里面进行监听,当触摸到该按钮的位置大小时进行相应的按钮事件处理。屏幕刷新线程操作顺序如图4.2所示。
4.4 游戏中的交互技术
在本游戏中,主要的交互方式是触控和重力感应。通过观察发现,玩家对于点击触摸屏手机按钮并不是特别敏感。也就是说,点击一两个处于边角位置的按钮还可以,但如果点击一些距离很近的按钮时,就会遇到困难。所以触摸屏最好的交互方式不是用虚拟按键,而是通过滑动或者点击触摸屏的不同位置来实现交互并且辅助以重力感应,这样可以取得良好的用户体验。
关于重力感应,在本游戏中必须要先获得activity的重力感应对象,然后再在SurfaceView类里面实现SensorEventListener接口,再复写public void onSensorChanged(SensorEvent event)方法就可以获得当前的重力感应数值。安卓的重力感应分为X、Y、Z三个轴。将安卓手机正放,左上角为顶点,由左上角向右沿着手机窄边为X轴,左上角向下沿着手机长边为Y轴,垂直手机平面向上为Z轴。当任何一个轴为水平时,它的重力感应值为零,当轴向上时值为正值如果是向上90度则值最大,如果轴向下那么值为负,向下90度为最大值。因此,游戏要在复写的方法里面实时的获得当前的重力感应值,并由重力感应值来决定玩家角色在空中时左右晃动的速度。
由于重力感应值会随着手机的晃动实时的改变,在用手机感应值生成速度时,最好的方式是玩家角色在空中时的左右速度与重力感应值为一次线性关系。这样才能更好的符合玩家的控制感觉。至于这个线性关系的系数取值,需要根据游戏的地图和玩家角色的属性值决定。
游戏的另一个重要的交互方式就是触摸技术。安卓系统自带了很多手势识别的类和处理函数,不过在本游戏中并不太需要这些发杂的手势识别。因为,本游戏所需要的交互方式是点
您可能关注的文档
- 本科毕设论文---基于stm32智能车设计论文与实现本科-(论文).doc
- 本科毕设论文---基于stm32智能车设计与实现本科生(论文).doc
- 本科毕设论文---基于struts2+hibernate的网上零食销售设计与实现.doc
- 本科毕设论文---基于struts技术的文章管理系统的设计与实现.doc
- 本科毕设论文---基于sts的预付费代码表及售电系统.doc
- 本科毕设论文---基于svm车型识别系统的设计与实现.doc
- 本科毕设论文---基于svm车型识别系统的设计与实现本科生.doc
- 本科毕设论文---基于ug的汽车焊装夹具三维设计论文 .doc
- 本科毕设论文---基于uml库存管理系统建模与仿真大学生毕业设计说明书.doc
- 本科毕设论文---基于trs应用系统.doc
- 人教版九年级英语Unit 4曾害怕课件3a-4c.pdf
- 雅思口语考题回顾:朗阁海外考试研究中心2019年10月10日Part 1考题总结.pdf
- 2026届高三地理一轮复习课件小专题河流袭夺.pptx
- 【名师原创】复习专题5 三角函数 作者:合肥市第八中学 蒲荣飞名师工作室.docx
- 高中数学一轮复习 微专题2 抽象函数.docx
- 高中数学——复习专题4 空间向量与立体几何.docx
- 高中数学一轮复习 微专题3 空间几何体中的截面、轨迹问题.docx
- 高中数学一轮复习 微专题4 空间几何体的最值、范围问题.docx
- 导流洞施工质量通病防治手册.docx
- 江苏省徐州市第一中学、徐市第三中学等五校2026届高三上学期12月月考历史试题含答案.docx
原创力文档

文档评论(0)