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

Cocos2dx__精灵创建

时间:2020-03-04 19:23:13      阅读:77      评论:0      收藏:0      [点我收藏+]

标签:list   with   creat   技术   pack   color   游戏   命名   占用   

如何创建一个精灵?

 

1. 使用一张特定的图像如创建

   auto mySprite = Sprite::create("mySprite.png"); 

          技术图片

  注意:蓝色部分是背景。

2. 使用矩形

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

          技术图片

 

   注意:蓝色部分是背景。

3. 使用图集

  在使用图集时,首先将其全部加载到 SpriteFrameCache 中。

  SpriteFrameCache 是一个全局的缓存类,缓存了添加到其中的 SpriteFrame 对象,提高了精灵的访问速度。

  SpriteFrame 只加载一次,后续一直保存在 SpriteFrameCache 中。

  可以用 TexturePackerGUI(有免费版)创建图集。

  打包之后生成文件 xxx.plist 和 xxx.png:

    技术图片

 

 

   其中每个 Speite 命名为 spritei(注意:i 为 1,2,3,4,5)。

  如果忘记了各个精灵的命名怎么办?以记事本方式打开 xxx.plist 即可查看。

  加载图集:

     SpriteFrameCache::getInstance()->addSpriteFramesWithFile("sprites.plist"); 

 

4. 使用精灵缓存

  从精灵的缓存对象 SpriteFrameCache 访问一个精灵有两种方法:

  ① 使用精灵名字进行创建:

     auto mySprite2 = Sprite::createWithSpriteFrameName("sprite1.png"); 

   ② 先从缓存对象中获取对应的 SpriteFrame,然后用 SpriteFrame 建精灵

     auto mySprite3 = Sprite::createWithSpriteFrame(SpriteFrameCache::getInstance()->getSpriteFrameByName("sprite2.png")); 

 

5. 为何要使用图集和精灵缓存?

  使用图集比使用多个独立图像占用的磁盘空间更少,还会有更好的性能。这种方式已经是游戏行业中提高游戏性能的标准方法之一。

  还可以创建帧动画。

 

Cocos2dx__精灵创建

标签:list   with   creat   技术   pack   color   游戏   命名   占用   

原文地址:https://www.cnblogs.com/teternity/p/Cocos2dx__CreateSprites.html

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