zoukankan      html  css  js  c++  java
  • cocos2d-js v3新特性

    1、游戏对象

          使用cc.game单例代替了原有的cc.Application以及cc.AppControl

    2、属性风格API

         旧的API                                  新的API

         node.setPosition(x,y);             node.x = x;

                                                      node.y = y;

         node.setRotation(r);                node.rotation = r;

    3、屏幕适配策略(以640*960的分辨率为例)

        var mode = cc.ResolutionPolicy.SHOW_ALL;//显示全部,有黑边
        if(cc.winSize.width/cc.winSize.height > 640/960){
            mode = cc.ResolutionPolicy.FIXED_WIDTH;//当屏幕宽高比大于分辨率时,以宽截屏
        }else if(cc.winSize.width/cc.winSize.height < 640/960){
            mode = cc.ResolutionPolicy.FIXED_HEIGHT;//当屏幕宽高比小于分辨率时,以高截屏
        }
        cc.view.setDesignResolutionSize(640, 960, mode);

    4、图层缓存

        当需要bake的节点元素加入到一个cc.Layer或其子类(cc.LayerColor,cc.LayerGradient)对象中,

        然后调用该对象的bake函数就可以了。示例代码:

        var bakeLayer = cc.Layer.create();

        this.addChild(bakeLayer);

        for(var i= 0;i<10;i++){

            var sprite1 = cc.Sprite.create(s_pathGrossini);

            sprite1.setPosition(90 + i * 80 , size.height / 2 - 50);

            bakeLayer.addChild(sprite1);

        } 

        bakeLayer.bake();

        更多信息,可查看测试(js-test)的Bake Layer  test。

        ps:

        1、对于子节点经常会变得层,启用bake功能,会给游戏带来额外的开销。

        2、该功能仅在Canvas渲染模式下有效,在JSB和WebGL渲染模式不会产生效果。

    5、JSB资源热更新管理器

        资源管理器Assets Mannager(仅支持JSB),

        多线程并行下载支持(主要用于APP中活动的添加)

        可以参考js-test 中的Extensions/AssetsManagerTest 测试例。

  • 相关阅读:
    设计模式责任链模式(COR)
    设计模式享元模式(Flyweight)
    设计模式外观模式(Facade)
    设计模式桥接模式(Bridge)
    设计模式适配器(Adapter)
    设计模式解释器模式(Interpreter)
    Ext出来个3.0.1版本,不过不能免费下载了,郁闷
    150天成为JAVA高级程序员?
    Drools业务逻辑框架
    HQL中In的问题详解
  • 原文地址:https://www.cnblogs.com/recock/p/4191177.html
Copyright © 2011-2022 走看看