the powerful Unity Engine, it offers developers many new features to improve their Apps
as well as the develop workflow significantly.
**UIWidgets 2.0** is developed for **Unity China version** and aims to **optimize the overall performance of the package**. Specifically, a performance gain around **10%** is observed on mobile devices like iPhone 6 after upgrading to UIWidgets 2.0.
**UIWidgets 2.0** is developed for **Unity China version**deliberately and aims to **optimize the overall performance of the package**. Specifically, a performance gain around **10%** is observed on mobile devices like iPhone 6 after upgrading to UIWidgets 2.0.
If you still want to use the original UIWidgets 1.0, please download the archived packages from Releases or switch your working branch to uiwidgets_1.0.
:warning: Though UIWidgets 1.0 is compatible to all platforms like MacOS, iOS, Android, Windows and Webgl, currently **UIWidgets 2.0** only supports MacOS(Metal), iOS(Metal), Android(OpenGLes) and Windows(Direct3D11). More devices will be supported in the future.
:warning: Though UIWidgets 1.0 is compatible to all platforms, currently **UIWidgets 2.0** only supports MacOS(Metal), iOS(Metal), Android(OpenGLes) and Windows(Direct3D11). More devices will be supported in the future.
| Can I create standalone App using UIWidgets? | **Yes** |
| Can I use UIWidgets to build game UIs? | **Yes** |
| Can I develop Unity Editor plugins using UIWidgets? | **Yes** |
| Is UIWidgets a extension of UGUI/NGUI? | **No** |
| Is UIWidgets just a copy of Flutter? | **No** |
| Can I create UI with UIWidgets by simply drag&drop? | **No** |
| Do I have to pay for using UIWidgets? | **No** |
| Any IDE recommendation for UIWidgets? | **Rider, VSCode(Open .sln)** |
* The editor crashes when openning a UIWidgets 2.0 project, e.g., the Sample projects.
Please make sure that you are using campatible Unity versions to the specific UIWidgets version. For example, **UIWidgets 2.0.3** is only supported on Unity China version between 2019.4.26f1c1 and 2019.4.29f1c1. You can find the detailed information in
this [section](####-UIWidgets).
* After openning a UIWidgets 2.0 project I receive an error **DllNotFoundException: libUIWidgets**.
Please make sure that the native libraries are correctly downloaded to your project. You can find them under *UIWidgetsPackageRoot*/
Runtime/Plugins. For example, the libUIWidgets.dll under the sub folder */X86_64* is the native library for Windows and the libUIWidgets.dylib under *osx* is for Mac.
If the libraries are not there or their sizes are small (<1MB),pleaseensurethatyouhaveinstalled**Git Large File Storage**inyourcomputerandthentrythefollowingcommandlineinsidetheUIWidgetsrepository.
```
git lfs pull
```
* What the difference between UIWidgets 2.0 and UIWidgets 1.0 ?
In UIWidgets 1.0 we used Unity [Graphics API](https://docs.unity3d.com/ScriptReference/Graphics.html) for the rendering and all rendering codes are writen in C#. Therefore it is able to run freely on all platforms that Unity supports but relatively slow. The rendering result is also not exactly the same as in flutter due to the difference between Uniy rendering engine and flutter engine.
In UIWidgets 2.0, we wrapped the flutter engine inside native libraries which is writen in C++ and used it to render on Unity Textures. Its rendering result is the same as in flutter and the performance is also better. However, in order to ensure that the flutter engine works properly along with Unity, we modified both the flutter engine and Unity Engine codes. As the result,
UIWidgets 2.0 can only run on specific Unity versions, i.e., Unity China version and support only part of the build targets of Unity for now.