码迷,mamicode.com
首页 > 其他好文 > 详细

游戏基础元素之精灵——Cocos2d-x学习历程(九)

时间:2015-04-24 16:04:01      阅读:103      评论:0      收藏:0      [点我收藏+]

标签:

1.创建精灵

    在实际使用中,精灵是由一个纹理创建的。在不加任何设置的情况下,精灵就是一张显示在屏幕上的图片。通常精灵置于层下,因此我们首选在层的初始化方法中创建精灵,设置属性,并添加到层中。

    有多种方式可以创建精灵:

    (1)直接创建

auto sprite = Sprite::create("HelloWorld.png");
this->addChild(sprite,0);

   (2)使用纹理来创建精灵

auto sprite1 = Sprite::createWithTexture(TextureCache::getInstance()->addImage("HelloWorld.png));
this  ->addChild(sprite1, 0); 

  (3)使用精灵帧来创建精灵

auto sprite2=Sprite::createWithSpriteFrameName(  "HelloWorld.png"  );    
this ->addChild(sprite2, 0);

2.精灵属性
    创建了精灵后,我们还需要把精灵安排在合适的位置,否则引擎也不能决定精灵将如何呈现出来。诸如精灵的位置、方向、缩放比例等参数都是精灵的属性,我们在层中添加精灵之前,需要对它们进行恰当地设置。

auto size = Director::getInstance()->getWinSize();
auto point = ccp(size.width/2,size.height/2);
auto sprite = Sprite::create("image/atlas.png",CCRectMake(0.0,0.0,288,512));
sprite->setPosition(point);
this->addChild(sprite,0);

    我们可以看到,在这段代码中我们修改了精灵的Position属性。Position属性是一个Point类型的结构体,表示精灵在层中的位置,它是精灵相对于层的坐标。ccp(x,y) 与CCRectMake类似,是可以用来快速创建Point的宏。把精灵的位置坐标设置为屏幕长宽的一半,就可以使精灵位于屏幕中央了。

3.向层中添加精灵

    设置完精灵的属性后,就该把精灵添加到层中了。实际上Sprite与Layer都继承自Node,向一个游戏元素中添加其他游戏元素的addChild是Node包含的方法,因此我们完全可以如同向场景中添加层一样,把精灵添加到层中。

4.精灵的其他常用成员

   (1)初始化方法:同创建精灵

   (2)纹理的相关属性:用于获取或设置精灵内容。

   (3)纹理的相关方法

   (4)颜色的相关属性

游戏基础元素之精灵——Cocos2d-x学习历程(九)

标签:

原文地址:http://www.cnblogs.com/ling-mo/p/4453393.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!