zoukankan      html  css  js  c++  java
  • Cocos2d-x 3.1.1 学习日志7--7分钟让你了解cocos2d-x3.1.1 Sprite精灵类

        精灵(Sprite)是游戏里面的角色,比方敌人。游戏里面运动的物体等等,所以精灵是游戏里面一个很常见的概念。差点儿无处不在。

    在Cocos2D-x里面精灵是用Sprite类来进行表示的,它能够用一张图片或者一张图片的一块矩形部分来定义。

        在自己设计的MyScene类中,我写了六种经常使用精灵的出现方式。

    各自是sp1,sp2,sp3,sp4。sp5。sp6。

    上代码:

    bool MyScene::init()
    {
    	Size size = Director::getInstance()->getWinSize();//屏幕的大小
    
    	Sprite *sp1 = Sprite::create("icon.png");
    	sp1->setPosition(Vec2(size.width*0.2,size.height*0.7));
    	this->addChild(sp1);
    
    	Sprite *sp2 = Sprite::create("icon.png",Rect(10,30,28,28)) ;
    	sp2->setPosition(Vec2(size.width*0.4,size.height*0.7));
    	this->addChild(sp2);
    
    	Texture2D *texture = TextureCache::sharedTextureCache()->addImage("icon.png");//创建2d纹理 
    	
    	Sprite *sp3 = Sprite::createWithTexture(texture);
    	sp3->setPosition(Vec2(size.width*0.6,size.height*0.7));
    	this->addChild(sp3);
    	
        Sprite *sp4 = Sprite ::createWithTexture(texture,Rect(0,0,40,40));
    	sp4->setPosition(Vec2(size.width*0.8,size.height*0.7));
    	this->addChild(sp4);
    	
    	SpriteFrame *frame = SpriteFrame::create("icon.png",Rect(0,0,57,57));
    
    	Sprite *sp5 = Sprite::createWithSpriteFrame(frame);
    	sp5->setPosition(Vec2(size.width*0.3,size.height*0.3));
    	this->addChild(sp5);
    
    	SpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("img.list");
    	
    	Sprite *sp6 = Sprite::createWithSpriteFrame("icon.png");
    	sp5->setPosition(Vec2(size.width*0.3,size.height*0.3));
    	this->addChild(sp6);
    	
    	return true;
    }
    ;

    注意:cocos2d-x使用的是OpenGL es绘制2d图形的,它的尺寸是2的n次方。

    此外,经常使用的精灵类方法有:

    setScale(float fScale);//缩放         

    setRotation(float fRotation);//旋转    

    setSkew(float s)。//倾斜          

    setAnchorPoint(const Point&another);//锚点设置                 setVisible(bool bvisible)。//是否可见    

    setColor(const cccolor3B&color3);//设置颜色     

    setOpacity(Glubvte Opacity)。//透明度设置,从0-255,0表示全然透明,255表示不透明           

    setTexture(CCTexture2D *texture);//更改图片

    这些方法能够再代码中实现看看效果。方便自己的记忆。


    本人cocos2dx 2.x和3.x的源代码淘宝地址(欢迎大家光顾):https://shop141567464.taobao.com/?spm=a313o.7775905.1998679131.d0011.aYDdAj

    不懂的能够加我的QQ群: 239982941(cocos2d-x 3.1.1学习群


  • 相关阅读:
    PHP观察者模式 (转)
    PHP单例模式 (转)
    PHP解决并发问题的几种实现(转)
    php结合redis实现高并发下的抢购、秒杀功能 (转)
    使用 redis 减少 秒杀库存 超卖思路 (转)
    mysql视图学习总结(转)
    mysql 存储过程
    PHP中的魔术方法和关键字
    bzoj3462DZY Loves Math II
    bzoj1453[Wc]Dface双面棋盘
  • 原文地址:https://www.cnblogs.com/liguangsunls/p/6729431.html
Copyright © 2011-2022 走看看