-
十一 1
精灵(CCSprite),第一次听到这个名字,觉得很好奇, Sprite,翻译过来是“雪碧”的意思,哈哈,小时候最喜欢喝雪碧了,晶晶亮,透心凉的广告还能记起来。不过在cocos2dx中听到精灵这个概念,还是有些奇怪的,我们暂且不去纠结这个名字是怎么来的,大家可以把它理解为一个元素,或者就是Flash中的一个元件。
其实,在场景(或者叫舞台)上,见到的最多的就是精灵了,也就是大家看到的那些会动的物体,甚至有些静态的物体也是精灵。精灵有时候也可以简单认为就是加载到舞台的一个图片。
哪么,如果使用精灵呢?非常简单,比如,我们想在舞台上创建一个精灵,这个精灵使用了一张图片:
CCSprite* pSprite = CCSprite::create("men.png"); pSprite->setPosition(ccp(240,160)); this->addChild(pSprite);
CCSprite 就是cocos2dx中的精灵类了,我们使用create方法,来加载men.png图片,这样就创建好了一个精灵。然后使用setPosition方法,来设置精灵显示的位置,因为默认的位置是(0,0)原点,这个点位于舞台的左下角,我们可以让精灵显示在舞台任意一个位置。最后,别忘了用addChild方法把精灵添加到舞台上,否则,你是看不见精灵的。
执行完上面的代码,你就可以在舞台上看到men.png这个图片了。
这是创建一个精灵的一种方法,当然,方法不止这一个,如果有时候,我们需要按照制定的大小去创建精灵怎么办呢?可以使用下面的方法:
CCSprite* pSprite = CCSprite::create("men.png",CCRectMake(0, 0, 30, 30)); pSprite->setPosition(ccp(240,160)); this->addChild(pSprite);
create的第二个参数,可以制定需要创建的大小,按照上面的方法,我们就创建了一个30*30大小的精灵
我们还可以利用plist文件来创建精灵,当然,这个就复杂一些,我们今后再说。
精灵有一些常用的方法,除了setPosition改变位置以外,还有:
setScale:缩放
setRotation:旋转
setVisible:设置是否可见
setAnchorPoint:设置中心点,这个很关键哦,一般设置为图片的中心,有个简单的写法可以不考虑尺寸setAnchorPoint(ccp(0.5,0.5));,两个0.5就表示中心啦
setOpacity:设置透明度
setZorder:设置层级
大家可以在代码提示中看到更多的设置。
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
1楼 tomcat