unity-game-engine - 从 'resources' 文件夹外部加载资源

标签 unity-game-engine

我想加载位于“资源”文件夹外部的“动态”资源(特别是 FBX 文件),以便用户可以添加/删除/修改文件,而无需重新构建项目.

为了使用户在不同类型的设备(目标平台是桌面/android/ios)中轻松访问这些文件,使用 Application.persistentDataPathApplication 似乎是合理的。流 Assets 路径

现在的问题是:如何加载它们(作为正确的 Unity 对象)?

  • 这显然无法通过 Resources.Load() 完成,因为它们位于“Resources”文件夹之外。
  • 使用 WWW,检索文件应该很容易,并且它实际上可以适用于某些类型的文件(例如纹理,请参阅 http://docs.unity3d.com/ScriptReference/WWW-texture.html ),但我找不到加载其他文件的方法。

这个想法是我希望能够像这样使用那些加载的对象:

(GameObject) 实例化(loadedObject, new Vector3(0, 0, 0), Quaternion.identity);

我非常感谢您的帮助(最好是不需要“专业许可证”的解决方案)。

最佳答案

我知道在这种情况下您可以尝试使用两个选项:

  • 构建 asset bundle对于您想要加载的每个动态资源,但这似乎并不是您真正想要的,因为用户仍然必须使用 Unity3d 来生成资源包。
  • 使用自定义 3D 模型加载器,如 post 中所述,似乎最适合您的情况。

关于unity-game-engine - 从 'resources' 文件夹外部加载资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38523751/

相关文章:

c# - 正则表达式查找由一组字母组成的单词

unity-game-engine - 如何获取瓦片 map 中瓦片的 x,y 坐标位置?

android - 使用自定义图标推送通知

unity-game-engine - 在按下“播放”按钮之前将大量数据加载到 Unity 编辑器上

c# - 如何在 Android 的 Unity 中将 System.IO.Stream 转换为纹理?

ios - (Unity 2019.2) iOS 构建在应用程序被用户杀死 5 秒后崩溃

c# - 类型 'BallMovement'的对象已被销毁,但您仍在尝试访问它

c# - Unity如何使GameObject实例在被引用时被销毁?

c# - 是否可以在Unity中创建 "global"类实例?

android - Unity Render.TransparentGeometry 性能问题