一. Sprite类继承关系

精灵实际上可以说就是游戏总的主角,游戏中我们可操作的人物、宠物等待。我们所看到的精灵本质上就是一个静态的二维图。在Cocos2d-x里面精灵是用Sprite类来进行表示的,它可以用一张图片或者一张图片的一块矩形部分来定义。
二. 精灵创建
精灵提供了多个创建方式,具体如下:
2 | static Sprite* create(); |
5 | static Sprite* create( const std::string& filename); |
8 | static Sprite* create( const std::string& filename, const Rect& rect); |
11 | static Sprite* createWithTexture(Texture2D *texture); |
14 | static Sprite* createWithTexture(Texture2D *texture, const Rect& rect, bool rotated= false ); |
17 | static Sprite* createWithSpriteFrame(SpriteFrame *spriteFrame); |
20 | static Sprite* createWithSpriteFrameName( const std::string& spriteFrameName); |
三. 常用属性方法
(1). 初始化相关
2 | virtual bool init( void ); |
5 | virtual bool initWithTexture(CCTexture2D *pTexture); |
8 | virtual bool initWithTexture(CCTexture2D *pTexture, const CCRect& rect); |
11 | virtual bool initWithTexture(CCTexture2D *pTexture, const CCRect& rect, bool rotated); |
14 | virtual bool initWithSpriteFrame(CCSpriteFrame *pSpriteFrame); |
17 | virtual bool initWithSpriteFrameName( const char *pszSpriteFrameName); |
20 | virtual bool initWithFile( const char *pszFilename); |
23 | virtual bool initWithFile( const char *pszFilename, const CCRect& rect); |
(2). 属性相关
2 | virtual void setScaleX( float fScaleX); |
4 | virtual void setScaleY( float fScaleY); |
6 | virtual void setScale ( float scaleX, float scaleY); |
8 | virtual void setPosition( const Vec2& pos); |
9 | virtual void setPosition( float x, float y); |
12 | virtual void setRotation( float rotation); |
14 | virtual void setRotationSkewX( float rotationX); |
16 | virtual void setRotationSkewY( float rotationY); |
18 | virtual void setSkewX( float sx); |
20 | virtual void setSkewY( float sy); |
22 | virtual void removeChild(Node* child, bool cleanup); |
24 | virtual void removeAllChildrenWithCleanup( bool cleanup); |
26 | virtual void reorderChild(Node *child, int zOrder); |
28 | virtual void sortAllChildren(); |
30 | virtual void addChild(Node *Child); |
31 | virtual void addChild(Node *child, int zOrder, int tag); |
32 | virtual void addChild(Node *Child, int zOrder, int tag); |
34 | virtual void setScale( float fScale); |
36 | virtual void setVertexZ( float fVertexZ); |