在Android中将Unity加载为子视图时调用场景

在Android中将Unity加载为子视图时调用场景,第1张

概述我已经将Unity集成到Android活动中(类似于this).现在,我需要根据用户输入动态加载场景.我已经尝试过复制howUnityloadsascene的方式,因为我知道AndroidActivity能够与UnityPlayer通信,但显然不起作用:UnityPlayer.UnitySendMessage("Application","LoadLevel","9");我

我已经将Unity集成到Android活动中(类似于this).
现在,我需要根据用户输入动态加载场景.

我已经尝试过复制how Unity loads a scene的方式,因为我知道AndroID Activity能够与UnityPlayer通信,但显然不起作用:

UnityPlayer.UnitySendMessage("Application", "LoadLevel", "9");

我知道在Unity中加载场景的工作是other ways,但我不知道如何从AndroID本身调用它们(还要考虑UnitySendMessage仅允许一个参数).

解决方法:

如果计划从AndroID加载Unity活动,则应创建一个空场景.将此称为主菜单,然后使其成为通过“构建设置”加载的默认场景.使其索引为0.

此空场景的目标是在调用附加到该场景的脚本时加载特定场景.

在此主菜单场景中,创建一个名为SceneLoader的GameObject,然后将以下脚本附加到该对象:

public class SceneLoader : MonoBehavIoUr{    public voID loadScene(string sceneIndex)    {        UnityEngine.SceneManagement.SceneManager.LoadScene(Convert.ToInt16(sceneIndex));    }}

您还应该在每个其他场景中创建一个名为SceneLoader的GameObject,并将上面的脚本附加到所有这些场景上.

现在,加载Unity Activity,它会自动加载默认/空场景.由于其中只有一个GameObject / SceneLoader,因此加载速度非常快.

现在,您可以使用以下命令从Java加载其他场景:

UnityPlayer.UnitySendMessage("SceneLoader", "loadScene", "9");
总结

以上是内存溢出为你收集整理的在Android中将Unity加载为子视图时调用场景全部内容,希望文章能够帮你解决在Android中将Unity加载为子视图时调用场景所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1093895.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存