Cocos2d-JS中的Sprite精灵类

精灵类是cc.Sprite,它的类图如下图所示。cc.Sprite类直接继承了cc.Node类,具有cc.Node基本特征。

技术分享

创建Sprite精灵对象

创建精灵对象可以使用构造函数实现,它们接受相同的参数,这些参数非常灵活。归纳起来创建精灵对象有4种主要的方式:
1. 根据图片资源路径创建

[html] view plaincopy技术分享技术分享

  1. //图片资源路径  

  2. var sp1 = new cc.Sprite("res/background.png");    

  3. //图片资源路径和裁剪的矩形区域  

  4. var sp2 = new cc.Sprite("res/tree.png",cc.rect(604, 38, 302, 295))    

2. 根据精灵表(纹理图集)中的精灵帧名创建 

[html] view plaincopy技术分享技术分享

  1. //图片资源路径  

  2. var sp1 = new cc.Sprite("res/background.png");    

  3. //图片资源路径和裁剪的矩形区域  

  4. var sp2 = new cc.Sprite("res/tree.png",cc.rect(604, 38, 302, 295))    

由于这种方式与图片资源路径创建它们的参数都是一个字符串,那么为了区分是精灵帧名还是图片资源路径,在精灵帧名前面加上井号(#)表示。


3. 根据精灵帧创建 
我们可以通过精灵帧缓存中获得精灵帧对象,再从精灵帧对象中获得精灵对象。

[html] view plaincopy技术分享技术分享

  1. //精灵帧缓存  

  2. var spriteFrame = cc.spriteFrameCache.getSpriteFrame("background.png");  

  3. var sprite = new cc.Sprite(spriteFrame);  

4. 根据纹理创建精灵
//创建纹理对象

[html] view plaincopy技术分享技术分享

  1. var texture = cc.textureCache.addImage("background.png");  

  2. //指定纹理创建精灵  

  3. var sp1 = new cc.Sprite(texture);  

  4. //指定纹理和裁剪的矩形区域来创建精灵  

  5. var sp2 = new cc.Sprite(texture, cc.rect(0,0,480,320));  



更多内容请关注最新Cocos图书《Cocos2d-x实战:JS卷——Cocos2d-JS开发

本书交流讨论网站:http://www.cocoagame.net

欢迎加入Cocos2d-x技术讨论群:257760386

更多精彩视频课程请关注智捷课堂Cocos课程:http://v.51work6.com

智捷课堂现推出Cocos会员,敬请关注:http://v.51work6.com/courseInfoRedirect.do?action=netDetialInfo&courseId=844465&categoryId=0

《Cocos2d-x实战 JS卷》现已上线,各大商店均已开售:

京东:http://item.jd.com/11659698.html

欢迎关注智捷iOS课堂微信公共平台,了解最新技术文章、图书、教程信息
技术分享


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。