Unity WebGL 中文文档

5. Debugging and trouble shootin

2018-05-01  本文已影响51人  tackor

调试和故障排除WebGL构建

Unity WebGL内容目前无法在Visual Studio中进行调试,这可能会导致难以找出您的内容出了什么问题。以下是关于如何从构建中获取信息的一些提示。

The browser’s JavaScript console 浏览器的JavaScript控制台

Unity WebGL无法访问您的文件系统,因此它不会像其他平台一样写入日志文件。但是,它会将通常会记录到日志文件(例如Debug.Log,Console.WriteLine或Unity的内部日志记录)的所有日志信息写入浏览器的JavaScript控制台。

Development builds 开发构建

出于调试的目的,您通常可能希望在Unity中进行开发构建(“构建设置”窗口中的“开发构建”复选框)。开发构建允许你连接探查器,并且它们不会被缩小,所以发射的JavaScript代码仍然会包含可读的(尽管是)函数名称。当您遇到浏览器错误,或者抛出异常和异常支持被禁用或使用Debug.LogError时,这些可以被浏览器用来显示堆栈跟踪。与启用完全异常支持(请参见下文)时可以获得的管理堆栈跟踪不同,这些堆栈跟踪的名称将会变形,并且不仅包含托管代码,还包含内部UnityEngine代码。

Exception support 例外支持

WebGL具有不同级别的异常支持(请参阅 Building for WebGL)。默认情况下,Unity WebGL将仅支持显式抛出的异常。您可以启用完全异常支持,然后在IL2CPP生成的代码中发出额外的检查,以捕获托管代码中的空引用和超出范围的数组元素。这些额外的检查将显着影响性能,并增加代码大小和加载时间,因此建议仅在调试时使用此模式。

完全异常支持还会发出函数名称来为托管代码生成堆栈跟踪。因此,您将在控制台中看到未捕获的异常和Debug.Log语句的堆栈跟踪,并且可以使用System.Environment.Stacktrace获取堆栈跟踪字符串。

5

Unity WebGL 中文文档 Unity 2018.1.b
1. WebGL
2. webGL Browser Compatibility
3. Building and running a WebGL project
4. WebGL: Deploying compressed builds
5. Debugging and trouble shooting WebGL builds
6. WebGL Graphics
7. WebGL Networking
8. Using Audio In WebGL
9. WebGL performance considerations
10. WebGL: Interacting with browser scripting
11. Using WebGL Templates
12. Cursor locking and full-screen mode in WebGL
13. Input in WebGL

上一篇下一篇

猜你喜欢

热点阅读