Godot常见错误(长期更新)
- 打印basis和打印basis.xyz不一致
注意打印basis是按行输出matrix的,而正常获取basis.xyz元素应该是按列
[a b c]Basis = [d e f], Basis.X = [a, d, g]
[g h i]
- 屏幕空间投射仅在距离为cam far出问题(大于小于都正常)
Camera.project_position() always give wrong results when z_depth is Camera.far
var pos_near = Cam.project_position(mouse_pos, Cam.near) var pos_far = Cam.project_position(mouse_pos, Cam.far - 1)
var pos_near = Cam.project_position(mouse_pos, Cam.near) var pos_far = Cam.project_position(mouse_pos, Cam.far - 1)
- get_node()返回null时,编辑器抛出异常。正确方式是使用get_node_or_null()
- 编辑器中使用remove_and_skip()可能造成闪退
- Custom Class获取类名不一致
使用get_class()获取自定义类(使用class_name定义的类)只能获取其父类名。如#npc.gd
extends Spriteclass_name NPC
此时获取npc_node.get_class()返回的是"Sprite"而不是"NPC",想要判断的话可以使用is关键字
node is NPC而要获取到正确类名的话要手动覆写get_class类get_class(): return"NPC"
- 空项目出现单帧尖峰(未解决,可能是引起stutter卡顿的直接原因)
- 异步加载关卡时碰撞体弹出错误,碰撞体载入不完全
- TileMap出现闪烁的线
- area2d/area禁用monitorable后无法检测静态碰撞体
- 编辑器中使用remove_and_skip()可能造成闪退
- Custom Class获取类名不一致
node is NPC而要获取到正确类名的话要手动覆写get_class类
- 空项目出现单帧尖峰(未解决,可能是引起stutter卡顿的直接原因)
- 异步加载关卡时碰撞体弹出错误,碰撞体载入不完全
- TileMap出现闪烁的线
- area2d/area禁用monitorable后无法检测静态碰撞体
Comments
Post a Comment