cocos2d-之sprite类解析

来源:互联网 发布:淘宝怎么看同行点击率 编辑:程序博客网 时间:2024/04/29 19:26
/**
*精灵是一个2d图像
*
*精灵可以通过一张图片或者图片的某个矩形区域来创建
*
*为了优化图片,请遵循以下原则:
*-将所有精灵放在同一个spritesheet(精灵表单)
*-所有精灵里用同一个blending function(混合函数)
*-Renderer(渲染器)将会自动批处理精灵(会绘制在同一个OpenGL call里面)
*
*为了获得5%-10%的渲染效率提升,你可以把精灵继承自 SpriteBatchNode.同时遵循以下原则:
*-Alias/Antialias property属于SpriteBatchNode,不能独自设置aliased property
*-Blending function属于SpriteBatchNode,不能独自设置Blending *function
*-ParallaxNode(视差节点)不被支持,但是可以被"proxy" sprite(代理精灵)所模仿。
*-精灵只可以被其他精灵继承,或继承自其他精灵。
*
*精灵默认锚点是(0.5,0.5)
*/



/**
*创建空的精灵,可以调用setTexture函数设置纹理
*/
static Sprite* create();


/**
*通过图片文件名字创建精灵
*精灵矩形的大小是图片的大小
*offset是(0,0)
*
* 图片路径举例:"scene1/monster.png".
*返回autoreleased sprite object
*/
static Sprite* create(const std::string& filename);



/**
*通过图片文件名字和指定矩形创建精灵
*/
static Sprite* create(const std::string& filename, const Rect& rect);


/**
*通过Texture2D object创建精灵
*
* After creation, the rect will be the size of the texture, and the offset will be (0,0).
*
* @param   texture    A pointer to a Texture2D object.
* @return  An autoreleased sprite object.
*/
static Sprite* createWithTexture(Texture2D *texture);


/**
*通过纹理和矩形创建精灵
*texture  A pointer to an existing Texture2D object
*rotated  矩形是否可以旋转
*/
static Sprite* createWithTexture(Texture2D *texture, const Rect& rect, bool rotated=false);


/**
通过精灵帧创建精灵
* @param   spriteFrame    A sprite frame which involves a texture and a rect.
*/
static Sprite* createWithSpriteFrame(SpriteFrame *spriteFrame);


/**
通过精灵帧名字创建精灵
*从SpriteFrameCache找出精灵帧
* If the SpriteFrame doesn't exist it will raise an exception.
*/
static Sprite* createWithSpriteFrameName(const std::string& spriteFrame);
0 0
原创粉丝点击