This commit is contained in:
HuYingzhuo(hugo/hyzboy) 2023-08-01 15:45:07 +08:00
commit d3cd9ce4d8
6 changed files with 1 additions and 153 deletions

View File

@ -1,29 +0,0 @@
#include<hgl/platform/Vulkan.h>
#include"AndroidWindow.h"
#include<vulkan/vulkan_android.h>
namespace hgl
{
VkSurfaceKHR CreateVulkanSurface(VkInstance vk_inst,Window *w)
{
if(vk_inst==VK_NULL_HANDLE)return(VK_NULL_HANDLE);
if(!w)return(VK_NULL_HANDLE);
AndroidWindow *win=(Android *)w;
VkAndroidSurfaceCreateInfoKHR createInfo;
createInfo.sType = VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR;
createInfo.pNext = nullptr;
createInfo.flags = 0;
createInfo.window = win->GetWindow();
VkSurfaceKHR surface;
VkResult res=CreateAndroidSurfaceKHR(vk_inst,&createInfo,nullptr,&surface);
if(res!=VK_SUCCESS)
return(VK_NULL_HANDLE);
return(surface);
}
}//namespace hgl

View File

@ -1,29 +0,0 @@
#include<hgl/platform/Vulkan.h>
#include"MacWindow.h"
#include<vulkan/vulkan_macos.h>
namespace hgl
{
VkSurfaceKHR CreateVulkanSurface(VkInstance vk_inst,Window *w)
{
if(vk_inst==VK_NULL_HANDLE)return(VK_NULL_HANDLE);
if(!w)return(VK_NULL_HANDLE);
MacWindow *win=(MacWindow *)w;
VkMacOSSurfaceCreateInfoMVK createInfo;
createInfo.sType = VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK;
createInfo.pNext = nullptr;
createInfo.flags = 0;
createInfo.pView = win->GetView();
VkSurfaceKHR surface;
VkResult res = vkCreateMacOSSurfaceMVK(vk_inst, &createInfo, nullptr, &surface);
if (res != VK_SUCCESS)
return(VK_NULL_HANDLE);
return(surface);
}
}//namespace hgl

View File

@ -1,29 +0,0 @@
#include<hgl/platform/Vulkan.h>
#include"iOSWindow.h"
#include<vulkan/vulkan_ios.h>
namespace hgl
{
VkSurfaceKHR CreateVulkanSurface(VkInstance vk_inst,Window *w)
{
if(vk_inst==VK_NULL_HANDLE)return(VK_NULL_HANDLE);
if(!w)return(VK_NULL_HANDLE);
iOSWindow *win=(iOSWindow *)w;
VkIOSSurfaceCreateInfoMVK createInfo;
createInfo.sType = VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK;
createInfo.pNext = nullptr;
createInfo.flags = 0;
createInfo.pView = win->GetView();
VkSurfaceKHR surface;
VkResult res = vkCreateIOSSurfaceMVK(vk_inst, &createInfo, nullptr, &surface);
if (res != VK_SUCCESS)
return(VK_NULL_HANDLE);
return(surface);
}
}//namespace hgl

View File

@ -25,10 +25,6 @@ IF(UNIX)
SET(PLATFORM_MULTI_THREAD_SOURCE ${PLATFORM_MULTI_THREAD_SOURCE}
UNIX/Semaphore.cpp)
SET(PLATFORM_WINDOW_SOURCE Android/AndroidVulkan.cpp)
ELSE()
SET(PLATFORM_CODEPAGE_SOURCE UNIX/CodePage.cpp)
SET(PLATFORM_LOG_SOURCE UNIX/LogConsole.cpp)
@ -46,8 +42,7 @@ IF(UNIX)
SET(PLATFORM_FILE_SOURCE ${PLATFORM_FILE_SOURCE}
UNIX/ProgramPath.cpp)
SET(PLATFORM_WINDOW_SOURCE UNIX/XCBWindow.cpp
UNIX/XCBVulkan.cpp)
SET(PLATFORM_WINDOW_SOURCE UNIX/XCBWindow.cpp)
ENDIF()
ENDIF()

View File

@ -1,30 +0,0 @@
#include<hgl/platform/Vulkan.h>
#include"WaylandWindow.h"
#include<vulkan/vulkan_wayland.h>
namespace hgl
{
VkSurfaceKHR CreateVulkanSurface(VkInstance vk_inst,Window *w)
{
if(vk_inst==VK_NULL_HANDLE)return(VK_NULL_HANDLE);
if(!w)return(VK_NULL_HANDLE);
WaylandWindow *win=(WaylandWindow *)w;
VkWaylandSurfaceCreateInfoKHR createInfo;
createInfo.sType = VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR;
createInfo.pNext = nullptr;
createInfo.flags = 0;
createInfo.display = win->GetDisplay();
createInfo.surface = win->GetSurface();
VkSurfaceKHR surface;
VkResult res = vkCreateWaylandSurfaceKHR(vk_inst, &createInfo, nullptr, &surface);
if (res != VK_SUCCESS)
return(VK_NULL_HANDLE);
return(surface);
}
}//namespace hgl

View File

@ -1,30 +0,0 @@
#include<hgl/platform/Vulkan.h>
#include"XCBWindow.h"
#include<vulkan/vulkan_xcb.h>
namespace hgl
{
VkSurfaceKHR CreateVulkanSurface(VkInstance vk_inst,Window *w)
{
if(vk_inst==VK_NULL_HANDLE)return(VK_NULL_HANDLE);
if(!w)return(VK_NULL_HANDLE);
XCBWindow *win=(XCBWindow *)w;
VkXcbSurfaceCreateInfoKHR createInfo;
createInfo.sType = VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR;
createInfo.pNext = nullptr;
createInfo.flags = 0;
createInfo.connection = win->GetConnection();
createInfo.window = win->GetWindow();
VkSurfaceKHR surface;
VkResult res = vkCreateXcbSurfaceKHR(vk_inst, &createInfo, nullptr, &surface);
if (res != VK_SUCCESS)
return(VK_NULL_HANDLE);
return(surface);
}
}//namespace hgl