-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
12 changed files
with
293 additions
and
24 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
134 changes: 134 additions & 0 deletions
134
Akel/Runtime/Includes/Drivers/Vulkan/VulkanDevicePrototypes.h
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,134 @@ | ||
// Copyright (C) 2024 kbz_8 ( [email protected] ) | ||
// This file is a part of Akel | ||
// For conditions of distribution and use, see copyright notice in LICENSE | ||
|
||
// No header guards | ||
|
||
#ifndef AK_VULKAN_DEVICE_FUNCTION | ||
#error "AK_VULKAN_DEVICE_FUNCTION not defined" | ||
#endif | ||
|
||
#ifdef VK_VERSION_1_0 | ||
AK_VULKAN_DEVICE_FUNCTION(vkAllocateCommandBuffers) | ||
AK_VULKAN_DEVICE_FUNCTION(vkAllocateDescriptorSets) | ||
AK_VULKAN_DEVICE_FUNCTION(vkAllocateMemory) | ||
AK_VULKAN_DEVICE_FUNCTION(vkBeginCommandBuffer) | ||
AK_VULKAN_DEVICE_FUNCTION(vkBindBufferMemory) | ||
AK_VULKAN_DEVICE_FUNCTION(vkBindImageMemory) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdBeginQuery) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdBeginRenderPass) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdBindDescriptorSets) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdBindIndexBuffer) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdBindPipeline) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdBindVertexBuffers) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdBlitImage) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdClearAttachments) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdClearColorImage) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdClearDepthStencilImage) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdCopyBuffer) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdCopyBufferToImage) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdCopyImage) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdCopyImageToBuffer) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdCopyQueryPoolResults) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdDispatch) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdDispatchIndirect) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdDraw) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdDrawIndexed) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdDrawIndexedIndirect) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdDrawIndirect) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdEndQuery) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdEndRenderPass) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdExecuteCommands) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdFillBuffer) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdNextSubpass) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdPipelineBarrier) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdPushConstants) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdResetEvent) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdResetQueryPool) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdResolveImage) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdSetBlendConstants) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdSetDepthBias) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdSetDepthBounds) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdSetEvent) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdSetLineWidth) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdSetScissor) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdSetStencilCompareMask) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdSetStencilReference) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdSetStencilWriteMask) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdSetViewport) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdUpdateBuffer) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdWaitEvents) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCmdWriteTimestamp) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateBuffer) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateBufferView) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateCommandPool) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateComputePipelines) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateDescriptorPool) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateDescriptorSetLayout) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateEvent) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateFence) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateFramebuffer) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateGraphicsPipelines) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateImage) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateImageView) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreatePipelineCache) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreatePipelineLayout) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateRenderPass) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateSampler) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateSemaphore) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateShaderModule) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroyBuffer) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroyBufferView) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroyCommandPool) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroyDescriptorPool) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroyDescriptorSetLayout) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroyDevice) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroyEvent) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroyFence) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroyFramebuffer) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroyImage) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroyImageView) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroyPipeline) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroyPipelineCache) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroyPipelineLayout) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroyRenderPass) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroySampler) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroySemaphore) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroyShaderModule) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDeviceWaitIdle) | ||
AK_VULKAN_DEVICE_FUNCTION(vkEndCommandBuffer) | ||
AK_VULKAN_DEVICE_FUNCTION(vkFlushMappedMemoryRanges) | ||
AK_VULKAN_DEVICE_FUNCTION(vkFreeCommandBuffers) | ||
AK_VULKAN_DEVICE_FUNCTION(vkFreeDescriptorSets) | ||
AK_VULKAN_DEVICE_FUNCTION(vkFreeMemory) | ||
AK_VULKAN_DEVICE_FUNCTION(vkGetBufferMemoryRequirements) | ||
AK_VULKAN_DEVICE_FUNCTION(vkGetDeviceMemoryCommitment) | ||
AK_VULKAN_DEVICE_FUNCTION(vkGetDeviceQueue) | ||
AK_VULKAN_DEVICE_FUNCTION(vkGetEventStatus) | ||
AK_VULKAN_DEVICE_FUNCTION(vkGetFenceStatus) | ||
AK_VULKAN_DEVICE_FUNCTION(vkGetImageMemoryRequirements) | ||
AK_VULKAN_DEVICE_FUNCTION(vkGetImageSparseMemoryRequirements) | ||
AK_VULKAN_DEVICE_FUNCTION(vkGetImageSubresourceLayout) | ||
AK_VULKAN_DEVICE_FUNCTION(vkGetRenderAreaGranularity) | ||
AK_VULKAN_DEVICE_FUNCTION(vkInvalidateMappedMemoryRanges) | ||
AK_VULKAN_DEVICE_FUNCTION(vkMapMemory) | ||
AK_VULKAN_DEVICE_FUNCTION(vkMergePipelineCaches) | ||
AK_VULKAN_DEVICE_FUNCTION(vkQueueSubmit) | ||
AK_VULKAN_DEVICE_FUNCTION(vkQueueWaitIdle) | ||
AK_VULKAN_DEVICE_FUNCTION(vkResetCommandBuffer) | ||
AK_VULKAN_DEVICE_FUNCTION(vkResetCommandPool) | ||
AK_VULKAN_DEVICE_FUNCTION(vkResetDescriptorPool) | ||
AK_VULKAN_DEVICE_FUNCTION(vkResetEvent) | ||
AK_VULKAN_DEVICE_FUNCTION(vkResetFences) | ||
AK_VULKAN_DEVICE_FUNCTION(vkSetEvent) | ||
AK_VULKAN_DEVICE_FUNCTION(vkUnmapMemory) | ||
AK_VULKAN_DEVICE_FUNCTION(vkUpdateDescriptorSets) | ||
AK_VULKAN_DEVICE_FUNCTION(vkWaitForFences) | ||
#endif | ||
#ifdef VK_KHR_swapchain | ||
AK_VULKAN_DEVICE_FUNCTION(vkAcquireNextImageKHR) | ||
AK_VULKAN_DEVICE_FUNCTION(vkCreateSwapchainKHR) | ||
AK_VULKAN_DEVICE_FUNCTION(vkDestroySwapchainKHR) | ||
AK_VULKAN_DEVICE_FUNCTION(vkGetSwapchainImagesKHR) | ||
AK_VULKAN_DEVICE_FUNCTION(vkQueuePresentKHR) | ||
#endif |
87 changes: 87 additions & 0 deletions
87
Akel/Runtime/Includes/Drivers/Vulkan/VulkanGlobalPrototypes.h
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,87 @@ | ||
// Copyright (C) 2024 kbz_8 ( [email protected] ) | ||
// This file is a part of Akel | ||
// For conditions of distribution and use, see copyright notice in LICENSE | ||
|
||
// No header guards | ||
|
||
#ifndef AK_VULKAN_GLOBAL_FUNCTION | ||
#error "AK_VULKAN_GLOBAL_FUNCTION not defined" | ||
#endif | ||
|
||
#ifdef VK_VERSION_1_0 | ||
AK_VULKAN_GLOBAL_FUNCTION(vkCreateDevice) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkDestroyInstance) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkEnumerateDeviceExtensionProperties) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkEnumeratePhysicalDevices) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkGetDeviceProcAddr) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkGetPhysicalDeviceFeatures) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkGetPhysicalDeviceFormatProperties) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkGetPhysicalDeviceImageFormatProperties) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkGetPhysicalDeviceMemoryProperties) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkGetPhysicalDeviceProperties) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkGetPhysicalDeviceQueueFamilyProperties) | ||
#endif | ||
|
||
#ifdef VK_KHR_surface | ||
AK_VULKAN_GLOBAL_FUNCTION(vkDestroySurfaceKHR) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkGetPhysicalDeviceSurfaceCapabilitiesKHR) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkGetPhysicalDeviceSurfaceFormatsKHR) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkGetPhysicalDeviceSurfacePresentModesKHR) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkGetPhysicalDeviceSurfaceSupportKHR) | ||
#endif | ||
|
||
#ifdef AK_VULKAN_DEBUG | ||
#ifdef VK_EXT_debug_report | ||
AK_VULKAN_GLOBAL_FUNCTION(vkCreateDebugReportCallbackEXT) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkDestroyDebugReportCallbackEXT) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkDebugReportMessageEXT) | ||
#endif | ||
|
||
#ifdef VK_EXT_debug_utils | ||
AK_VULKAN_GLOBAL_FUNCTION(vkCreateDebugUtilsMessengerEXT) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkDestroyDebugUtilsMessengerEXT) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkSetDebugUtilsObjectNameEXT) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkSetDebugUtilsObjectTagEXT) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkSubmitDebugUtilsMessageEXT) | ||
#endif | ||
#endif | ||
|
||
#ifdef VK_USE_PLATFORM_ANDROID_KHR | ||
#ifdef VK_KHR_android_surface | ||
AK_VULKAN_GLOBAL_FUNCTION(vkCreateAndroidSurfaceKHR) | ||
#endif | ||
#endif | ||
|
||
#ifdef VK_USE_PLATFORM_XCB_KHR | ||
#ifdef VK_KHR_xcb_surface | ||
AK_VULKAN_GLOBAL_FUNCTION(vkCreateXcbSurfaceKHR) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkGetPhysicalDeviceXcbPresentationSupportKHR) | ||
#endif | ||
#endif | ||
|
||
#ifdef VK_USE_PLATFORM_XLIB_KHR | ||
#ifdef VK_KHR_xlib_surface | ||
AK_VULKAN_GLOBAL_FUNCTION(vkCreateXlibSurfaceKHR) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkGetPhysicalDeviceXlibPresentationSupportKHR) | ||
#endif | ||
#endif | ||
|
||
#ifdef VK_USE_PLATFORM_WAYLAND_KHR | ||
#ifdef VK_KHR_wayland_surface | ||
AK_VULKAN_GLOBAL_FUNCTION(vkCreateWaylandSurfaceKHR) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkGetPhysicalDeviceWaylandPresentationSupportKHR) | ||
#endif | ||
#endif | ||
|
||
#ifdef VK_USE_PLATFORM_WIN32_KHR | ||
#ifdef VK_KHR_win32_surface | ||
AK_VULKAN_GLOBAL_FUNCTION(vkCreateWin32SurfaceKHR) | ||
AK_VULKAN_GLOBAL_FUNCTION(vkGetPhysicalDeviceWin32PresentationSupportKHR) | ||
#endif | ||
#endif | ||
|
||
#ifdef VK_USE_PLATFORM_METAL_EXT | ||
#ifdef VK_EXT_metal_surface | ||
AK_VULKAN_GLOBAL_FUNCTION(vkCreateMetalSurfaceEXT) | ||
#endif | ||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.