FariyGUI × Cocos Creator 入门

这篇具有很好参考价值的文章主要介绍了FariyGUI × Cocos Creator 入门。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

程序员向的初探Cocos Creator结和FairyGUI的使用,会比较偏向FairyGUI一点,默认各位读者都熟练掌握Cocos Creator以及js/ts脚本编写。
初探门径,欢迎大佬指教,欢迎在评论区或私信与本人交流,谢谢!

下载和安装

都不需要科学上网,非常友好。

  1. 下载fgui:https://www.fairygui.com/
    FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
  2. 下载Cocos Creator并安装编辑器:https://www.cocos.com/creator-download

下下来后是一个 Cocos Dashboard,在Dashboard里面可以安装各个版本的Cocos Creator编辑器。
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui

  1. fgui自带文档:https://www.fairygui.com/docs/editor
    fgui自带demo(虽然没有在文档里直接给出链接,但是在github上搜索fariygui即可搜到)https://github.com/fairygui/FairyGUI-cocoscreator
  2. Cocos Creator自带文档:https://docs.cocos.com/creator/manual/zh/
  3. 本文对应demo:https://gitcode.net/qq_36286039/fgui_cocos_240 (这是我的个人仓库,还是推荐看官方的)

第一个fgui项目

1. 新建项目

FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
在指定位置创建一个新的UI项目。

  • 项目名称: 项目名称。可以使用中文,创建后也可以随便修改。
  • 项目位置: 项目位置。注意:请不要使用带中文的路径。
  • 在此位置创建新目录: 如果勾选,将在指定的路径创建名称为项目名称的子目录。如果不勾选,则在指定的路径直接创建项目。
  • 项目类型: UI项目类型,即UI实际运行的平台。不同的平台在显示效果、发布结果上有一定的差别。不过不需要担心这里选择错了项目类型,在项目创建后可以随时调整UI项目类型,操作位置在菜单“文件->项目设置”里。

FairyGUI的项目在文件系统的结构为:

  • assets: 包内容放置目录。
  • package1: 每个包一个目录。目录名就是包名。
  • assets_xx: 分支内容放置目录,xx是分支名称。多个分支则存在多个类似名称的目录。
  • settings: 配置文件放置目录。
  • .objs: 内部数据目录。注意:不要加入版本管理,因为这里的内容是不需要共享的。
  • test.fairy: 项目标识文件。文件名就是项目名称,可以随便修改。

2. 编辑器基础

FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
编辑器主界面由以下几个部分组成:

  1. 主菜单。在Mac系统里,主菜单和Mac应用程序菜单集成;在Windows系统里,主菜单显示在主界面最上方。
  2. 主工具栏。常用的功能按钮。
  3. 文档视图。包括已打开的文档的列表,侧工具栏和舞台区域。
  4. 状态栏。显示控制台输出的最后一条信息。点击可以打开控制台。
  5. 各个功能视图。用户可以按使用习惯将它们拖动到不同位置,也可以关闭。右键点击面板的标题栏,在右键菜单中选择“关闭”即可。如果要重新打开,在“主菜单->视图”里操作。

多余的描述我就不在这里赘述了,看fgui的官方文档吧,相信各位都很快能够明白每个按钮的意义,不会的查下官方文档,这篇文章只挑和Cocos比较不一样的或需要注意的地方讲。

3. 包

官方文档:https://www.fairygui.com/docs/editor/package

fgui的包的定义和Cocos Creator里的subpackage的定义类似,因此做好包内资源的管理是很重要的。

看一下fgui的demo里分的包:
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
在Cocos Creator里显示的样式:

FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
在BasicsDemo.ts里调用的有关包的加载和卸载:

onLoad() {
    //......
    fgui.UIPackage.loadPackage("UI/Basics", this.onUILoaded.bind(this));
}
onUILoaded() {
    this._view = fgui.UIPackage.createObject("Basics", "Main").asCom;
    //......
}
onDestroy() {
	//......
    fgui.UIPackage.removePackage("Basics");
}

4. 制作第一个组件

