Cocos2d-x   发布时间:2022-05-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Cocos2d-x_CCSprite(精灵类)介绍大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

精灵对象可以是游戏中的主角,也可以是汽车,也可以是一棵树。哪怕是一片树叶或者是一只鸟,都是一个精灵对象。从技术的角度来看,精灵对象就是一个可以不断变化的图片。精灵本身具备了一些特殊的属性,比如纹理、尺寸、翻转、透明度以及角度。

/* CCSprite类对象创建函数 */

// 创建精灵对象
static CCSprite *create();
// 以图片文件来创建精灵对象
static CCSprite *create(const char *pszFileName);
// 以图片文件中一块区域来创建精灵对象
static CCSprite *create(const char *pszFilename,const cCRect &rect);
// 以精灵帧来创建精灵对象
static CCSprite *create(CCSpriteFrame *pSpriteFramE);
// 以精灵帧名字来创建精灵对象
static CCSprite *createWithSpriteFramename(const char *pszSpriteFrameFileName);
// 以纹理图片来创建精灵对象
static CCSprite *create(CCTexture2D *pTexturE);
// 以纹理图片中的矩形区域来创建精灵对象
static CCSprite *create(CCTexture2D *pTexture,const cCRect &rect);

/* CCSpriteBatchNode精灵集合 */

// 以纹理里创建一个精灵集合对象
static CCSpriteBatchNode *create(CCTexture2D *pTexture,unsigned int capacity = 29);
// 以图片文件来创建一个精灵集合
static CCSpriteBatchNode *create(const char *fileImage,unsigned int capacity = 29);

/* CCSpriteFrame精灵帧类的属性 */

CCPoint m_obOffset;  // 偏移量
CCSize m_obOriginalSize;  // 纹理原始尺寸
CCRect m_obRecTinPixels;  // 纹理像素尺寸
bool m_obRotated;  // 是否旋转
CCRect m_obRect;  // 矩形区域
CCPoint m_obOffseTinPixels;  // 像素单位的偏移量
CCSize m_obOriginalSizeInPixels;  // 像素单位的原始尺寸
CCTexture2D *m_pobTexture;  // 纹理对象
std::string m_strTextureFilename;  // 纹理名称

/* CCSpriteFrame精灵帧对象的创建函数 */

// 以纹理对象中的矩形区域来创建精灵帧
static CCSpriteFrame *create(CCTexture2D *pobTexture,const cCRect &rect);
// 以纹理图片中的矩形区域来创建精灵帧
static CCSpriteFrame *create(const char *filename,const cCRect &rect);
// 以纹理对象中的矩形区域来创建精灵帧,包含属性初始化参数
static CCSpriteFrame *create(CCTexture2D *pobTexture,const cCRect &rect,bool rotated,const cCPoint &offset,const cCSize &originalSizE);
// 以纹理图片中的矩形区域来创建精灵帧,包含属性初始化参数
static CCSpriteFrame *create(const char *filename,const cCSize &originalSizE);

    /* CCSpriteFrameCache精灵帧缓冲函数 */
    
    // 从plist文件中加载多个精灵帧
    void addSpriteFrameWithFile(const char *pszPlist);
    // 从plist文件中加载多个精灵帧,参数为纹理图片
    void addSpriteFrameWithFile(const char *plist,const char *textureFileName);
    // 从plist文件中加载多个精灵帧,参数为纹理对象
    void addSpriteFrameWithFile(const char *pszPlist,CCTexture2D *pobTexturE);
    // 将按照参数中的名字添加一个精灵帧
    void addSpriteFrame(CCSpriteFrame *pobFrame,const char *pszFrameName);
    // 清除所有精灵帧对象
    void removeSpriteFrames(void);
    // 清楚@R_674_10780@精灵帧对象
    void removeUnUsedSpriteFrames(void);
    // 按照参数中的名字来清除精灵帧对象
    void removeSpriteFrameByName(const char *pszName);
    // 按照plist文件内容,来清除精灵帧
    void removeSpriteFramesFromFile(const char *plist);
    // 按照纹理对象来清除精灵帧
    void removeSpriteFramesFromTexture(CCTexture2D *texturE);

void HelloWorld::spriteHandle()
{
    CCSprite *sprite = CCSprite::create("Icon-57.png");
    sprite->setPosition(ccp(75,150));
    this->addChild(spritE);
    
    // 旋转角度
    sprite->setRotation(100.0f);
    
    // 整体缩放
    sprite->setScale(0.5);
    
    // 对X轴缩放
    sprite->setScaleX(0.5);
    
    // 对Y轴缩放
    sprite->setScaleY(0.5);
    
    // 对X轴镜像
    sprite->setFlipX(true);
    
    // 对Y轴镜像
    sprite->setFlipY(true);
    
    // 设置透明度
    sprite->setOpacity(100);
    
    // 设置是否可见
    sprite->setVisible(true);
    
    // 设置锚点
    sprite->setAnchorPoint(ccp(1.0,1.0));
    
    // 设置颜色
    sprite->setColor(ccc3(100,100,100));
}

大佬总结

以上是大佬教程为你收集整理的Cocos2d-x_CCSprite(精灵类)介绍全部内容,希望文章能够帮你解决Cocos2d-x_CCSprite(精灵类)介绍所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。