ResourceUID

继承: Object

管理项目中所有资源的唯一标识符的单例。

描述

资源UID(唯一标识符)允许引擎保持资源之间的引用不变,即使文件被重命名或移动。可以使用uid://访问它们。

ResourceUID跟踪项目中所有注册的资源UID,生成新的UID,并在其字符串和整数表示之间进行转换。

方法

void

add_id(id: int, path: String)

int

create_id()

String

get_id_path(id: int) const

bool

has_id(id: int) const

String

id_to_text(id: int) const

void

remove_id(id: int)

void

set_id(id: int, path: String)

int

text_to_id(text_id: String) const


常量

INVALID_ID = -1 🔗

用于无效UID的值,例如,如果无法加载资源。

它的文本表示是uid://<无效>


方法说明

void add_id(id: int, path: String) 🔗

添加映射到给定资源路径的新UID值。

如果UID已经存在,则失败并出现错误,因此请务必事先检查has_id(),或改用set_id()


int create_id() 🔗

生成一个随机资源UID,该UID保证在当前加载的UID列表中是唯一的。

为了注册此UID,您必须调用add_id()set_id()


String get_id_path(id: int) const 🔗

返回给定UID值引用的路径。

如果UID不存在,则失败并出现错误,因此请务必事先检查has_id()


bool has_id(id: int) const 🔗

返回缓存是否知道给定的UID值。


String id_to_text(id: int) const 🔗

将给定的UID转换为uid://字符串值。


void remove_id(id: int) 🔗

从缓存中删除加载的UID值。

如果UID不存在,则失败并出现错误,因此请务必事先检查has_id()


void set_id(id: int, path: String) 🔗

更新现有UID的资源路径。

如果UID不存在,则失败并出现错误,因此请务必事先检查has_id(),或改用add_id()


int text_to_id(text_id: String) const 🔗

从给定的uid://字符串中提取UID值。