/cocos-ui-libgdx

a ui library of ligdx with cocostudio 一个cocostudio的ui解析库

Primary LanguageJavaApache License 2.0Apache-2.0

Build Status Codacy Badge Coverage Status Maintenance Apache 2

存档状态

虽然Cocos Studio已经处于实质上被官方放弃的状态,但是本项目依然不定期维护。 注意:必须把cocostudio的"编辑"选择 "拖动改变尺寸"

cocos-ui-libgdx

展示

图片来自网络,学习之用,如有侵权,请通知删除

特性

  • 支持最新版的Cocos Studio进行开发,版本号v3.10
  • 仅支持Cocos Studio的Json格式,请在发布项目时选择Json格式
  • 支持Cocos Studio中大部分控件
  • 部分支持Cocos Studio的粒子效果
  • 部分支持Cocos Studio的动画效果,包括位移动画,缩放动画,帧动画(倾斜动画不支持)

快速入门

build.gradle中添加

    repositories {
       mavenCentral()
       maven { url 'https://jitpack.io' }
    }

    dependencies {
       compile 'com.github.varFamily:cocos-ui-libgdx:0.1.4'
       compile 'com.github.tianqiujie:nativefont:2.5.0'
    }

在代码中

FileHandle defaultFont = defaultFont = Gdx.files.internal("share/MLFZS.TTF");;
CocoStudioUIEditor editor = new CocoStudioUIEditor(
    Gdx.files.internal("demo/MainScene.json"), null, null, defaultFont, null);
Group group = editor.createGroup();

使用AssetManager

//load
 assetManager = new AssetManager();
        assetManager.setLogger(new Logger("hehehe", Logger.DEBUG));
        assetManager.setLoader(CocosScene.class, new CocosLoader(new InternalFileHandleResolver()));
        assetManager.load("mainscene/MenuScene.json", CocosScene.class);
//render
if (!init) {
            if (assetManager.update()) {
                init = true;
                initUi();
            }
        }
//initUi
CocosScene cocosScene = assetManager.get("mainscene/MenuScene.json", CocosScene.class);
        root = cocosScene.getRoot();
        stage.addActor(cocosScene.getRoot(assetManager));
        Gdx.input.setInputProcessor(stage);

###详细demo请看AMScreen

源码构建

项目使用gradle管理,直接运行./gradlew build即可。

如果需要运行demo,执行./gradlew demo即可。

##有问题反馈 在使用中有任何问题,欢迎用以下方式进行反馈

  • 在Github中直接创建一个issue
  • QQ群:187378034
  • QQ: 634416025

下一步计划

  • 完善cocos2dx的粒子系统
  • 添加更多单元测试
  • 检测所有Cocos Studio的demo,确保没有遗漏

感谢

  • 群友@Hey贡献了粒子解析效果的代码