精灵(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学习群

Cocos2d-x 3.1.1 学习日志7--7分钟让你了解cocos2d-x3.1.1 Sprite精灵类的更多相关文章

  1. GRE学习日志

    发现开博客园真的很有督促作用,今天也顺便开个GRE学习日志吧 2015-02-09:单词 2015-02-10:单词 2015-02-11:单词 2015-03-02:阅读 2015-03-04:阅读 ...

  2. Cortex-M3学习日志(六) -- ADC实验

    上一次简单的总结了一下DAC方面的知识,好吧,这次再来总结一下ADC方面的东东.ADC即Analog-to-Digital Converter的缩写,指模/数转换器或者模拟/数字转换器.现实世界是由模 ...

  3. Cortex-M3学习日志(五) -- DAC实验

    终于逮了个忙里偷闲的机会,就再学一下LPC1768的外围功能吧,循序渐进是学习的基本规则,也许LPC1768的DAC与8位单片机16位单片机里面集成的DAC操作类似,但是既然这是懒猫的学习日志,就顺便 ...

  4. webpack2学习日志

    webpack说容易也容易,说难也难,主要还是看个人,想学到什么样的程度,很多公司可能要求仅仅是会用就行,但是也有一些公司要求比较高,要懂一些底层的原理,所以还是要花一些时间的,看个人需求.这篇仅仅是 ...

  5. javascript学习日志:前言

    javascript学习日志系列的所有博客,主要理论依据是<javascript权威指南>(犀牛书第6版)以及<javascript高级程序设计第三版>(红色书),目前js行业 ...

  6. MobileForm控件的使用方式-用.NET(C#)开发APP的学习日志

    今天继续Smobiler开发APP的学习日志,这次是做一个title.toolbar.侧边栏三种效果 样式一 一.          Toolbar 1.       目标样式 我们要实现上图中的效果 ...

  7. 我的游戏学习日志3——三国志GBA

    我的游戏学习日志3——三国志GBA 三国志GBA由日本光荣公司1991~1995所推出<三国志>系列游戏,该作是光荣在GBA上推出的<三国志>系列作品的第一款.本游戏登场武将总 ...

  8. 【转】Cocos2d-x 3.1.1 学习日志6--30分钟了解C++11新特性

    [转]Cocos2d-x 3.1.1 学习日志6--30分钟了解C++11新特性 Cocos2d-x 3.1.1 学习日志6--30分钟了解C++11新特性

  9. composer的安装和使用 学习日志

    如果你做为一个phper,没有用过composer,那你真的不是一个合格的开发者.那么就来记录一下composer的学习日志 下面分享几个学习源头: composer中文网站:https://www. ...

随机推荐

  1. [AngularJS] Angular 1.3 $submitted for Form in Angular

    AngularJS 1.3 add $submitted for form, so you can use  $submitted  to track whether the submit event ...

  2. Myeclipse最全快捷键

    转自:http://www.iteye.com/topic/1051317 Ctrl+1 快速修复(最经典的快捷键,就不用多说了) Ctrl+D: 删除当前行  Ctrl+Alt+↓ 复制当前行到下一 ...

  3. Unity3d使用json与javaserver通信

    Unity3d使用json能够借助LitJson 下载LitJson,复制到Unity3d工作文件夹下 于是能够在代码中实现了 以下发送请求到server并解析 System.Collections. ...

  4. 算法笔记_136:交替字符串(Java)

    目录 1 问题描述 2 解决方案   1 问题描述 输入三个字符串s1.s2和s3,判断第三个字符串s3是否由前两个字符串s1和s2交错而成且不改变s1和s2中各个字符原有的相对顺序. 2 解决方案 ...

  5. java面试题(开发框架)

    博客分类: java基础 面试Java多线程编程设计模式          java基础面试题目,以备不时之需 俗话说 细节决定成败.      就算很简单,很小的问题,我们还是要注意一下的.     ...

  6. HTTP 错误状态码讯息

    HTTP 错误讯息解读   4xx: Client Error 使用者端(浏览器)错误讯息 错误码   错误讯息说明 400 Bad Request    错误的要求 401 Unauthorized ...

  7. Linux命令-文件搜索命令:locate

    实际上是在分区表上搜索文件,比find命令速度更快 locate inittab 查找名称包含inittab的所有信息(快速搜索,实际上它是搜索linux资料库,区别于find在某一个磁盘分区或者某一 ...

  8. Android实现开机自动运行程序

    有些时候,应用需要在开机时就自动运行,例如某个自动从网上更新内容的后台service.怎样实现开机自动运行的应用?在撰写本文时,联想到高焕堂先生以“Don't call me, I'll call y ...

  9. mosquitto --- 单向认证

    1.生成证书要单向配置SSL 需要 做三项前置工作 1. 生成CA证书 2.生成server 端证书,server 端key github 的一个开源项目已经做到这点 ,详情可见 https://gi ...

  10. ASP.NET给DataGrid,Repeater等添加全选批量删除等功能

    很多情况下,在管理或者查看列表的时候我们需要很需要“全选”这个功能,这在ASP.NET中是非常容易实现的,下面我就将演示一点小代码实现这一功能.   实现全选的还是js的一个小函数:   [code] ...