NGUI与UGUI的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NGUI与UGUI的区别相关的知识,希望对你有一定的参考价值。

参考技术A 总结:

1、NGUI与UGUI的区别

2、uGUI的Canvas 有世界坐标和屏幕坐标

3、uGUI的Image可以使用material

4、UGUI通过Mask来裁剪,而NGUI通过Panel的Clip

5、NGUI的渲染前后顺序是通过Widget的Depth,而UGUI渲染顺序根据Hierarchy的顺序,越下面渲染在顶层.

6、UGUI 不需要绑定Colliders,UI可以自动拦截事件

7、UGUI的Anchor是相对父对象,没有提供高级选项,个人感觉uGUI的Anchor操作起来比NGUI更方便

8、UGUI没有Atlas一说,使用Sprite Packer

9、UGUI的Navigation在Scene中能可视化

10、UGUI的事件需要实现事件系统的接口,但写起来也算简单

2.各自的优缺点

1) NGUI还保留着图集,需要进行图集的维护。而UGUI没有图集的概念,可以充分利用资源,避免重复资  源。

2) UGUI出现了锚点的概念,更方便屏幕自适应。

3) NGUI支持图文混排,UGUI暂未发现支持此功能。

4) UGUI没有 UIWrap 来循环 scrollview 内容。

5) UGUI暂时没有Tween组件。

3.使用选择总结

UGUI由于是Unity原生支持的,所以使用上会更加的人性化。并且伴随着版本升级功能会越来越强,逐渐将成为主流ui方案。NGUI是UGUI出现之前的产物,通过MeshRenderer来实现类似CanvasRenderer的功能,概念上有点蹩脚。作为一个插件虽然已最大努力让UI开发工作变得简单,但相比能够让UnityEditor做出相应修改的UGUI(如RectTransform的出现),其易用性是没法比的。综合来说,新的项目建议使用UGUI,学习成本不高,工具流更有助于提高开发效率。

UGUI与NGUI的区别与优缺点

1. NGUI与UGUI的区别

   1) uGUI的Canvas 有世界坐标和屏幕坐标
   2) uGUI的Image可以使用material  
   3) UGUI通过Mask来裁剪,而NGUI通过Panel的Clip 
   4) NGUI的渲染前后顺序是通过Widget的Depth,而UGUI渲染顺序根据Hierarchy的顺序,越下面渲染在顶层. 
   5) UGUI 不需要绑定Colliders,UI可以自动拦截事件
   6) UGUI的Anchor是相对父对象,没有提供高级选项,个人感觉uGUI的Anchor操作起来比NGUI更方便
   7) UGUI没有Atlas一说,使用Sprite Packer 
   8) UGUI的Navigation在Scene中能可视化
   9) UGUI的事件需要实现事件系统的接口,但写起来也算简单

2.各自的优缺点

   1) NGUI还保留着图集,需要进行图集的维护。而UGUI没有图集的概念,可以充分利用资源,避免重复资源。
   2) UGUI出现了锚点的概念,更方便屏幕自适应。 
   3) NGUI支持图文混排,UGUI暂未发现支持此功能。 
   4) UGUI没有 UIWrap 来循环 scrollview 内容。 
   5) UGUI暂时没有Tween组件。  


 

       NGUI是严格遵循KISS原则并用C#编写的Unity(适用于专业版和免费版)插件,提供强大的UI系统和事件通知框架。其代码简洁,多数类少于200行代码。这意味着程序员可以很容易地扩展NGUI的功能或调节已有功能。对所有其他用户而言,这意味着更高的性能、更低的学习难度和更加有趣。完全集成到Inspector面板中。 不需要点击Play按钮就能查看结果。 在场景视图中看到的就是在游戏视图中得到的(所见即所得)。 基于组件的、模块化的特性:要让你的界面控件做什么,只需为其附加相应的行为,而不需要编码。 全面支持iOS/Android和Flash。 灵活的事件系统。 可以让复杂的UIs只占用一个draw call。

 















以上是关于NGUI与UGUI的区别的主要内容,如果未能解决你的问题,请参考以下文章

转:UGUI与NGUI的区别与优缺点

Unity_UGUI学习图集与使用

Unity NGUI和UGUI与模型特效的层级关系

Unity3D——使用UGUI制作小地图

关于Unity中的NGUI和UGUI

UGUI初学习--------Canvas