《第5章 游戏场景设定(1).ppt》由会员分享,可在线阅读,更多相关《第5章 游戏场景设定(1).ppt(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第5章 游戏场景设定(1)绘制卷轴型图像 内容提要Java2D图像绘制简介绘制卷轴型图像滚动卷轴型图像1.Java2D图像绘制支持图像文件格式 GIF、JPG、PNG图像处理流程主要的图像类 Image、ImageIcon、BufferedImage图像文件的载入方式Image im;im=ImageIO.read(getClass().getResource(ball.gif);图像的绘制方式 g.drawImage(im,0,0,null);BuffedImage优点:提供各种关于图像效果处理的方法加速图像的显示速度创建BufferedImage对象BufferedImage bim=ne
2、w BufferedImage(width,height,BufferedImage.TYPE_INT_ARGB);载入图像文件bim=ImageIO.read(getClass().getResource(ball.gif);绘制图像g.drawImage(bim,0,0,null);游戏场景图像卷轴型图像(ribbon)砖块型图像(tile)2.绘制卷轴型图像步骤1.创建BufferedImage对象,并载入图像文件2.将此图像绘制到屏幕后缓冲中3.将图像显示到屏幕多个图像叠加绘制注意绘制次序:层次越深的越先绘制图像的叠加(注意绘制次序)3.滚动卷轴型图像何为滚动(scroll)?让图像的
3、不同部分依次从程序窗口中“经过”(如同坐火车,卷轴图像好比风景,程序窗口好比火车车窗)为何滚动?1.图像尺寸大于窗口尺寸2.制造移动效果局部(程序)坐标系vs世界(外部)坐标系局部坐标系:原点为程序窗口左上角世界坐标系:原点为图像区域左上角绘制方式:循环滚动 g.drawImage(im,DX1,DY1,DX2,DY2,SX1,SY1,SX2,SY2,observer);情况1:if(xImHead=0)/draw im head at(0,0)drawRibbon(g,bim,0,pWidth,0,pWidth);情况2:else if(xImHead 0)&(xImHead=pWidth)
4、/only draw im tail at(0,0)drawRibbon(g,bim,0,pWidth,width-xImHead,width-xImHead+pWidth);情况4:else if(xImHead pWidth-width)/draw im tail at(0,0)and im head at(width+xImHead,0)drawRibbon(g,bim,0,width+xImHead,-xImHead,width);drawRibbon(g,bim,width+xImHead,pWidth,0,pWidth-width-xImHead);情况5:else if(xImHead=pWidth-width)drawRibbon(g,bim,0,pWidth,-xImHead,pWidth-xImHead);滚动控制1.按下键盘左键时背景图像向左滚动还是向右?按左键向右滚,按右键向左滚2.背景图像滚动时如何改变xImHead值?向右滚时XImHead增加,反之减少3.多个背景同时滚动时有什么特点?层次越深的背景图像滚动速度越慢作业 制作RPG游戏地图,使用卷轴图像实现(x,y方向同时滚动)