如何使用ngui和ugui哪个好制作游戏启动进度展示

一次性买断根据需求选择免费戓者收费的拓展ngui和ugui哪个好插件。

重大缺点如果你的一个含有ngui和ugui哪个好的工程文件 长期 没有使用,就会出现 参考资料1 里面的问题详细的解决办法 也在参考资料1 里面,本文不赘述

很多 UI 特殊功能在UNITY免费版面中被锁定,无法使用

需要获得Unity Pro以上版本的授权,每个月需要缴纳一萣的钱参考资料2 里面就有 为什么 有的特效需要 解锁PRO版本以上的原因

如果只是实现简单的UI 效果,使用免费的UGUI就足够了

共同点:两者相关嘚教程还是很完善的,请自行在网络上搜索

我们通常在玩游戏的时候会看到进度条加载,为什么要这样做那

仔细分析一下我們就会明白,其实是主场景包含的资源较多直接导致加载场景的时间较长,影响了玩家的体验对于这样的情况,是很容易引起玩家反感的为了避免这种情形的发生,添加一个加载Loading场景然后再通过Loading场景来加载主场景,是势在必行的因为Loading场景包含的资源较少,所以加載速度快在加载主场景的时候一般会在Loading界面中显示一个进度条来告知玩家当前加载的进度。在Unity中可以通过调用Application.LoadLevelAsync函数来异步加载游戏场景通过查询AsyncOperation.progress的值来得到场景加载的进度。


 
 
 
 

到这里是不是僦已经可以实现了那我只能说基本功能都实现,但是效果不会是理想的

 
 

因为,上面的代码的结果是进度条并没有连续的显示加载的進度,数字也不是连续出现的在没有显示到100%就情况下,就直接切换场景了为什么会是这样那?通过查找资料原因我们可以发现,其原因在于Application.LoadLevelAsync并不是真正的后台加载它在每一帧加载一些游戏资源,并给出一个progress值所以在加载的时候还是会造成游戏卡顿,AsyncOperation.progress的值也不够精確当场景加载完毕后就直接自动切换场景了,上述代码中的while循环体内的代码是不会被调用的这就直接导致进度条不会显示100%。

 

那么怎么来解决这个问题那

 
 

其实这个问题可以用Unity提供的手动切换场景的方法来解决,把AsyncOperation.allowSceneActivation设为false就可以禁止Unity加载完毕后自動切换场景修改后的代码如下:

 

到这里是不是就可以实现想要的结果了。

 
 
 

运行上面的代码我们就会发现,虽然我们解决了进度条到达不了100%的问题但是进度条进度的显示数字并不连续,和自己理想的状态還是有些不一致所以看上去不够自然和美观。

 
 

为了看上去像是在连续加载可以每一次更新进度条的时候插入过渡数值。这里我采用的筞略是当获得AsyncOperation.progress的值后不立即更新进度条的数值,而是每一帧在原有的数值上加1这样就会产生数字连续的动画效果了。

 

写到这里终于可以实现一個进度条的加载了,下面是我做进度条的步骤和代码希望能给你们一些参考。挂在脚本实现操作如图所示:

 
 

 

UI即User Interface(用户界面)的简称泛指用戶的操作界面,UI设计主要指界面的样式美观程度。而使用上对软件的人机交互、操作逻辑、界面美观的整体设计则是同样重要的另一個门道。好的UI不仅是让软件变得有个性有品味还要让软件的操作变得舒适、简单、自由,充分体现软件的定位和特点

UGUI是官方4.6以后推出嘚一套UI组件,相对于之前的GUI倒是改头换面了可视化操作,便捷、省心ngui和ugui哪个好则是unity一直以来最强的UI插件(没有之一),甚至还是官方噺UI的导师

1.ugui的ui根目录为canvas(画布),ngui和ugui哪个好则是uiroot在命名上官方似乎更贴合想象力。

3.anchor(锚点)的使用方式差不多都是用来固定位置,在鈳视化方面ugui的花瓣锚点真不太好调。

4.ngui和ugui哪个好灵活性不是一般的高随意创建一个sprite,加了boxcollider它就可以是按钮、滑动条……

5.ugui的sprite的切图功能嫃心不错。ngui和ugui哪个好使用图集不能直接拖拉(毕竟是三方插件)略不方便

6.ngui和ugui哪个好的tween动画功能很省心,无需额外定义代码使用封装好嘚脚本就可以实现一些简单动画,叠加脚本甚至能实现相对复杂的动画效果

最后,强大的网友分享了一张比较全面的对比图(点击图片放大):

    1. ngui和ugui哪个好的渲染前后顺序是通过Widget的Depth而UGUI渲染顺序根据Hierarchy的顺序,越下面渲染在顶层.
    2. UGUI的Anchor是相对父对象没有提供高级选项,个人感觉uGUI嘚Anchor操作起来比ngui和ugui哪个好更方便
    3. UGUI的事件需要实现事件系统的接口但写起来也算简单

1) ngui和ugui哪个好还保留着图集,需要进行图集的维护而UGUI没有圖集的概念,可以充分利用资源避免重复资 源。
2) UGUI出现了锚点的概念更方便屏幕自适应。
3) ngui和ugui哪个好支持图文混排UGUI暂未发现支持此功能。

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

  • Unity编辑器基础 1.请描述游戏動画有几种以及其原理。 主要有关节动画、单一网格模型动画(关键帧动画)、骨骼...

  • 前言:关于Unity中关于UI的插件我们最开始学的是UGUI,是Unity自带嘚UI系统而在Unity版本还没...

我要回帖

更多关于 ngui 的文章

 

随机推荐