




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第四讲建立游戏的运行框架 主要内容 游戏的基本运行机制及其编写方法重点 游戏运行框架 AWT绘图机制 双缓冲机制 用线程处理游戏循环难点 双缓冲机制 获得稳定的FPS课时数 3 4 1绘制一个小球 回顾 第三讲的绘图框架 参见例4 1 提问 如何使其移动 回答 移动图形显示 游戏的最基本特征 进一步提问 如何移动图形显示 回答 不断地改变图形显示的位置 并重新绘制在屏幕上那么 技术上如何实现 回答 使用程序的循环结构 While 改变小球坐标 重新绘制 4 2移动的小球 提问 while 循环放在何处 选择1 放在主类 GameFrame 选择2 放在子类 drawBall 步骤a 添加gameLoop 方法publicvoidgameLoop while true x repaint 步骤b 在主类中调用drawBall对象的gameLoop 方法 改变小球绘制的坐标值 重新绘制屏幕 游戏的本质 死循环 要点1 AWT图形绘制机制 AWT图形绘制机制 图形绘制代码放置在组件的paint 方法中程序不能直接调用paint 方法来绘制组件 而需调用组件的repaint 方法来重绘该组件repaint 首先调用update 方法 然后调用paint 方法 默认的update 将进行清屏操作当多个repaint请求同时作用在同一个组件上时 由于事件处理线程无法及时作出响应 将导致合并为一个repait请求 操作并演示 加入gameLoop 方法问题1 为什么没有显示小球 原因 循环执行得太快 导致repait请求无法及时响应解决 加入空循环问题2 为什么不能直接调用paint 原因 repaint 方法能调用update 方法清屏 参见例4 2 问题3 为什么屏幕闪烁 原因 在同一个绘图表面上反复绘制并擦除解决 使用双缓冲机制 要点2 离屏渲染 RendertoOff Screen 前屏显示 DrawtoOn Screen 离屏渲染操作 步骤a 建立一个Image对象 并获取其Graphics对象 图象缓冲区 Imageim im creatImage width height Graphicsdbg im getGraphics 步骤b 在Image上渲染图形dbg setColor Color blue dbg fillOval x y diameter diameter 前屏显示操作 步骤a 获取当前屏幕的Graphics对象Graphicsg this getGraphics 步骤b 绘制Image图象缓冲区中的内容g drawImage im 0 0 null 步骤c 释放当前屏幕的Graphics对象g dispose 参见例4 3 4 3实现更加复杂的移动 改进1 斜向移动改进2 小球移出边界后从另一边出来改进3 随机移动改进4 弹跳 作业 使用Random类 4 4游戏的运行框架 对gameLoop 中的代码进行封装 gameLoop while true gameUpdate gameRender gamePaint 更新游戏逻辑 离屏渲染 前屏绘制 要点3 游戏框架 4 5创建新的线程 为何创建新线程 作用1 减轻主线程压力 提高执行效率主线程 用于响应用户事件子线程 用于处理游戏循环创建步骤 a 在drawBall类上实现Runnable接口b 将游戏循环放置在run 方法中c 实例化线程并启动 Thread start 作用2 获得稳定的FPS 祯速率 要点4 Tread sleep sleepTime 如何合理设置sleepTime 参见例4 5 另外的选择 使用TimerTask类 自学 在屏幕绘图一次称为一祯 FPS表示每秒绘制的祯数 50 80较合适 4 6移植到Applet版本 继承Applet类 并实现Runnable接口重载线程的run 方法 加入游戏循环代码重载Applet int 初始化重载Applet start 建立并启动线程重载Applet stop 终止线程 参见例4 6 要点回顾 AWT绘图机制repaint update paint双缓冲机制离屏渲染vs前屏绘制游戏运行
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2030年中国UV-CTP版材行业市场深度研究及发展趋势预测报告
- 解析卷-人教版8年级数学上册《全等三角形》专题训练试题(解析版)
- 解析卷-重庆市彭水一中7年级数学下册第四章三角形定向攻克试题(含解析)
- 2025年企业信用担保服务合同样本
- 2025年度食堂员工培训与职业发展服务协议
- 2025版安防设备采购、安装与监控体系合同
- 2025年肉禽养殖废弃物资源化利用合同范本
- 2025版三人共同开发新能源技术的合伙协议书
- 2025房地产经纪行业数字化转型与智慧服务合同
- 2025年度酒店餐饮市场推广活动资金引进居间服务合同
- 人教版七年级上册数学教学计划
- 幼儿园红色故事绘本:《闪闪的红星》 课件
- GB/T 31997-2015风力发电场项目建设工程验收规程
- HG20615-RF法兰标准尺寸
- 三尖瓣下移畸形(Ebstein畸形)
- 新湘科版科学五年级上册全册课件(精品PPT)
- 计算机组装与维护完整版课件(全)
- 中国传媒大学-电视播音员主持人形象设计与造型(第2版)-课件
- 一键自动生成spccpkMSAPPK数据工具
- (知识扩展)城市轨道交通CBTC系统功能课件
- 中海油一级供应商
评论
0/150
提交评论