CVP认证学习笔记--李天宇021纹理打包文件读取

来源:互联网 发布:linux终端界面 编辑:程序博客网 时间:2024/06/05 00:36

通过使用打包纹理工具,发布成功了.png.plist文件。使用非常简单方便。本节课是用通过打包好的plist文件,一次性读取,减少io,实现高效率.cc.SpriteFrameCache实现添加动画帧,然后循环遍历,并添加到数组中。然后获取每帧的name。最后通过一个空spriterunaction这个动画。具体代码如下:

 

var HelloWorldLayer = cc.Layer.extend({

    sprite:null,

    ctor:function () {

        this._super();

        //一次加载纹理图片和解析所有的帧

        cc.spriteFrameCache.addSpriteFrames(res.npc_plist);

        //根据帧缓存来创建sprite

        var sp=new cc.Sprite(cc.spriteFrameCache.getSpriteFrame("kick07.png"));

        this.addChild(sp);

        sp.setPosition(200,200);

        //使用帧缓存创建动画

        var frames=[];

        for(var n=1;n<10;n++)

        {

            var sf=cc.spriteFrameCache.getSpriteFrame("kick0"+n+".png");

            frames.push(sf);

        }

        var animation=new cc.Animation(frames,0.2);

        var animate=new cc.animate(animation);

        if(this.sprite==null){

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

            this.addChild(this.sprite);

        }

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

        this.sprite.addChild(sprite2);

        sprite2.setPosition(350,200);

        sprite2.runAction(animate.repeatForever());

        return true;

    }

});

 

var HelloWorldScene = cc.Scene.extend({

    onEnter:function () {

        this._super();

        var layer = new HelloWorldLayer();

        this.addChild(layer);

    }

});

 

最后附上作业链接:

http://www.cocoscvp.com/usercode/2016_04_30/d605366af01914a3c45e956b6b372101789055cb/

0 0
原创粉丝点击