Laya游戏开发Laya游戏开发实战

Laya FairyGui系列一 FairyGui接入

2019-11-19  本文已影响0人  s0ok

一,什么是FairyGui

FairyGUI(下面简称FGUI)提供了一个强大的UI编辑器,使用习惯与Adobe系列软件保持一致,美术设计师和策划都可以轻松上手。与市场上其他UI编辑器不同...。一堆介绍不抄了,有兴趣得自己去看官网
我选择FairyGUI的最大的原因就是对策划和美术人员比(zi)较(ji)友(tou)好(lan),学习成本较低,组件完善,不用任何扩展UI也能实现奇葩的UI需求。预览效果中即可看到按钮的不同状态切换,列表的滚动效果,动效的运行效果等等,

二,获取FGUI以及LayaSDK

FGUI编辑器下载链接
LayaSDK获取:

三,集成SDK

loadLib('libs/laya.html.js')
loadLib('libs/rawinflate/rawinflate.min.js')
loadLib('libs/fairygui/fairygui.js')
引入库列表.png
<script type="text/javascript" src="libs/rawinflate/rawinflate.min.js"></script>
<script type="text/javascript" src="libs/fairygui/fairygui.js"></script>

四,FGUI 的使用

    Laya.stage.addChild(fairygui.GRoot.inst.displayObject);
    LoadPackageRes(){
        Laya.loader.load([{type:Laya.Loader.BUFFER,url:'res/Package1.fui'}],Laya.Handler.create(this,()=>{
            this.AddPackageRes();
        }))
    }

    AddPackageRes(){
        fairygui.UIPackage.addPackage('res/Package1');
    }
    if(fairygui.UIPackage.getById("res/Package1") == null){
            console.log('资源包未已加载')
    }
    const testCom = fairygui.UIPackage.createObject('Package1','com_Test').asCom;
    fairygui.GRoot.inst.addChild(testCom);

完整代码:

    LoadPackageRes(){
        Laya.loader.load([{type:Laya.Loader.BUFFER,url:'res/Package1.fui'}],Laya.Handler.create(this,()=>{
            this.AddPackageRes();
        }))
    }

    AddPackageRes(){
        if(fairygui.UIPackage.getById("res/Package1") != null){
            console.log('资源包已加载')
        }
        fairygui.UIPackage.addPackage('res/Package1');
        Laya.stage.addChild(fairygui.GRoot.inst.displayObject);
        const testCom = fairygui.UIPackage.createObject('Package1','com_Test').asCom;
        fairygui.GRoot.inst.addChild(testCom);
    }

注:创建项目时注意项目类型选择LayaBox


01.png

PS:第一次写文章,文笔不好,不喜勿喷。谢谢!

上一篇 下一篇

猜你喜欢

热点阅读