Cocos2d-JS中的Sprite精灵类


精灵类是cc.Sprite,它的类图如下图所示。cc.Sprite类直接继承了cc.Node类,具有cc.Node基本特征。

Cocos2d-JS中的Sprite精灵类
创建Sprite精灵对象

创建精灵对象可以使用构造函数实现,它们接受相同的参数,这些参数非常灵活。归纳起来创建精灵对象有4种主要的方式:
1. 根据图片资源路径创建

//图片资源路径
var sp1 = new cc.Sprite("res/background.png");	
//图片资源路径和裁剪的矩形区域
var sp2 = new cc.Sprite("res/tree.png",cc.rect(604, 38, 302, 295))

2. 根据精灵表(纹理图集)中的精灵帧名创建

//图片资源路径
var sp1 = new cc.Sprite("res/background.png");	
//图片资源路径和裁剪的矩形区域
var sp2 = new cc.Sprite("res/tree.png",cc.rect(604, 38, 302, 295))

由于这种方式与图片资源路径创建它们的参数都是一个字符串,那么为了区分是精灵帧名还是图片资源路径,在精灵帧名前面加上井号(#)表示。

3. 根据精灵帧创建
我们可以通过精灵帧缓存中获得精灵帧对象,再从精灵帧对象中获得精灵对象。

//精灵帧缓存
var spriteFrame = cc.spriteFrameCache.getSpriteFrame("background.png");
var sprite = new cc.Sprite(spriteFrame);

4. 根据纹理创建精灵
//创建纹理对象

var texture = cc.textureCache.addImage("background.png");
//指定纹理创建精灵
var sp1 = new cc.Sprite(texture);
//指定纹理和裁剪的矩形区域来创建精灵
var sp2 = new cc.Sprite(texture, cc.rect(0,0,480,320));

8 responses on “Cocos2d-JS中的Sprite精灵类

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>