如何调试 Unity 3D WebGL 中的最大调用堆栈大小错误?

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

将 Unity 3D 应用程序导出到 webGL 时遇到这个奇怪的问题。在我的电脑上它运行良好(在 Unity 上),但是当我将它放在网上时,它在 Chrome 上给出最大调用堆栈大小错误(firefox 运行良好) 我做了一些研究,大多数文章说这是因为代码上可能存在无限循环,我检查了我的代码,没有无限循环(它会挂在 Firefox 上)。所以现在我不确定如何调试它。有人可以帮忙吗?

更新:我尝试禁用场景中的对象,即使场景几乎为空且没有运行 C# 代码,它仍然会返回此错误。

javascript unity-game-engine unity-webgl
4个回答
2
投票

谢谢@slaw。刷新对我来说不起作用,但是当我以隐身模式打开它时,错误消失了。


1
投票

我遇到了这个错误。我只需刷新浏览器缓存就可以修复它。在 Firefox 上,Ctrl-Shift-R 还不够。我必须进入网络控制台启用“禁用缓存”。


0
投票

使用最新的 Unity 2018.1.0f2 Personal 就发生了这种情况。文件 --> 构建设置 --> WebGL --> 播放器设置 - 选择 WebGL 构建。然后在检查器选项卡上将 Api 兼容性级别从 4.x 更改为 .Net Standard 2.0。 现在一切都在工作。

Chrome 中的错误

未捕获范围错误:超出最大调用堆栈大小

Firefox 中的错误

太多递归。

Unity WebGL panel


0
投票

老问题,但我最近在 Firefox 和 Chrome 中使用 2021.3.30f1 时遇到了这个问题(尽管使用不同的术语报告错误)。

一种解决方案是在“项目设置”->“WebGL”、“发布设置”中关闭压缩:

  • 压缩格式:禁用
  • 名称采用哈希值
  • 数据缓存:关闭
  • 减压回退:关闭
© www.soinside.com 2019 - 2024. All rights reserved.