<b>J2ME游戏APIの游戏精灵Sprite</b>[Java编程]
本文“<b>J2ME游戏APIの游戏精灵Sprite</b>[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
在J2ME手机游戏开辟中,MIDP2.0以上版本供应了一个有助于游戏制作的类,该类称为游戏精灵Sprite,在J2ME中利用游戏精灵Sprite可以简单的管理角色动画利用的frame图象.
以下我将归纳一下游戏精灵Sprite的一些核心内容.
1、图象分割
在利用Sprite类时刻,只需求预备一张图象便可以构造诞活泼的动画效果,将要制作的动画效果利用的图象按照次序布列后制作成一张图片,在Sprite构造办法中设定图片源跟图片的分割frame数,Sprite就可以自动按照frame数对图片举行分割.
Sprite常用构造办法为:public Sprite(Image i, int frameWidth, int frameHeight).
需求注意的是,构成图片的各个帧宽度必须相同,且像素数需求跟图片对应,不然将呈现IO非常.
2、图片frame设置
经过Sprite的分割后,图片将被分成差别的独立小图片,比方一副图片由4帧图片构成,则图片的index将从0-3个差别帧对象.操纵Sprite类的setFrame(int index)办法可以在游戏历程中肆意指定显示哪一个frame.
呼应其他办法还有nextFrame()和prevFrame()获得前后帧图象等办法.
3、精灵定位与描绘
Sprite类操纵setPosition办法来指定精灵描绘的坐标点(固定点是图片的左上顶点坐标),从而定位了精灵在屏幕中的位置;在描绘精灵时,只需求把Graphics对象传送到Sprite中的paint办法中的参数就可以将精灵显示.
比方:精灵对象plane
设置位置:plane.setPosition(getWidth()/2, getHeight()/2);
显示精灵:plane.paint(g);
4、精灵转动跟翻转
在游戏中常常需求使游戏对象有转动跟翻转的功效使得游戏越发活泼逼真,在Sprite类中供应了办法void setTransform(int transform)来设定精灵的转动跟翻转效果,操纵它我们便可以简单的让图片动起来.
参数transform预先设定了八种常量定义,这八种常量对应的效果以下:
1、TRANS_NONE: 没有举行转动和翻转;
2、TRANS_ROT90: 90度转动;
3、TRANS_ROT180: 180度转动;
4、TRANS_ROT270: 270度转动;
5、TRANS_MIRROR: 左右翻转;
6、TRANS_MIRROR_ROT90: 左右翻转后90度转动;
7、TRANS_MIRROR_ROT180: 左右翻转后180度转动;
8、TRANS_MIRROR_ROT270: 左右翻转后270度转动.
如设定精灵plane转动90度以下:
plane.setTransform(Sprite.TRANS_ROT90);
5、精灵参照点和目标定位
在Sprite中还有两个重要的办法,辨别为defineReferencePixel(int x,int y)和setRefPixelPosition(int y,int y),用于设定精灵的参照点和对精灵参照点的目标定位.
如设定精灵plane的参照点跟定位点以下:
plane.defineReferencePixel(0,12);
plane.setRefPixelPosition(getWidth()/2,getHeight()/2);
6、精灵碰撞检测
在MIDP1.0中对游戏角色碰撞是通过计算物体的大小以及坐标来判断的,Sprite中供应了专门的碰撞判断办法,通过该办法可以简单的对角色能否接触举行判断.
碰撞判断常用的办法为collidesWith(Sprite sprite,boolean pixelLebel);
第一个参数为与自身大概发生碰撞的精灵对象;
第二个参数为能否像素级别碰撞检测,假如为false,则当精灵图片的边框接触时刻将为碰撞发生;假如为true,则需求在当图片中真实的像素内容接触时碰撞才发生,普通设定为true使得游戏越发逼真.
以上是“<b>J2ME游戏APIの游戏精灵Sprite</b>[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |