cocos2d-x --- 创建精灵的方法(3.x)

1, 使用图像创建精灵


    auto sprite = Sprite::create( "Icon.png");


    使用图像的一部分创建精灵

    //Rect(x坐标, y坐标, 宽, 高)

    auto sprite = Sprite::create( "Icon.png", Rect(0, 0, 50, 50));


2,通过精灵帧创建精灵


    (1)

    //利用图片的部分区域创建精灵帧

    auto frame = SpriteFrame::create("Icon.png", Rect(0, 0, 50, 50));

    auto sprite = Sprite::createWithSpriteFrame(frame);


    (2)

    //创建精灵帧缓存,添加精灵列表  
    auto spritecache = SpriteFrameCache::sharedSpriteFrameCache();
    spritecache->addSpriteFramesWithFile("sprite.plist");

    //利用帧缓存中的一帧的名称创建精灵帧   

    SpriteFrame* frame = spritecache->spriteFrameByName("HelloWorld.png");

    //通过精灵帧创建精灵

    auto sprite = Sprite::createWithSpriteFrame(frame);
   

3,  通过帧缓存中的一帧的名称创建精灵帧

  

    //创建精灵帧缓存,添加精灵列表

    auto spritecache = SpriteFrameCache::sharedSpriteFrameCache();
    spritecache->addSpriteFramesWithFile("sprite.plist");

    //利用帧缓存中的一帧的名称创建精灵   

    auto sprite = Sprite::createWithSpriteFrameName("HelloWorld.png");

   

         

4, 通过纹理创建精灵

    

    //创建2d纹理

   auto texture = TextureCache::sharedTextureCache()->addImage("Icon.png");

    //使用2d纹理创建精灵

   auto sprite = Sprite::createWithTexture(texture);

  //使用2d纹理部分区域创建精灵

   auto sprite1 = Sprite::createWithTexture(texture, Rect(0, 0, 50, 50));
  

     

    COCOS2D-X 3.X 版本 不在鼓励使用 SpriteBatchNode 推荐直接使用Sprite

   使用Sprite满足以下条件:

  

  • 贡献相同的纹理ID(把它们放在一个spritesheet中,就像使用 SpriteBatchNode 一样)
  • 确保它们使用相同的着色器和混合函数(就像使用 SpriteBatchNode 一样)




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值