如何在 .DAE 环境和角色加载时显示加载屏幕?

Posted

技术标签:

【中文标题】如何在 .DAE 环境和角色加载时显示加载屏幕?【英文标题】:How to show loading screen while .DAE environment and characters are loading? 【发布时间】:2021-02-01 01:16:24 【问题描述】:

我是 SceneKit 的新手,我注意到的第一件事是加载 DAE 环境和角色所需的时间。我一直在寻找在加载环境时显示加载屏幕的方法,但它们似乎都不起作用。

每当我从菜单屏幕推送到游戏屏幕时,它会显示大约一半的菜单屏幕和一半的游戏屏幕与 UIKit 组件,大约 3 秒后,它会显示游戏屏幕而没有完成推送动画过渡。这显然不是一个好的用户体验,所以我想知道如何在环境出现之前添加加载屏幕,最好不要冻​​结 UI,因为我想在后端找到对手以及用户可以取消。

我目前在 viewDidLoad 中拥有游戏屏幕加载的整个视图。如果您可以提供一个加载页面示例,无论是视图还是视图控制器,将不胜感激。

【问题讨论】:

【参考方案1】:

我创建了一个自定义 UIKit 进度条来添加一些更好的效果,并调用了 progressUpdate 来移动进度条。一个 gameNodes (sharedInstance) 类,我在其中缓存节点信息并与其他类共享。 gameNodes->loadModels() 每 N/Total 回调一次以更新条形图。在 gameViewController->viewDidLoad 中,我在创建 UIKit 组件并对齐它们之后加载了模型。我尝试了启动屏幕来提供帮助,但我一定做错了,因为它从来没有真正起作用。有一些等待时间,因为 Scenekit 必须加载(在我的情况下),所以它在所有设备上都不是完美的。然而,它确实在模型加载时产生了我认为合理的反馈。

【讨论】:

以上是关于如何在 .DAE 环境和角色加载时显示加载屏幕?的主要内容,如果未能解决你的问题,请参考以下文章

如何在Angular2中使用导航进行路由时显示加载屏幕?

javascript函数调用以获取数据并在页面加载时显示到屏幕

如何在应用程序首先加载而不是Angular 5中的appComponent时显示登录组件

如何在android中将url加载到webview时显示进度?

如何在 Flutter 中获取当前位置时显示加载微调器?

如何在 react.js 中的页面加载时显示引导模式?