Android:Vulkan图层已停止在设备上运行

时间:2017-02-02 15:17:35

标签: android c++ vulkan

我正在使用Google Pixel使用Vulkan开发应用。我成功地调用了vkCreateInstance和渲染。但是,现在当我致电vkCreateInstance时,我得到VK_ERROR_LAYER_NOT_PRESENT。我没有请求任何图层,我只是尝试加载VK_KHR_SWAPCHAIN_EXTENSION_NAMEVK_KHR_SURFACE_EXTENSION_NAMEVK_KHR_ANDROID_SURFACE_EXTENSION_NAME扩展名(代码与正在运行的代码保持不变)。

如果我下载其他Vulkan应用,则会报告相同的问题(例如Hardware CapsViewer for Vulkan)。此外,在加载应用时,我还会收到以下消息:

02-02 09:14:34.603 28290 28308 D vulkan  : searching for layers in '/data/app/de.saschawillems.vulkancapsviewer-1/lib/arm'
02-02 09:14:34.603 28290 28308 D vulkan  : searching for layers in '/system/fake-libs'
02-02 09:14:34.603 28290 28308 D vulkan  : searching for layers in '/data/app/de.saschawillems.vulkancapsviewer-1/base.apk!/lib/armeabi-v7a'

在某些时候,我想获得一个帧捕获,以获得有关我在Google Pixel上遇到的图形问题的更好数据。我加载了Nvidia Tegra Profiler和Snapdragon Profiler。我怀疑其中一个工具改变了我的设备上的某些东西,导致它停止运作。

libvulkan.so之外的系统中是否存在所需的Android Vulkan层(存在并加载)?

当我运行adb shell getprop时,这两个匹配' vulkan':

[debug.vulkan.layer.1]: [sdp]
[debug.vulkan.profiler]: [1]

这些(或许某些属性)可能导致它停止加载图层?

1 个答案:

答案 0 :(得分:2)

这是属性。显然它们是由Snapdragon Profiler添加的,它没有正确关闭。如果我再次打开它并关闭它,它会在关机时设置这些属性,一切都会再次运行。

[debug.vulkan.layer.1]: []
[debug.vulkan.profiler]: [0]