Validation layers on Android

This commit is contained in:
Szymon Majewski 2021-03-22 10:38:25 -07:00
parent 5c8505c25a
commit 0a29322991
5 changed files with 70 additions and 77 deletions

View file

@ -52,10 +52,10 @@ int VulkanContextAndroid::window_create(ANativeWindow *p_window, int p_width, in
return _window_create(DisplayServer::MAIN_WINDOW_ID, surface, p_width, p_height);
}
VulkanContextAndroid::VulkanContextAndroid() {
// TODO: fix validation layers
use_validation_layers = false;
}
bool VulkanContextAndroid::_use_validation_layers() {
uint32_t count = 0;
_get_preferred_validation_layers(&count, nullptr);
VulkanContextAndroid::~VulkanContextAndroid() {
// On Android, we use validation layers automatically if they were explicitly linked with the app.
return count > 0;
}

View file

@ -36,13 +36,16 @@
struct ANativeWindow;
class VulkanContextAndroid : public VulkanContext {
virtual const char *_get_platform_surface_extension() const;
virtual const char *_get_platform_surface_extension() const override;
public:
int window_create(ANativeWindow *p_window, int p_width, int p_height);
VulkanContextAndroid();
~VulkanContextAndroid();
VulkanContextAndroid() = default;
~VulkanContextAndroid() override = default;
protected:
bool _use_validation_layers() override;
};
#endif // VULKAN_CONTEXT_ANDROID_H