A flexible UI framework for Unity
Clone or download

README.md

FairyGUI for Unity

FairyGUI is a Cross Platform UI Editor & UI framework. Get FairyGUI-Editor

By using FairyGUI Editor, you can build a variety of complex game interface without writing code or any configuration files. Support Unity、Cocos2dx、Cry Engine、 Havok Vision/Project Anarchy、Egret、LayaAir、Haxe、Pixi、Flash、Starling,and Unreal、LibGDX、Three.js in the future.

Compared with traditional Unity UI engines such as NGUI and UGUI, FairyGUI uses a way of thinking closer to the designer to redefine the production process of the UI, which greatly reduces the time the programmer needs to invest in making the UI.

In terms of running efficiency, FairyGUI uses the unique FairyBatching technology for DrawCall optimization, which is more efficient and easier to control than the traditional optimization techniques of NGUI and UGUI. In particular, the UI design of dynamic and static coupling is becoming more and more complex.

In terms of functionality, FairyGUI has good built-in support for traditional UI production pain points, such as rich text (including image and animation), emoji input (direct support for keyboard), virtual list, loop list, pixel-level hit test, curved UI, gesture, particles and model interspersed UI, typing effect, etc.

FairyGUI also fully encapsulates all input methods. Whether mouse, single touch, multi-touch, or VR handle input, developers can use the same code to handle interaction.

FairyGUI UI编辑器 操作简单,使用习惯与Adobe系列软件保持一致,策划和美术设计师可以轻松上手。在编辑器即可组合各种复杂UI组件,以及为UI设计动画效果,无需编写任何代码。可一键导出到Unity、Cocos2d-x、Cry Engine, Havok Vision/Project Anarchy、白鹭、LayaAir、Haxe、Pixi、Flash、Starling等多个主流应用和游戏平台,未来还将支持Unreal、LibGDX、Three.js等。

与NGUI、UGUI等传统Unity UI引擎相比,FairyGUI使用一种更接近设计师的思维方式去重新定义UI的制作过程,大大减轻了程序员在制作UI需要投入的时间。

在运行效率方面,FairyGUI对DrawCall优化使用了特有的FairyBatching技术,相比NGUI、UGUI的传统优化技术更加高效而且容易控制,特别是对动静耦合越来越复杂的UI设计更是应付自如。

在功能方面,FairyGUI对传统UI制作痛点都有很好的内置支持,例如图文混排(包括文字和动画混排),表情输入(直接支持键盘上的表情),虚拟列表循环列表像素级点击检测曲面 UI, 手势粒子和模型穿插UI打字效果等。

FairyGUI还对所有输入方式进行了完整的封装,无论是鼠标、单点触摸、多点触摸还是VR手柄输入,开发者都可以使用相同的代码处理交互。

Get Started

  • Examples.Unity5

    If you are exploring FairyGUI for the first time, it is highly recommended that you start with the Examples project. This is an example project for the Unity 5.x version. This project was created on Unity 5.5.0. If you are using another version of Unity, you can read it from [here] (https://github.com/fairygui/FairyGUI-unity/releases) Download FairyGUI-Unity-Plugin.zip, then replace the DLL in the Assets/Plugins directory inside the project with the DLL that corresponds to your Unity version.

    如果你第一次探索FairyGUI,强烈建议你从Examples工程开始。这是适用于Unity5.x版本的例子工程,这个工程是在Unity5.5.0上制作的,如果你使用的是其他版本的Unity,可以从这里下载FairyGUI-Unity-Plugin.zip,然后用里面对应你Unity版本的DLL替换工程内Assets/Plugins目录下的DLL即可。

  • Source

    Here is the source code of FairyGUI. If it is used for a new project, The are the required files. The source code and shaders here are common to all versions of Unity.

    这里是FairyGUI的源码,如果用于新的项目,这里都是必需的文件。这里的源码和着色器都是Unity所有版本通用的。

  • LuaSupport

    FairyGUI is very friendly to Lua. If you use Lua to develop Unity games, this is very convenient for you.

    FairyGUI对Lua十分友好,如果你使用Lua开发Unity游戏,这里为你准备了非常便利的支持。

Learn

  • 下载FairyGUI编辑器。
  • 下载Examples工程,浏览一遍FairyGUI的例子。
  • 解压Examples工程UIProject目录下的UIProject.zip,使用FairyGUI编辑器打开,结合例子浏览一遍UI工程。
  • 观看视频教程:强大的UI编辑器 - FairyGUI入门教程
  • 阅读文字教程:FairyGUI教程
  • FAQ:问答社区
  • 进群与小伙伴一起交流:一群 434866637(已满) 二群 614444599

License

MIT 你可以自由使用FairyGUI在你的商业和非商业项目。
如果觉得FairyGUI好用,请赞助作者