目录

  • 概述
  • 从 UNITE 调用统一场景
  • 从 Unity 场景访问 UNITE
  • 关于卸载场景
  • 关于资产
  • 样品

 

概述

通过此功能,您可以在 Unity 和 UNITE 中创建的场景之间来回切换。

通过使用此功能,可以创建完全不同的表达方式,不受 UNITE 的限制。

要使用此功能,您需要事先在 Unity 中创建一个场景。

我们准备了一个示例来检查操作,因此当您想用有效的东西来检查时,请查看示例。

 

从 UNITE 调用统一场景

[场面控制] > [调出Unity场面]事件中使用。

mceclip9_8_762d6f48b6

 

[调出Unity场面]事件命令的设置如下。

mceclip11_4_3ff87fc958

 

① 选择要调用的Unity场景。

打开 “Build Setting”窗口

mceclip0_33_6b7c2be9ba

 

必须将先前创建的 Unity 场景添加到 “Build Setting ”中的 “构建中包含的场景”。

60d39830_17e5_4e97_9012_7b1c9f86e395_c37af30e86

这样就可以通过事件命令选择场景。

mceclip12_5_58253a9530

 

② 选择是否卸载地图场景

每种场景的卸载方式都有各自的优缺点。

drawio_1_dd6a4c469e

 

③指定要传递的变量

此处指定的变量允许在 Unite 场景中引用其值。

此外,返回 UNITE 时,Unity 场景的结果值将存储在变量中。

*如果指定了“(None)”,则在引用时值将变为 0,并且不会存储结果值。

*变量以 int 类型引用和存储。

 

从 Unity 场景访问 UNITE

4c7b33b6_043c_4a55_b20b_195573e9fa9b_752e6d5035

 

①命名空间。

using RPGMaker.Codebase.Runtime.Event.Screen;

②获取 “变量 ”的值。

CallUnitySceneProcessor.GetVariableValue()

 

③带返回值返回 UNITE 场景。

CallUnitySceneProcessor.ReturnToUnite(num)

卸载 Unity 场景,将返回值(num)存储到变量中,然后返回 UNITE。

 

关于卸载场景

调用 CallUnitySceneProcessor.ReturnToUnite() 时、

所有已加载的场景都将被卸载(DontDestroyOnLoad 和 SceneMap 除外)。

您不希望被销毁的游戏对象应使用 Object.DontDestroyOnLoad() 移至 DontDestroyOnLoad。

请尽可能使用 SetActive(false) 使这些游戏对象处于非活动状态。

这样做是为了减少发生冲突问题的可能性,例如,如果有一个以上的 AudioListner。

当调用 Unity 场景时,已停用的 GameObject 应重新设置为活动状态。

 

关于资产

Unity 场景运行时引用的资产必须包含在以下其中之一:由 UNITE 管理的资产、构建中场景引用的资产或 Resources, StreamingAssets 下的资产。

由 UNITE 执行的可寻址资产管理是针对 UNITE 资产的,因此如果 Unity 场景引用了可寻址资产,则需要额外的支持。

样品

下面是该功能的一个示例。

设置了一个 Unity 场景和一个调用 Unity 场景的事件。

*导入时请尝试使用新创建的空项目。

 

导入方法如下所示。

  1. 下载示例软件包
  2. 导入示例软件包
  3. 执行 BuildSetting
  4. 执行测试

 

1.下载示例软件包

从此处下载样本数据 (https://cdn.tkool.jp/updata/unite/UnityScene_Sample.unitypackage)

下载数据采用单元包格式。

 

2.导入样本软件包

打开 UNITE 并选择 [资源]>[导入包]>[自定义包...]。 选择 .

mceclip13_7_b71f687bf7

 

选择下载的 unitypackage 文件,弹出以下屏幕。

按下 [导入] 按钮。

mceclip14_4_356faf52f5

 

过一会儿,一张名为 “Unity 场景调用测试 ”的地图就会添加进来。

(如果未添加地图,请重启系统)

 

3.执行 BuildSetting

选择 [RPG Maker] > [Layout] > [RPG Maker + Unity Editor]。

mceclip15_5_e8803267ec

 

双击 Assets\UnityScene_Sample\UnityScene\TestScene.unity 打开场景。

mceclip13_8_92236ca95a

 

返回 UNITE 窗口,选择 “构建可执行文件 ”图标。

mceclip5_15_89f344fa96

 

按下 [Add Scene(添加场景)] 按钮。

如果 “UnityScene_Sample/UnityScene/TestScene ”被添加到构建中包含的场景中,则添加成功。

mceclip17_3_fed1eba40b

 

返回地图并设置玩家的初始位置。

_b6f1217e39

 

运行测试游戏并操作水晶事件。

mceclip11_5_940061a40c

 

如果显示以下场景,则表示已成功过渡到统一场景。

5 秒钟后,您将返回到 UNITE。

mceclip10_4_f309dfc087