艾特商业网

unity圣典官网(unity圣典)

更新时间:2023-08-27 07:41:54

导读 你们好,最近小艾特发现有诸多的小伙伴们对于unity圣典官网,unity圣典这个问题都颇为感兴趣的,今天小活为大家梳理了下,一起往下看看吧。

你们好,最近小艾特发现有诸多的小伙伴们对于unity圣典官网,unity圣典这个问题都颇为感兴趣的,今天小活为大家梳理了下,一起往下看看吧。

1、 场景构建:任意构建两个场景,分别命名为testScene1和testScene2,并在两个场景中设置“切换场景”按钮,方便Leon场景之间的相互切换。注意,两个切换按钮加载的场景都是“load scene”;构建一个loadScene场景来处理加载进度条。

2、 Import Enji resource package, select NGUI- Open-Prefabricated Toolbar in Unity3D menu bar, in the Prefabricated Toolbar window, select the progress bar of control color and drag it to the hierarchy panel, and change the name to Loading'

3、 在层次面板中,Loading增加一个子对象标签,标签的上下文内容为‘Loading’,字体大小适当调整。创建脚本LoadingScripts,并添加组件LoadingScripts,Uiroot摄像机的UI Root。

4、 LoadingScripts脚本代码如图所示。

5、 objProcessBar.GetComponentUISlider().value=acOp.progress;

6、 异步加载testScene2的速度直接决定了进度条的实际进度。

7、 你会发现加载场景“loadScene”一闪而过,很快跳转到场景“testScene2”。根本看不到进度条的进度。原因是加载场景“loadScene”太小,加载场景“loadScene”的时间非常非常短。这时候通过加载场景来控制进度条的进度速度,会让加载场景失去意义。上面的代码简单实用,非常适合加载大场景、大资源。

8、 为了在加载小资源/场景时显示进度条,使用代码。AsyncOperation,asyncoperation的另一个重要属性。如下图所示。

9、 acOp.allowSceneActivation=false;

10、 acOp.allowSceneActivation=true;

11、 当acop。allowsceneactivation=false,即使场景已经加载,也不会自动跳转,直到acop . allowsceneactivation=true;

12、 实验结果表明,进度条运行良好。仔细观察,进度条是1%、2%、3%到100%,完全按照I的代码设置执行,此时进度条的进度与异步加载场景的速度无关。

13、 之所以能得到满意的结果,每一个百分比的进度都能展现在眼前,是因为这个剧本里还有一个重要的语句。yield return New Waitforendofframe();

14、 将此语句移到while循环语句的大括号外,再次运行Unity3D,看看效果。你会发现装货的场景又一次闪过。这是因为这里的while循环只处理一个判断I是否小于100的语句,一个I,一个赋值,计算机的执行速度很快,人眼有时无法识别。这时,

15、 yield返回new WaitForEndOfFrame();它派上了用场,每次复制都要等到帧渲染结束,才能进行下一个循环。

16、 赋值语句

17、 objProcessBar。GetComponentUISlider()。值=I/100;每次赋值时,Loading-Thumb-Label的值将改变一次,Loading-Overlay的显示区域也将改变一次。每渲染一次这些帧,就可以进行下一个循环。yield return New Waitforendofframe()可以让进度条以肉眼可以分辨的速度变化。

18、 异步操作AsyncOperation只有四个属性(Unity经文中只介绍了三个,一个属性是Allow SceneActivity)。只有灵活运用这四个属性,才能得到想要的效果。

以上就是unity圣典这篇文章的一些介绍,希望对大家有所帮助。

免责声明:本文由用户上传,如有侵权请联系删除!