You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Godot通过全局路径加载图片为纹理失败(纹理尺寸为(0,0))的问题求助

Godot通过全局路径加载图片为纹理失败(纹理尺寸为(0,0))的问题求助

各位Godot大佬好!我最近碰到个头疼的问题:我需要从外部全局路径加载一张图片作为TextureRect的纹理,这张图片不会被打包进程序的exe_name.pck文件里,但用自己写的代码加载后,纹理尺寸一直显示为(0,0),完全没法正常使用。

先贴一下我目前的代码:

var img = Image.new() 
var texture = ImageTexture.new() 
var file: FileAccess = FileAccess.open(lang_path + "logo.png", FileAccess.READ) 
img.load_png_from_buffer(file.get_buffer(file.get_length())) 
file.close() 
print(lang_path + "logo.png") 
texture.create_from_image(img) 
print(texture.get_size())  

补充说明一下:

  • lang_path是目标文件夹的全局路径,比如E:/langs/gaydot/zero/langs/
  • 编译程序后,这张图片不会被打包进exe_name.pck,是外部独立的文件

现在运行代码后,打印出来的内容是这样的:

E:/langs/gaydot/zero/langs/Python/logo.png
(0, 0)

可以看到图片路径是完全正确的,但纹理的尺寸始终是(0,0),说明加载没成功。如果我换成icon.texture = load(task.lang.img)这种方式,只要图片在pck包里就能正常显示,但现在图片是外部的,没法用这个方法。

有没有大佬能帮我看看这段代码哪里出问题了?或者有没有正确的方式加载外部路径的图片为可用的纹理?

备注:内容来源于stack exchange,提问作者Alexandr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 13:38:02