- 1、本文档共36页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第14章游戏开发全解
2)GameSurfaceView.java A.继承于SurfaceView 2.SrufaceView类的开发框架 public class GameSurfaceView extends SurfaceView implements SurfaceHolder.Callback,Runnable B.构造函数中 // 实例化SurfaceHolder mSurfaceHolder = this.getHolder(); // 添加回调 mSurfaceHolder.addCallback(this); 2)GameSurfaceView.java C.run()完成循环更新 2.SrufaceView类的开发框架 public void run() {while (mbLoop) { try { Thread.sleep(200); } catch (Exception e) { } synchronized( mSurfaceHolder ) { Draw(); } } } D. Draw()中完成绘图 3)修改程序 修改控制移动的增量 2.SrufaceView类的开发框架 mGameView.y-=30; mGameView.y+=30; 效果:移动速度明显增加 第十四章 游戏开发 1.View类的开发框架 2.SrufaceView类的开发框架 通过在view上进行绘制需要的元素 基本思路: 在view类中,通过Ondraw()完成界面的绘制,主要通过canvas和paint来实现 通过invalidate();刷新界面,调用Ondraw() 根据新的参数刷新界面 通过外部接口控制界面元素的一些参数 第14章 游戏开发 课件制作人:丁海洋 第十二章 图形图像 1.访问图片 2. Tween动画 3. Frame动画 4.图形的绘制 5.通过Matrix实现动画 6.Shader类实现图形特效 7.图像像素的操作 5.通过Matrix实现动画 参考:Chapter12_Graphic_Matrix 主要通过Matrix类实现,通过函数: setRotate()、setScale()、setTranslate() 完成旋转、缩放、平移 5.通过Matrix实现动画 2)在OnDraw函数中根据scale和angle创建新的图片,并进行显示 matrix.reset(); if (!isScale) { // 旋转Matrix matrix.setRotate(angle); } else { // 缩放Matrix matrix.setScale(scale, scale); } 5.通过Matrix实现动画 2)在OnDraw函数中根据scale和angle创建新的图片,并进行显示 // 根据原始位图和Matrix创建新视图 Bitmap bm2 = Bitmap.createBitmap(bm, 0, 0, w, h, matrix, true); // 绘制新视图 canvas.drawBitmap(bm2, matrix, null); 6. 通过Shader类实现图形的特殊效果 参考:Chapter12_Graphic_Shader 按上方向键 6. 通过Shader类实现图形的特殊效果 按左方向键 按右方向键 7. 图像像素的操作 参考:《Android应用开发揭秘》源码\第5章\Examples_05_10 Android中,每个图像像素通过一个4字节的整数来表示, 分别是:Alpha、R、G、B 7. 图像像素的操作 注意:必须按下一个按键,水波效果才会开始 7. 图像像素的操作 Android中,每个图像像素通过一个4字节的整数来表示, 分别是:Alpha、R、G、B E. Bitmap2[pos2++] = Bitmap1[pos1++]0xffff0000; 去除绿色、蓝色分量,只保留红色、alpha分量 第十三章 OPENGL 1.简单2D图形 2. 3D图形 3. 纹理映射 4. 光照模型 5. 3D世界 6.飘扬的旗帜 7.立方体列表 8. 控制立方体 9. 粒子系统 10.蒙版 11.变形 OPENGL提供了一些库,编程中,利用这些库文件, 可通过调用指令的方式实现2D/3D图像的显示 OpenGL(全写Open Graphics Library) 定义一个跨编程语言、跨平台的编程接口的规格,它用于三维图象(二维的亦可)。 OpenGL是个专业的图形程序接口,是一个功能强大,调用方便的底层图形库。 Android系统提供了一个android.Open
文档评论(0)