136 VK_KHR_SWAPCHAIN_EXTENSION_NAME
140 const std::vector<const char*> instanceExtensions = {
141 VK_KHR_SURFACE_EXTENSION_NAME,
142 VK_KHR_ANDROID_SURFACE_EXTENSION_NAME
Contains the class that encapsulate the notion of Swapchain: SwapchainAbstract.
class that manages tasks related to Vulkan context (Vulkan Instance, Vulkan Physical device,...
The class that manages the drawing operation (manage and record command buffers).
Class that manages the classes related to Vulkan code and act as a wrapper around them.
Abstraction of the way of the result is displayed (screen or HMD).
virtual const bool useOpenXR()
vk::ImageView getSwapchainImageView(int view, int elem)
virtual void getFrameBufferSize(int *w, int *h, vk::PhysicalDevice &pDevice)=0
virtual void resetOrigin()=0
virtual vk::Buffer getRenderingDestination()
const std::vector< const char * > deviceExtensions
glm::vec3 currentTranslation
vk::ImageView getDepthSwapchainImageView(int view, int elem)
virtual SwapChainSupportDetails querySwapChainSupport(vk::PhysicalDevice device)=0
glm::vec3 getTranslation()
virtual void cleanUpSurface()=0
virtual VkBool32 isDeviceSupportingSufaceKHR(VkPhysicalDevice device, int i)=0
const bool isValidationLayersEnabled()
std::vector< std::unique_ptr< SwapchainAbstract > > depthSwapchains
virtual vk::Image getDepthSwapchainImage(int view, int index)
virtual std::vector< const char * > getRequiredExtensions()=0
virtual vk::Extent2D getSwapchainExtent(int view)
void setWrapper(VulkanWrapper *wraps)
virtual vk::Format getDepthSwapchainFormat(int view)
bool isIndepFromWindowDimension()
virtual void checkForCorrectSize()=0
glm::vec3 currentRotation
bool separateFromWindowDim
virtual ~WindowAbstract()=default
void setRotation(float v0, float v1, float v3)
virtual void continueInit()=0
virtual void createSurface()=0
virtual std::vector< vk::Extent2D > getBlitExtentDestinations(int view, int elem)
virtual vk::Format getSwapchainFormat(int view)
virtual std::vector< vk::Semaphore > getSemaphoreSignal(int view, int elem)
virtual std::vector< vk::Image > getBlitDestinations(int view, int elem)
virtual std::vector< vk::Semaphore > getSemaphoreWait(int view, int elem)
std::vector< std::unique_ptr< SwapchainAbstract > > swapchains
virtual std::vector< const char * > getRequiredDeviceExtensions()=0
virtual bool isDepthRecquired()
virtual bool isSynchroWithSemaphore()=0
virtual vk::Image getSwapchainImage(int view, int index)
virtual void initWindow()=0
const bool enableValidationLayers
virtual void mainLoop(VulkanDrawing *vulkanDrawing)=0
file that contains the common include for the Vulkan part
Struct that contains the capability for the sapchain, the formats and the present mode supported.