Cocos2dx 精灵类-Sprite

在Cocos2dx开发的游戏中,玩家能够看到的内容基本都是通过渲染精灵出来的,背景、UI、人物、道具、敌人等全部都是精灵。因此,对于精灵类的掌握是对游戏开发十分重要的。

精灵类继承了节点类Node和材质类TextureProtocol,因此具有这两个类的所有特性,此外还扩展了一些属于自己的特性。


精灵类Sprite常用方法:

static Sprite* create() 与场景类 布景类 节点类相同的工厂模式创建实例的方法。

static Sprite* create(const std::string& filename) 通过图片文件创建精灵。

static Sprite* create(const std::string& filename,const Rect& rect) 创建一个精灵对象,参数是图片路径和精灵所占大小矩形。


除了Node类自带的图形方法外,Sprite自己还扩展出:

void setFlippedX(bool flippedX) 水平翻转精灵,true时翻转。

void setFlippedY(bool flippedY) 垂直翻转精灵,true时翻转。

bool isFlippedX(void) 精灵是否水平翻转。

bool isFlippedY(void) 精灵是否垂直翻转。


如何使用精灵类:

auto能自动匹配对应的类

1、使用静态创建方法创建精灵实例   如:auto(匹配后是Sprite*) sprite = Sprite::create("picture.png"); //用图片文件picture.png创建一个精灵类实例。

2、设置精灵位置  如:sprite->setPosition(Point(300,300)); //把精灵位置设置在点(300,300)坐标上。

3、设置精灵锚点  如:sprite->setAnchorPoint(Point(0,0));//把精灵锚点设为(0,0)。

4、把精灵对象添加到节点对象:

把精灵添加到布景对象  如 layer->addChild(sprite,0); //把精灵添加到布景中,sprite在layer的本地ZOder为0。

把精灵添加到其他精灵对象中  如 otherSprite->addChild(sprite,0); //把精灵添加到其他精灵中,sprite在otherSprite中的本地ZOder为0。


关于大量精灵和内存的问题在其他篇章里解释。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值