囫囵吞桃的个人博客 Home

Godot踩坑

#godot #技术 #技术笔记

26.04.10

导出游戏发现行为与编辑器不一致,经过排查解决:

问题:label内的中文不能自动换行

当时label设置的是autowrap_mode = 2(WORD)

发现改成autowrap_mode = 3(WORD (smart))即可

但实际上,在参考下面的链接后:
godotengine/godot#117102
https://docs.godotengine.org/zh-cn/4.x/tutorials/i18n/internationalizing_games.html

To include it, go to Project > Project Settings > General > Internationalization > Locale and enable Include Text Server Data, then export the project. Break iterator data is about 4 MB in size.

在项目设置中,打开这个设置项,启用导出时的“包括文本服务器数据”即可


另一个问题是使用DirAccess.open("res://...")加载.tres在导出版中不可用

26.04.13

场景A,使用@export一个PackedScene变量B

这个PackedScene的所有变量会被复制到场景A下的一个与B是同一类型(继承、且使用有继承关系的脚本)

当场景A将变量B设置为空的时候

在编辑器运行游戏时,中将会使用场景A中变量B的某个属性

而导出的游戏的这个变量设置则不会有效果

造成了测试导出不一致