J2ME中的 GAME API介绍[10]

[入库:2006年2月23日] [更新:2007年3月24日]

本文简介:

可以通过调用setCell(int, int, int)fillCells(int, int, int, int, int)方法改变单元格的内容。很多单元格可以包含同一个贴图;然而,一个单元格仅能包含一个贴图。下面的例子演示了如何使用TiledLayer来创建一个简单的背景。

TiledLayer Grid

在这个例子中,水的区域由动态贴图来填充,索引号为-1,该动态贴图在初始化时与一个索引号为5的静态贴图关联。可以简单地通过调用setAnimatedTile(-1, 7)方法来改变与之联系的静态贴图,从而实现整个水区域的动画效果。

TiledLayer Grid 2

 

渲染一个TiledLayer

可以手动调用paint()方法来渲染一个TiledLayer;也可以使用LayerManager对象自动渲染它。绘图方法将尝试渲染在Graphics对象的剪裁区域内的整个TiledLayer;从TiledLayer的左上角开始渲染,该点的当前坐标(x,y)相对于Graphics对象的原点。渲染区域可以通过设置Graphics对象的剪裁区域来控制。

 

6.4.2   LayerManager

LayerManager管理一系列的LayerLayerManager简化了渲染每个Layer的过程,每个添加的Layer都将在正确的区域并以正确的顺序被渲染。

 

LayerManager维护一个顺序列表,以便管理如何追加、插入和删除Layer。一个Layer的索引号关联了它的Z轴位置(z-order);索引号为0Layer最接近用户,索引号越大的Layer离用户越远。索引号永远是连续的,即,如果一个Layer被删除,后面的Layer的索引号都将调整使得索引号保持连续。

 

LayerManager类提供一些用于控制游戏中如何在屏幕上渲染Layer的功能。

 

可视窗口(view window)控制着可视区域及其在LayerManager的坐标系统中的位置。改变可视窗口的位置可以实现上下或左右滚动屏幕的效果。例如,如果想向右移动,简单地将可视窗口的位置右移。可视窗口的大小决定了用户的可视范围,通常它应该适合设备的屏幕大小。

本文关键:J2ME中的 GAME API介绍
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top