如何用GDScript获取res://与users://的本地绝对路径?
获取res://和users://的绝对路径(GDScript)
方法1:使用DirAccess.get_absolute_path()
无需打开目录,直接传入虚拟路径即可完成转换,是最直接的实现方式:
# 获取res://根目录的绝对路径 var res_root_absolute = DirAccess.get_absolute_path("res://") print_debug(res_root_absolute) # 输出示例: D:/YourProject/ # 获取res://assets/的绝对路径 var res_assets_absolute = DirAccess.get_absolute_path("res://assets/") print_debug(res_assets_absolute) # 输出示例: D:/YourProject/assets/ # 获取users://根目录的绝对路径 var users_root_absolute = DirAccess.get_absolute_path("users://") print_debug(users_root_absolute) # 输出示例: C:/Users/YourUser/AppData/Roaming/YourProject/
方法2:结合ProjectSettings获取res根目录
如果仅需获取res://的根绝对路径,也可以用ProjectSettings的路径全局化方法:
var res_root_absolute = ProjectSettings.globalize_path("res://") print_debug(res_root_absolute)
此方法与DirAccess.get_absolute_path()效果完全一致,都会自动适配当前系统的路径分隔符(Windows用\,Linux/macOS用/)。
注意事项
- 两种方法在Godot 3.x和4.x版本中均适用,无需额外依赖
- 即使传入的虚拟路径不存在,依然会返回符合格式的绝对路径(仅实际目录/文件不存在)
内容的提问来源于stack exchange,提问作者user23783268
相关产品推荐
相关产品推荐

