J2ME中的 GAME API介绍[11]

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

本文简介:

在这个例子中,可视窗口被设置为85x85像素大小,并定位在LayerManager的坐标系统的(52, 11)点。每个Layer的位置都是相对于LayerManager的原点。

Specifying the View Window

paint(Graphics, int, int)方法包含一个(x,y)坐标,控制可视窗口在屏幕中的显示位置。改变参数不会改变可视窗口的内容,仅仅简单地改变可视窗口在屏幕中被绘制的位置。注意到这个位置是相对于Graphics对象的原点而言的,因此它服从Graphics对象的变换属性。

 

例如,如果一个游戏在屏幕的最顶端显示分数,可视窗口可能在(17,17)点被渲染,确保有足够的空间来显示分数。

Drawing the View Window

为了添加一个Layer,我们使用append()方法向这个LayerManager添加一个LayerLayer将被添加到现有Layer列表的末尾,即有最大的索引号(离用户最远)。如果此Layer已存在,将在添加前首先被删除。

 

insert()方法与append()的区别在于可以指定Layer的索引号。如果此Layer已存在,将在添加前首先被删除。

 

获得指定位置的Layer可以调用getLayerAt(int index)方法。

 

渲染

LayerManagerpaint()方法以降序的顺序来渲染每一个Layer,以保证实现正确的Z轴次序。完全在可视窗口之外的Layer将不被渲染。

 

此方法的另外两个参数决定了LayerManager的可视窗口相对于Graphics对象的原点在何处渲染。例如,一个游戏可能在屏幕上方显示分数,因此游戏的Layer就必须在这个区域下面,可视窗口可能在点(0, 20)处开始渲染。此位置相对于Graphics对象的原点,因此Graphics对象的坐标转换模式也会影响可视窗口在屏幕上渲染的位置。

 

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

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

go top