新建fgui项目之后,改一下包名和组件的名字,引入一张图片。
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
将画布大小改为720*1600(也可以不改,按个人习惯来就好)
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
和Cocos Creator不同的是,fgui里锚点默认在左上角,而不是正中心,如果想要锚点在中心,需要设置一下。
同样,这里也是按照自己的习惯来就好,我还是比较习惯锚点在中心一点。
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui

将图片放入舞台

FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui

使用九宫图片

官方文档:https://www.fairygui.com/docs/editor/image
双击图片,进入图片编辑,选择九宫格。
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
缩放图片即可看见效果。
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui

添加文本

FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui

在按钮上添加文本

当我们需要添加一个文本在按钮上时,不能直接这么往上摆,需要让他们有父子关系。观察一下demo里的按钮都是怎么做的:
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
button被单独拎出来了,而且上面有一个title文本,我们也照做一个。
点击上方FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui新建一个按钮。
设置尺寸300*100
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
将原本的矩形换成我们自定义的图片
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
在这里控制显示样式
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
在这里切换按钮状态查看按钮样式
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
做好后应该这样
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui

ctrl+s保存,回到Main
将按钮拖入,改一下位置,保存。
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui

加一个简单的背景,这个场景就算做完了
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui

发布

官方文档:https://www.fairygui.com/docs/editor/publish
打开demo的发布设置看一眼,照葫芦画瓢填一下
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
坐等发布
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
发布后可以在相应路径看到
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui

在Cocos里使用

官方文档:https://www.fairygui.com/docs/sdk/creator
新建一个Cocos项目,按如下路径导入资源,并新建一个场景。
这里建议新建一个Cocos 2.4.0的项目,以保证和demo一样。
看demo知道,核心库是fairygui.js,因此我们把它复制粘贴进来。
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
新建一个常驻节点,编写一个脚本Main.ts
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui

const { ccclass, property } = cc._decorator;

@ccclass
export default class Main extends cc.Component {
    private _view: fgui.GComponent;

    onLoad() {
        fgui.GRoot.create();
        fgui.UIPackage.loadPackage("UI/MainPkg", this.onUILoaded.bind(this));
    }

    onUILoaded() {
        fgui.UIPackage.addPackage("UI/MainPkg");
        this._view = fgui.UIPackage.createObject("MainPkg", "Main").asCom;
        this._view.makeFullScreen();
        fgui.GRoot.inst.addChild(this._view);
    }

    onDestroy() {
        this._view.dispose();
    }

}

运行,可以看到界面已经出来了,且没有报错,就是位置有点偏,因为我们没有设widget。
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
加了居中之后,我们的画面居中了
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
加了宽高关联之后,可以看到已经铺满了
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui
FariyGUI × Cocos Creator 入门,Cocos Creator,cocos2d,ui

结语

本教程到此结束,本人萌新一枚,由于能搜到的fgui×Cocos Creator的资料很少(大部分都是unity的),特分享学习经验。如有这方面的大佬,欢迎与我讨论技术~
至此,第一个场景以及做好,更多内容,请自行阅读官方提供的demo。文章来源地址https://www.toymoban.com/news/detail-835580.html

