【发布时间】:2023-01-13 04:13:44
【问题描述】:
我有以下问题:
- 我有一个 3D 引擎有它们的场景,但它们与 Unity 不兼容。
- 但是我有这个另一个 3D 引擎的关于场景中所有内容的元数据,例如:位置、灯光、模型、光探测器、物理、相机等...
- 我想在 Unity 上重新创建这个场景,但以编程方式对我拥有的元数据执行解析器,但不使用 Unity 编辑器。 (最后我会有一个 .scene 文件和一些创建的预制件)
- 但同时我希望能够在 Unity 编辑器中加载这个创建的场景(从元数据)(因为我现在是为 Unity 创建的)
- 我希望将所有模型和事物创建为预制件,以便将来能够使用可寻址。
这可行吗?
也许有办法创建 UnityYAML 场景文件吗?
【问题讨论】:
-
这并非不可能,但需要大量的工作和大量的反复试验。无论如何,您很可能不得不在 Unity 中构建场景,只是为了能够查看您的转换器编写的内容是否类似于 Unity 处理序列化的方式。当然,这比在编辑器中将它们放在一起要多得多,因此您需要决定是否足够使用它来完成创建它所花费的时间,从而真正节省时间和工作量。
-
@RetiredNinja 你是说这可以通过 UnitYAML 场景安装实现吗?
-
相反,将旧场景的数据导出为 JSON 或 XML 等格式的数据文件,然后在 Unity 中编写代码以导入数据并使用 Instantiate(prefabs) 重新创建场景会更容易。您无需了解 Unity 如何构建其场景和预制文件,并且使用您自己的代码调试导出的数据文件要容易得多
标签: c# unity3d assetbundle addressables