• cocos2d-x js 中创建node的方法


    1、精灵Sprite 一共4种创建方式

    (1) 根据图片资源路径创建

    1
    2
    3
    4
    //参数1:图片资源路径
    var sprite1 = cc.Sprite.create("res/zifeiyu.png");
    //参数1:图片资源路径,参数2:显示区域
    var sprite2 = cc.Sprite.create("res/zifeiyu.png",cc.rect(0,0,480,320));

    (2) 根据plist文件中的frame name创建. 注意:必须要在前头加#符号作为区分

    1
    2
    //参数1:帧名字 frame name
    var sprite = cc.Sprite.create('#zifeiyu.png');

    (3) 根据sprite frame创建

    1
    2
    3
    var spriteFrame = cc.spriteFrameCache.getSpriteFrame("zifeiyu.png");
    //参数1:cc.SpriteFrame对象
    var sprite = cc.Sprite.create(spriteFrame);

    (4) 根据纹理texture创建

    1
    2
    3
    4
    5
    var texture = cc.textureCache.addImage("zifeiyu.png");
    //参数1:纹理
    var sprite1 = cc.Sprite.create(texture);
    //参数1:纹理,参数2:显示区域
    var sprite2 = cc.Sprite.create(texture, cc.rect(0,0,480,320));

    2、文字LabelTTF 一共2种创建方式

    (1) 根据字体、大小等多参数创建

    1
    2
    //参数1:显示字符串,参数2:字体,参数3:字号,参数4:宽高,参数5:定位
    var myLabel = cc.LabelTTF.create('label text''Times New Roman', 32, cc.size(320,32), cc.TEXT_ALIGNMENT_LEFT);

    (2) 根据自定义对象cc.FontDefinition创建

    1
    2
    3
    4
    5
    var fontDef = new cc.FontDefinition();
    fontDef.fontName = "Arial";
    fontDef.fontSize = "32";
    //参数1:显示字符串,参数2:自定义对象cc.FontDefinition
    var myLabel = cc.LabelTTF.create('label text', fontDef);

    3、动画Animation一共3种创建方式

    (1) 空创建

    1
    2
    //无参数
    var animation1 = cc.Animation.create();

    (2) 根据精灵帧(sprite frames)创建

    1
    2
    3
    4
    5
    6
    7
    8
    9
    var spriteFrameArr = [];
    var spriteFrame = cache.getSpriteFrame("ipastimes.png");
    spriteFrameArr.push(spriteFrame);
    //参数1:精灵帧数组
    var animation1 = cc.Animation.create(spriteFrameArr);
    //参数1:精灵帧数组,参数2:延续时间,单位为秒
    var animation2 = cc.Animation.create(spriteFrameArr, 0.2);
    //参数1:精灵帧数组,参数2:延续时间,单位为秒,参数3:循环次数
    var animation3 = cc.Animation.create(spriteFrameArr, 0.2,2);

    (3) 根据动作帧(animation frames)创建

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    var animationFrameArr = [];
    var animationFrame = new cc.AnimationFrame();
    aFrame1.initWithSpriteFrame(spriteFrame1,0.5);
    animationFrameArr.push(animationFrame);
    //参数1:动画帧数组
    var animation1 = cc.Animation.create(animationFrameArr);
    //参数1:动画帧数组,参数2:延续时间,单位为秒
    var animation2 = cc.Animation.create(animationFrameArr, 0.2);
    //参数1:动画帧数组,参数2:延续时间,单位为秒,参数3:循环次数
    var animation3 = cc.Animation.create(animationFrameArr, 0.2,2);

    4、批量SpriteBatchNode一共2种创建方式

    (1)根据图片资源路径

    1
    2
    //参数1:图片路径,参数2:容量
    var spriteBatchNode = cc.SpriteBatchNode.create("res/animations/ipastimes.png", 50);

    (2)根据纹理

    1
    2
    3
    var texture = cc.textureCache.addImage("res/animations/ipastimes.png");
    //参数1:纹理,参数2:容量
    var spriteBatchNode = cc.SpriteBatchNode.create(texture,50);

    5、精灵SpriteFrame一共2种创建方式

    (1)根据图片资源路径

    1
    2
    3
    4
    //参数1:图片路径,参数2:区域
    var frame1 = cc.SpriteFrame.create("res/ipastimes.png",cc.rect(0,0,90,128));
    //参数1:图片路径,参数2:区域,参数3:是否旋转,参数4:偏移量,参数5:原区域
    var frame2 = cc.SpriteFrame.create("res/ipastimes.png",cc.rect(0,0,90,128),false,0,cc.size(90,128));

    (2)根据纹理

    1
    2
    3
    4
    5
    var texture = cc.textureCache.addImage("res/ipastimes.png");
    //参数1:图片路径,参数2:区域
    var frame1 = cc.SpriteFrame.create(texture, cc.rect(0,0,90,128));
    //参数1:图片路径,参数2:区域,参数3:是否旋转,参数4:偏移量,参数5:原区域
    var frame2 = cc.SpriteFrame.create(texture, cc.rect(0,0,90,128),false,0,cc.size(90,128));

    6、粒子效果ParticleSystem一共2种创建方式

    (1)根据图片资源路径

    1
    2
    //参数1:粒子数量
    var particle = cc.ParticleSystem.create(50);

    (2)根据纹理

    1
    2
    //参数1:粒子工具particleDesigner导出的文件
    var particle = cc.ParticleSystem.create("res/particle.plist");

    7、物理PhysicsSprite 一共4种创建方式

    (1) 根据图片资源路径创建

    1
    2
    3
    4
    //参数1:图片资源路径
    var physicsSprite1 = cc.PhysicsSprite.create("res/ipastimes.png");
    //参数1:图片资源路径,参数2:显示区域
    var physicsSprite2 = cc.PhysicsSprite.create("res/ipastimes.png",cc.rect(0,0,480,320));

    (2) 根据plist文件中的frame name创建. 注意:必须要在前头加#符号作为区分

    1
    2
    //参数1:帧名字 frame name
    var physicsSprite = cc.PhysicsSprite.create('#ipastimes.png');

    (3) 根据sprite frame创建

    1
    2
    3
    var spriteFrame = cc.spriteFrameCache.getSpriteFrame("ipastimes.png");
    //参数1:cc.SpriteFrame对象
    var physicsSprite = cc.PhysicsSprite.create(spriteFrame);

    (4) 根据纹理texture创建

    1
    2
    3
    4
    5
    var texture = cc.textureCache.addImage("ipastimes.png");
    //参数1:纹理
    var physicsSprite1 = cc.PhysicsSprite.create(texture);
    //参数1:纹理,参数2:显示区域
    var physicsSprite2 = cc.PhysicsSprite.create(texture, cc.rect(0,0,480,320));

    8、大纹理TextureAtlas一共2种创建方式

    (1)根据图片资源路径

    1
    2
    //参数1:图片路径,参数2:容量
    var textureAtlas = cc.TextureAtlas.create("res/animations/ipastimes.png", 50);

    (2)根据纹理

    1
    2
    3
    var texture = cc.textureCache.addImage("res/animations/ipastimes.png");
    //参数1:纹理,参数2:容量
    var textureAtlas = cc.TextureAtlas.create(texture,50);

     

    源引:http://blog.csdn.net/tonny_guan/article/details/44624863

  • 相关阅读:
    Java集合框架知多少——干货!!!
    Java基础小记
    初识Java
    HTML5入门必知
    密码技术小结
    [MDK]Keil在下载程序一直提示更新J-Link
    Python 循环
    2021年7月14日
    bzoj 2653 middle (主席树+二分)
    bzoj 3932 [CQOI2015]任务查询系统 (主席树)
  • 原文地址:https://www.cnblogs.com/jiajunjie/p/7510981.html
Copyright © 2020-2023  润新知