CVP认证学习笔记--李天宇018spriteBatchNode使用

CVP认证学习笔记--李天宇018spriteBatchNode使用,第1张

概述SpriteBatchNode是批处理节点,他通过一次opengl调用绘制所有子节点。那么下面我们来看一下怎么来绘制? SpriteBatchNode是一次性绘制,它只有当Sprite使用的纹理与SpriteBatchNode一样时才能添加为其子节点。并且只有sprite的子类或者子类实例化对象才能添加到SpriteBatchNode上。核心代码如下: switch(obj.tag){      

SpriteBatchNode是批处理节点,他通过一次opengl调用绘制所有子节点。那么下面我们来看一下怎么来绘制?

SpriteBatchNode是一次性绘制,它只有当Sprite使用的纹理与SpriteBatchNode一样时才能添加为其子节点。并且只有sprite的子类或者子类实例化对象才能添加到SpriteBatchNode上。核心代码如下:

switch(obj.tag){

case 110:

var sprite = new cc.Sprite("res/HelloWorld.png");

this.addChild(sprite);

sprite.setposition(Math.random()*300,Math.random()*300);

break;

case 120:

if(this.sprite==null){

this.sprite = new cc.SpriteBatchNode("res/HelloWorld.png",1);

this.addChild(this.sprite);

}

var sprite2 = new cc.Sprite(this.sprite.texture,cc.rect(0,200,200));

this.sprite.addChild(sprite2);

sprite2.setposition(Math.random()*300,Math.random()*300);

break;

}

可以看出进行了一次判断,判断this.sprite是否进行了绘制,如果绘制过了,那么就可以把它添加到SpriteBatchNode上,进行多次绘制,从而不会增加节点的个数,实现了绘制效率的提高。

最后附上作业链接:

http://www.cocoscvp.com/usercode/2016_04_23/c3737e9c58f8f669aafbc472de5b75844fd499c1/

总结

以上是内存溢出为你收集整理的CVP认证学习笔记--李天宇018spriteBatchNode使用全部内容,希望文章能够帮你解决CVP认证学习笔记--李天宇018spriteBatchNode使用所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1080518.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存