Opengl es 阻止没有GL扩展的设备从Google Play下载应用程序

Opengl es 阻止没有GL扩展的设备从Google Play下载应用程序,opengl-es,google-play,android-manifest,Opengl Es,Google Play,Android Manifest,谷歌Play store上没有特定OpenGL ES扩展的设备是否可以使用应用程序 由于采用的是扩展名,而不是纹理格式,因此可以将其用于通用扩展吗?是的,我相信有,例如: <uses-feature android:glEsVersion="0x00020000" android:required="true" /> 根据文档,extensions变量将包含支持的GL扩展的空格分隔列表。因此,我认为您可以使用.contains(“GL_OES_depth24”)或者什么的。您必须检

谷歌Play store上没有特定OpenGL ES扩展的设备是否可以使用应用程序


由于
采用的是扩展名,而不是纹理格式,因此可以将其用于通用扩展吗?

是的,我相信有,例如:

<uses-feature android:glEsVersion="0x00020000" android:required="true" />
根据文档,
extensions
变量将包含支持的GL扩展的空格分隔列表。因此,我认为您可以使用
.contains(“GL_OES_depth24”)或者什么的。您必须检查返回内容的一些示例内容,以了解如何检查它


我不知道如何阻止google play store中出现该应用程序,但你可以在应用程序的开头打上这张支票,告诉用户你不能使用该应用程序或其他东西。

谢谢回复,但这不是我需要的。我的游戏有很多z-fighting和16位深度缓冲区(Tegra2/3),在目前的关卡设计阶段,修复它会非常困难。因此,我想在没有
GL_OES_depth24
扩展名的设备上隐藏游戏。@SiPlus请查看我的编辑:我不知道它是否会有帮助,但希望它会有帮助。是的,我知道,但我真的不想把它放在引擎渲染器代码中,因为引擎支持16位深度缓冲区,所以游戏级别看起来很难看。游戏容量为500 MB,所以运行时错误消息不是选项。@SiPlus我要跟你说实话。这超出了我的知识范围,对不起。你能拆分下载吗?因此,用户只需下载最初的10MB或其他内容,然后运行。然后你做你的运行时检查,只让他们下载整个游戏,如果他们支持它。
String extensions = javax.microedition.khronos.opengles.GL10.glGetString(
        GL10.GL_EXTENSIONS);