2

我正在尝试调试我的 OpenGL 应用程序中的一个问题,并想使用 Android OpenGL Tracer 来详细查看它。Tracer 最初似乎工作正常并收集了一些数据,但是当我尝试打开跟踪文件时,出现以下错误:

解析 OpenGL 跟踪文件时出错

消息缺少必填字段。(Lite 运行时无法确定缺少哪些字段)。

这只发生在这个特定的应用程序上,而不是其他应用程序。最大的不同是这个应用程序使用 OpenGL ES 3。

跟踪器和 OpenGL ES 3.0 是否存在一般问题?这个错误有什么解决方法吗?

4

1 回答 1

1

我自己也遇到了这个错误并找到了解决方案。在您的 AndroidManifest.xml 中使用以下标记的版本:

<uses-feature android:glEsVersion="0x00030000" android:required="true"/>

我的版本看起来像这样(需要记住一个注释):

<!-- Tell the system this app requires OpenGL ES 3.1. -->
<!-- NOTE: This must be correct for the OpenGL ES Tracer to work properly -->
<uses-feature android:glEsVersion="0x00030001" android:required="true"/>

参考官方文档页面:https ://developer.android.com/guide/topics/graphics/opengl.html#manifest

此页面还包含有关该值的更多详细信息: https ://developer.android.com/guide/topics/manifest/uses-feature-element.html

ANDROID:GLESVERSION 应用程序所需的 OpenGL ES 版本。高 16 位表示主编号,低 16 位表示次编号。例如,要指定 OpenGL ES 版本 2.0,您可以将值设置为“0x00020000”,或者要指定 OpenGL ES 3.2,您可以将值设置为“0x00030002”。

于 2016-06-15T18:37:44.830 回答