版本:Unity 6 (6000.0)
语言:English
包的脚本 API
作用域注册表

访问包资源

本节说明如何访问或引用定义在包内的资源。

注意:包管理器不支持包中的流式资源。请改用Addressables包。

引用包路径

要引用定义在包内的资源,请使用此路径方案。

"Packages/<package-name>/..."

包内资源的路径以Packages/开头,后跟包的名称(而不是显示名称)。

相比之下,您可以使用此方案访问项目资源。

"Assets/..."

例如,com.unity.images-library包的/Example/Images子文件夹中image.png文件的路径为:

"Packages/com.unity.images-library/Example/Images/image.png"

要获取Packages文件夹中项目的绝对路径,您可以使用部分路径作为Path.GetFullPath()方法的参数。有关示例,请参阅解析绝对路径

加载包内的纹理

要加载存储在包内的纹理,请使用LoadAssetAtPath方法,该方法需要using UnityEditor指令。在此示例中,指定遵循Packages/<package-name>/路径方案的路径。

using UnityEditor;
// ...
Texture2D texture = (Texture2D)AssetDatabase.LoadAssetAtPath("Packages/com.unity.images-library/Example/Images/image.png", typeof(Texture2D));

解析绝对路径

要获取打包资源的绝对路径,请使用Path.GetFullPath()方法,该方法需要using System.IO指令。例如:

using System.IO;
// ...
string absolute =   Path.GetFullPath("Packages/com.unity.images-library/Example/Images/image.png");

其他资源

包的脚本 API
作用域注册表