在Android上检测*工作* Vulkan实现?

问题描述

理论上,在 Android 上,可以在运行时查询 FEATURE_VULKAN_HARDWARE_VERSION 以确定设备是否具有有效的 Vulkan 实现,并根据结果启用(更快)Vulkan 代码路径或回退到 OpenGL ES 3 。X。然而,在实践中,有很长的设备列表都安装了 Vulkan 驱动程序,但它们的驱动程序质量介于错误和损坏之间——这意味着在使用 Vulkan 的设备上,要么产生视觉伪影,要么直接崩溃。

那么,在 Android 上使用 Vulkan 在尽可能多的设备上可靠地运行应用程序(即为尽可能少的设备使用 OpenGL ES),同时由于 Vulkan 驱动程序错误而使应用程序无法使用的最佳实践是什么?尽可能使用设备?

我的解决方案是

  • 为运行 Android 10 及更高版本(其中 Vulkan 驱动程序应该足够成熟)的设备启用 Vulkan,减去手动维护的黑名单中的设备
  • 在运行 Android 9 及更低版本的设备上禁用 Vulkan,除非它们在手动维护的白名单中

但我想知道是否有更好的方法,或者是否有关于实用 Vulkan 可用性的现有库或在线设备数据库

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)