版本: Unity 6 (6000.0)
语言 : 英语
在运行时加载资源
通过脚本修改源资源

流式资源

Unity 将场景场景包含游戏的环境和菜单。将每个独特的场景文件视为一个独特的关卡。在每个场景中,您可以放置环境、障碍物和装饰,本质上是分段设计和构建您的游戏。 更多信息
参见术语表
和资源组合到生成的 Player 内部的二进制文件中,当它构建项目时。但是,您可以将文件放置到目标机器上的普通文件系统中,以使其可以使用路径名访问。例如,要在 iOS 设备上部署电影文件,原始电影文件必须从文件系统中的某个位置访问,才能使用PlayMovie函数进行播放。此文件夹还可以包含您打算直接在 Player 安装中分发的AssetBundles,而不是按需下载它们。

Unity 将 Unity 项目中名为StreamingAssets(区分大小写)的文件夹中的所有文件逐字复制到目标机器上的特定文件夹中。要检索该文件夹,请使用Application.streamingAssetsPath属性。始终最好使用Application.streamingAssetsPath获取StreamingAssets文件夹的位置,因为它始终指向应用程序运行的平台上的正确位置。

Application.streamingAssetsPath返回的位置因平台而异。

  • 大多数平台(Unity 编辑器、Windows、Linux Player)使用Application.dataPath + "/StreamingAssets"
  • macOS Player 使用Application.dataPath + "/Resources/Data/StreamingAssets"
  • iOS 使用Application.dataPath + "/Raw"
  • Android 使用压缩的APKUnity 生成的 Android 包格式。当您选择“文件”>“构建并运行”时,APK 会自动部署到您的设备。 更多信息
    参见术语表
    /JAR 文件内部的"jar:file://" + Application.dataPath + "!/assets"
  • 在 Web 上,Application.streamingAssetsPath返回一个 HTTP URL,该 URL 指向 Web 服务器上的StreamingAssets/路径。例如,当您的应用程序针对本地开发服务器运行时,将返回http://localhost:8000/unity_webgl_build/StreamingAssets/

访问流式资源

在 Android 和 Web 平台上,无法通过文件系统 API 和streamingAssets路径直接访问流式资源文件,因为这些平台会返回 URL。请改用UnityWebRequest类来访问内容。

注意

  • streamingAssets路径是只读的。不要在运行时修改或写入streamingAssets目录中的新文件。
  • 位于 StreamingAssets 文件夹中的.dll 和脚本文件不会在脚本编译期间包含。
  • 资源包Addressables是访问非常规游戏构建数据内容的替代方法,它们优于 StreamingAssets 文件夹。
在运行时加载资源
通过脚本修改源资源