博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
cocos2d中CCSprite的使用总结 【转】
阅读量:5134 次
发布时间:2019-06-13

本文共 1753 字,大约阅读时间需要 5 分钟。

一、精灵创建及初始化

1、从图片文件创建:

CCSprite *sprite = [CCSprite spriteWithFile:@"Icon.png"]; 

2、从帧缓存创建:

[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"MineSweeping.plist"]; 

CCSprite *sprite = [CCSprite spriteWithSpriteFrameName:@"Icon.png"]; 

3、初始化及自定义大小

CCSprite *sprite = [CCSprite spriteWithFile:@"Icon.png" rect:CGRectMake(x,y,w,h)]; 

备注:默认锚点ccp(0.5,0.5),默认位置 ccp(0,0),contentSize为精灵图片尺寸

二、精灵常用属性及方法:

[self addChild:sprite]; //添加入层中,self为CCLayer   

sprite.scale=2;//放大2倍,参数为比例,1保持不变,0.5代表50%,2代表200%   

sprite.rotation=90;//旋转90度    

sprite.opacity=255;//设置透明度为完全不透明(范围0~255) 

sprite.anchorPoint=ccp(0,0);//设置锚点为左下角,默认为ccp(0.5,0.5)中心点 

sprite.position=ccp(100,100);//设置精灵左下角坐标是x=100,y=100,本地GL坐标系   

[sprite setFlipX:YES];//X轴镜像反转    

[sprite setFlipY:YES];//Y轴镜像反转  

[sprite setVisible:NO];//设置隐藏,默认为可见  

[sprite setColor:ccc3(255, 0, 0)];//设置颜色为红色,三原色 

[sprite zOrder]; //精灵层叠次序即Z轴(小的在下面,大的在上面),注意这是只读属性,不能通过sprite.zOrder=2实现Z轴重设   

[sprite setTextureRect:CGRectMake(10, 10, 30, 30)];//起始点坐标(做上角坐标系),宽高   

三、添加其他精灵

CCSprite继承自CCNode,所以你可以对它进行addChild的操作:

CCSprite *s1 = [CCSprite spriteWithFile:@"Icon.png"]; 

CCSprite *s2 = [CCSprite spriteWithFile:@"Icon.png"]; 

[s1 addChild:s2]; 

四、精灵Z轴重设

[self reorderChild:sprite z:10];//self为CCLayer 

五、精灵换图

1、直接利用新建贴图进行更换  //更换贴图    

CCTexture2D * texture =[[CCTextureCache sharedTextureCache] addImage: @"Default.png"];//新建贴图    

[sprite setTexture:texture];  

2、利用帧替换

//加载帧缓存  

[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"MineSweeping.plist"];      //从帧缓存中取出Default.png 

CCSpriteFrame* frame2 = [[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:@"Default.png"];    

[sprite setDisplayFrame:frame2]; 

作者:wangqiuyun

转自:http://www.2cto.com/kf/201208/146896.html

转载于:https://www.cnblogs.com/chenhanxiong/p/4638978.html

你可能感兴趣的文章
Python2.7 urlparse
查看>>
sencha touch在华为emotion ui 2.0自带浏览器中圆角溢出的bug
查看>>
【架构】Linux的架构(architecture)
查看>>
ASM 图解
查看>>
Date Picker控件:
查看>>
你的第一个Django程序
查看>>
grafana授权公司内部邮箱登录 ldap配置
查看>>
treegrid.bootstrap使用说明
查看>>
[Docker]Docker拉取,上传镜像到Harbor仓库
查看>>
javascript 浏览器类型检测
查看>>
nginx 不带www到www域名的重定向
查看>>
记录:Android中StackOverflow的问题
查看>>
导航,头部,CSS基础
查看>>
[草稿]挂载新硬盘
查看>>
[USACO 2017 Feb Gold] Tutorial
查看>>
关于mysql中GROUP_CONCAT函数的使用
查看>>
OD使用教程20 - 调试篇20
查看>>
Java虚拟机(JVM)默认字符集详解
查看>>
Java Servlet 过滤器与 springmvc 拦截器的区别?
查看>>
(tmp >> 8) & 0xff;
查看>>