Godot“空函数或函数签名不匹配”错误(HTML 导出)和 Mac 导出崩溃

问题描述 投票:0回答:2

通过创建新的 Godot 项目并将文件复制/粘贴到其中,解决了“空函数或函数签名不匹配”错误(HTML 导出)和 Mac 导出崩溃问题

将其留在这里,以防它对遇到同样问题的人有所帮助!


问题+尝试修复失败:

我最新的游戏更新的 HTML 导出和 Mac 导出不再起作用。在 itch.io 上上传导致黑屏,并出现“空函数或函数签名不匹配”错误。 Mac 导出在启动时崩溃,我无法从错误消息中理解任何内容。

当我在 Godot 编辑器中玩该项目时,游戏可以正常运行,但在其他情况下则无法正常运行。例如,我有一个可以更改图块地图的精灵表的脚本。我在其他项目以及该项目的早期版本中使用了完全相同的脚本,并且运行良好。从 Godot 编辑器播放项目时它可以正常工作,但当我使用编辑器中的“在本地浏览器中运行”按钮时不起作用,并且在导出中也不起作用。

注释掉部分代码并尝试重新导出不起作用(尝试了多次,每次都注释掉越来越多的代码段)。

当然,我也尝试过重新启动Godot和我的电脑几次。


我在 Mac OS 12.6 上使用 Godot 3.5.1。

godot
2个回答
0
投票

实际效果:

我创建了一个新的 Godot 项目,然后将游戏文件复制到新项目的文件夹中。然后出口又恢复正常了!我没有更改任何代码。当我复制文件时,我只复制了场景、脚本和资产。不是“.import”文件,不是“project.godot”文件(尽管我只是将其一些内容复制/粘贴到我的新“project.godot”文件中),也不是“export_presets.cfg”文件。

我的猜测是我的项目中的导入或导出有些混乱?可能是当我使用计算机的文件系统删除项目文件夹中的一些文件,而不是在 Godot 编辑器中执行此操作时。愚蠢的错误,我知道!我刚刚不小心将游戏导出到项目文件夹中,我认为删除 HTML 导出文件及其 .import 文件是安全的。我不能 100% 确定这是否是导致问题的真正原因,但无论如何我都不会再这样做了!


0
投票

我已经在问题上取得了进展,但出现了相同的错误消息,并采用了不同的解决方法。

Git 不记录文件名中的大小写更改。最初创建场景文件时,它们是小写的,然后上传。后来改成了 git 不注册的 pascal 大小写。当我将存储库克隆到新电脑时,

.tscn
文件与实际文件名相比大小写不匹配。因此,出现
"signature mismatch"
错误。

为了解决这个问题,我将

.cs
文件重命名回我的场景所期望的 Pascal 情况。

© www.soinside.com 2019 - 2024. All rights reserved.