到了这里,关于FariyGUI × Cocos Creator 入门的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Cocos Creator3.8 项目实战(八)2D UI DrawCall优化详解(上)

    游戏开发的朋友都知道,在游戏开发过程中,DrawCall 是我们优化性能的一个非常重要的指标,直接影响游戏的整体性能表现,DrawCall数量越多,帧率会降低,能明显感觉到卡顿。 那今天我们就来聊一聊,2D UI DrawCall优化方法。 本文的主要内容: 什么是Draw call ? Draw Call 中造成

    2024年02月08日
    浏览(31)
  • Cocos2d-x实现文字颜色渐变

    更改CCLabel文件的updateColor()函数中的顶点颜色即可,代码如下: 效果图:  

    2024年02月12日
    浏览(28)
  • cocos2d-x C++与Lua交互

    Cocos版本: 3.10 Lua版本: 5.1.4 环境: window Visual Studio 2013 Lua 作为一种脚本语言, 它的运行需要有 宿主 的存在,通过 Lua虚拟栈 进行数据交互。 它的底层实现是 C 语言,C语言封装了很多的API接口,使得C/C++与Lua之间可以很方便的通信交互。 Lua的官网: https://www.lua.org/ 在coc

    2024年02月08日
    浏览(27)
  • 使用“Cocos引擎”创建的cpp工程如何在VS中调试Cocos2d-x源码

    前段时间Cocos2d-x更新了一个Cocos引擎,这是一个集合源码,IDE,Studio这一家老小的整合包,我们可以使用这个Cocos引擎来创建我们的项目。 在Cocos2d-x被整合到Cocos引擎之前,我们可以不那么方便地在我们创建的工程里调试Cocos2d-x的代码,当我们使用了整合后的Cocos引擎,调试

    2024年02月12日
    浏览(38)
  • cocos2d-x Android原生平台与Lua交互

    版本: cocos2d-x 语言: C++/Java/Lua cocos2d-x原生平台Android 接入第三方SDK, 需要了解 LuaJavaBridge 的使用。 它封装了用于 Java 和 Lua 的相互调用, 其调用通过 C++ 为中介,简要的流程: Lua调用Java: Lua - C++ - Java Java调用Lua: Java - C++ - Lua 以此方式来实现数据的交互, 接下来我们分别说下

    2024年02月08日
    浏览(29)
  • cocos2d-x 3.17 推箱子 0.1

    此版本为推箱子游戏的基础版本, 后续添加如下功能 人物动画 TiledMap 解析 射线碰撞检测 下一步提示, C++算法解析 道具, 可以回退一步 通过 cocos 命令新建一个项目, 将本项目的 Reources 目录和 Classes 目录复制过去即可 使用图集绘制 Sprite , 然后手动处理碰撞检测 游戏学论著翻译

    2024年02月08日
    浏览(33)
  • win10 vs2022 搭建 cocos2d-x 3.17 开发环境

    https://cocos2d-x.org/download/ 也可以在 github 下载 https://github.com/cocos2d/cocos2d-x/tags https://docs.cocos2d-x.org/cocos2d-x/v3/zh/ https://docs.cocos2d-x.org/api-ref/cplusplus/v3x/index.html 需要 python2 , 安装后可以用 python2 的绝对路径运行 cocos 的 setup.py 如何没有把 python2 加入到环境变量, 可以修改引擎路径下

    2024年02月08日
    浏览(31)
  • 如何将cocos2d-x js打包部署到ios上 Mac M1系统

    项目环境 cocos2d-x 3.13 xcode 12 mac m1 big sur 先找到你的项目 使用xcode软件打开上面这个文件 打开后应该是这个样子 执行编译运行就好了 可能会碰到的错误 在xcode11版本以上都会有这个错误,这是因为iOS11+废弃了system。 将上面代码修改为 解决方案地址 remove \\\"system\\\" usage by minggo ·

    2024年02月22日
    浏览(33)
  • Cocos creator(2d) 使用 shader + uv 实现单张图片衔接滚动效果

    在游戏中,当我们需要让背景图片无缝衔接无限滚动时(打飞机这种背景一直滚动,或者肉鸽游戏地图一直在走等等),通常的做法是 在游戏中放两个背景node,在update中控制这两张背景图片的移动,并让其收尾衔接即可。(具体代码忽略) 可是在肉鸽类游戏中,玩家的走向是全方

    2024年02月13日
    浏览(63)
  • Cocos Creator3D:制作可任意拉伸的 UI 图像

    推荐:将 NSDT场景编辑器 加入你的3D工具链 3D工具集: NSDT简石数字孪生 UI 系统核心的设计原则是能够自动适应各种不同的设备屏幕尺寸,因此我们在制作 UI 时需要正确设置每个控件元素的尺寸(size),并且让每个控件元素的尺寸能够根据设备屏幕的尺寸进行自动的拉伸适配

    2024年02月13日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包