diff --git a/lib/graphics_engine/src/ge_vulkan_driver.cpp b/lib/graphics_engine/src/ge_vulkan_driver.cpp index 9a75f1e54..116afce17 100644 --- a/lib/graphics_engine/src/ge_vulkan_driver.cpp +++ b/lib/graphics_engine/src/ge_vulkan_driver.cpp @@ -9,6 +9,7 @@ #include "ge_vulkan_texture.hpp" #include "ge_vulkan_command_loader.hpp" +#include "ICameraSceneNode.h" #include "ISceneManager.h" #include "IrrlichtDevice.h" @@ -586,6 +587,12 @@ void GEVulkanDriver::destroyVulkan() m_transparent_texture = NULL; } + if (m_irrlicht_device->getSceneManager() && + m_irrlicht_device->getSceneManager()->getActiveCamera()) + { + m_irrlicht_device->getSceneManager()->setActiveCamera(NULL); + } + if (m_irrlicht_device->getSceneManager() && m_irrlicht_device->getSceneManager()->getMeshCache()) getVulkanMeshCache()->destroy();