Cocos2d-JS Sprite精灵类_cocosjs 判断是不是sprite-程序员宅基地

技术标签: JS开发  Sprite精灵类  根据精灵帧创建  创建Sprite精灵对象  根据纹理创建精灵  

Sprite精灵类
精灵类是cc.Sprite。cc.Sprite类间接继承了cc.Node类,具有cc.Node的基本特征。
1.创建Sprite精灵对象
有4种方式。
a.根据图片资源路径创建
var sp1=new cc.Sprite(“res/background.png”);
//图片资源路径和裁剪的矩形区域
var sp2=new cc.Sprite(“res/tree.png”,cc.rect(604,38,302,295))
2.根据精灵表(纹理图集)中的精灵帧名创建
//精灵帧名
var sp=new cc.Sprite(“#background.png”);
由于这种方式与图片资源路径创建它们的参数都是一个字符串,为了区分是精灵帧名还是图片资源路径,在精灵帧名前面加上#号表示
3.根据精灵帧创建
可以通过精灵帧缓存获得精灵,再从精灵帧对象中获得精灵对象。
//精灵帧缓存
var spriteFrame=cc.spriteFrameCache.getSpriteFrame(“background”);
var sprite=new cc.Sprite(spriteFrame)
4.根据纹理创建精灵
//创建纹理对象
var texture=cc.textureCache.addImage(“background.png”);
//指定纹理创建精灵
var sp1=new cc.Sprite(texture)
//指定纹理和裁剪的矩形区域来创建精灵
var sp2=new cc.Sprite(texture,cc.rect(0,0,480,320))

上述代码中,第8行通过图片创建精灵,变量res.HelloWorld_png是图片的完整路径,他是在resource.js文件中定义的,它代表的图片是HelloWorld.png,第13行代码是通过tree.png图片,和矩形裁剪区域创建精灵,矩形裁剪区域为(604,38,302,295)
第18行代码把tree1.png图片添加到纹理缓存中,第4行代码通过制定纹理和裁剪的矩形区域来创建精灵。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/AiCoding_D/article/details/51133200

智能推荐

Unity3D Shader官方教程翻译(七)----Shader语法:Pass的Culling & Depth Testing-程序员宅基地

ShaderLab syntax: Culling & Depth Testing 语法:面剔除及深度测试Culling is an optimization that does not render polygons facing away from the viewer. All polygons have a front and a back side. Cu

电商后台规格及模板管理_电商后台项目多规格管理-程序员宅基地

EverydayOneCat洗!????一、前端分层开发我们看前端代码,JS和html都放在一起,并不利于我们后期的维护。我们可以在前端代码中也运用MVC的设计模式,将代码进行分离,提高程序的可维护性。1.自定义服务在 AngularJS 中,服务是一个函数或对象,可在你的 AngularJS 应用中使用。我们在上次课中使用了内置服务$http .其实我们也可以自己来定义服务,而服务会封装一些操作。我们在不同的控制器中可以调用同一个服务,这样服务的代码将会被重用。在js文件夹下创建servic_电商后台项目多规格管理

HDU 4609 3-idiots(多项式计数 + FFT卷积优化)_多项式优化卷积-程序员宅基地

题目链接3-idiots分析这是第一道FFT,本想拿模板试试手的谁知道直接来了一个错误的模板……debug好久,具体分析就不说了,比较像构建生成函数,然后计数,中途用了卷积优化kungbin大佬的blog写的很好我先用内建complex交了一发,1300ms 大概比手写慢500ms(233333)AC codeProblem : 4609 ( 3-idiots ) Judge Status_多项式优化卷积

关于微信小程序题库随机生成题目,要求题目不能重复出现。_题库 题目 变量 随机-程序员宅基地

话不多说直接上代码,啥效果自己看吧:wxml:<view class="contain" style="background:url('https://wx4.sinaimg.cn/mw690/006aTqkAgy1fqbxen973gj30g20sgdk1.jpg'); background-size: cover"><view style="position:absolu..._题库 题目 变量 随机

华为云语音合成SDK使用的一些过程_华为sdk 做语音翻译结果-程序员宅基地

百度云语音合成的SDK用过了,感觉上面的语音还是太少了,为了找到更多的语音角色,我找了华为云语音合成。诶,你别说试了试还真可以哦 ……我在_华为sdk 做语音翻译结果

Vuex的基本使用_vue({ router, el: '#app', render: h => h(app) }) v-程序员宅基地

VuexVuex 的基本使用1.安装vuex依赖包npm install vuex --save2.导入vuex包import Vuex from 'vuex'Vue.use (Vuex)3.创建store对象const store = new Vuex.Store ({ // state中存放的就是全局共享的数据 state: { count: 0 }})4. 将 store 对象挂载到 vue 实例中new Vue({ el: '#app', _vue({ router, el: '#app', render: h => h(app) }) vuex

随便推点

WEBGL学习笔记(七):实践练手1-飞行类小游戏之游戏控制-程序员宅基地

接上一节,游戏控制首先要解决的就是碰撞检测了这里用到了学习笔记(三)射线检测的内容了以鸟为射线原点,向前、上、下分别发射3个射线,射线的长度较短大概为10~30.根据上一节场景的建设,我把y轴设为前进方向,z轴设为高度~如果射线返回有结果,那么说明鸟遇到了障碍物。代码如下: var raycaster1 = new THREE.Ray...

C++指针的强制类型转换_c++ 指针强转-程序员宅基地

强制类型转换是通过类型转换运算来实现的。其一般形式为:(类型说明符) (表达式)其功能是把表达式的运算结果强制转换成类型说明符所表示的类型。指针类型简介c语言中,指针是就是内存地址,因此使用指针可以方便的操作内存数据。指针的类型标志着这个指针指向数据的类型,有两个作用:1、告诉了编译器需要从这个地址开始对**多少字节(n)**的数据进行操作, 以及操作模式2、告诉编译器当对这个指针进行..._c++ 指针强转

mysql jre包_Jdk和Jre目录和三个lib目录说明----外部扩展jar包servlet,mysql,oracle等...-程序员宅基地

以下文章转载自a personal blog:For Future,因为昨天下午在cmd模式下编译servlet失败,后来在网上找到这篇文章帮我解决了该问题,我觉得挺值得收藏的,并且这篇文章对"两个jre"和"三个lib"的功能简单扼要的解释清楚了.-----------------------------------------lib目录下放置着jar包。程序中的import语句找的就是这些文件..._mysql的jre

利用db_link创建物化视图数据同步到数据仓库-程序员宅基地

物化视图同步数1. 用途现在需要把生产数据库中的部分数据同步到数据仓库中,考虑到成本和便捷性,采用定期刷新物化视图的方式同步数据。2. 整体实施思路l 首先创建一个dblink,可以访问远程数据库。l 在本地创建一个物化视图,存储远程数据表,当远程数据表有变化时,会定时刷新到物化视图中。l 创建oracle job定时刷新表3

JavaScript实现下拉菜单操作_js写下拉菜单-程序员宅基地

JavaScript实现下拉菜单操作案例分析:(1)该操作分为两个部分,导航栏和下拉菜单部分,因此需要使用嵌套,一共使用两对ul和li标签,外面的ul构成导航栏框架,在li里面一一对应另一对ul和li,在内层中书写对应的下拉菜单项;(2)在导航栏中,每个li都需要添加鼠标经过效果,因此需要用到循环注册鼠标事件;(3)核心思想:添加点击事件,当鼠标经过 li 里面的第二个孩子(内层的ul)时,使ul显示出来,当鼠标离开时,再将对应的ul隐藏起来。完整代码如下:<!DOCTYPE html&g_js写下拉菜单

将eclipse的本地项目同步到GitHub上_eclipse本地代码和git远程仓库代码进行同步规则过滤-程序员宅基地

版权声明:本文为博主原创文章,版权均归本人所有,任何人或团体、机构全部转载或者部分转载、摘录,请保留本博客链接或标注来源。博客地址:https://blog.csdn.net/qq_31285709/article/details/105032065一、前期准备阶段1.在eclipse的Workspace路径下创建一个文件用于存放本地项目。2.在github网站上建立repository..._eclipse本地代码和git远程仓库代码进行同步规则过滤