upgraded codes and then it can run.
This commit is contained in:
@@ -38,7 +38,7 @@ void DebugMaker::Begin(VkCommandBuffer cmdbuffer, const char * pMarkerName, cons
|
||||
|
||||
VkDebugMarkerMarkerInfoEXT markerInfo = {};
|
||||
markerInfo.sType = VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT;
|
||||
memcpy(markerInfo.color, &color, sizeof(float) * 4);
|
||||
memcpy(markerInfo.stop_color, &color, sizeof(float) * 4);
|
||||
markerInfo.pMarkerName = pMarkerName;
|
||||
|
||||
dmf.Begin(cmdbuffer, &markerInfo);
|
||||
@@ -51,7 +51,7 @@ void DebugMaker::Insert(VkCommandBuffer cmdbuffer, const char *markerName, const
|
||||
|
||||
VkDebugMarkerMarkerInfoEXT markerInfo = {};
|
||||
markerInfo.sType = VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT;
|
||||
memcpy(markerInfo.color, &color, sizeof(float) * 4);
|
||||
memcpy(markerInfo.stop_color, &color, sizeof(float) * 4);
|
||||
markerInfo.pMarkerName = markerName;
|
||||
|
||||
dmf.Insert(cmdbuffer, &markerInfo);
|
||||
|
@@ -40,10 +40,10 @@ struct DebugUtilsLabel:public VkDebugUtilsLabelEXT
|
||||
sType=VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT;
|
||||
pNext=nullptr;
|
||||
pLabelName=n;
|
||||
color[0]=c.r;
|
||||
color[1]=c.g;
|
||||
color[2]=c.b;
|
||||
color[3]=c.a;
|
||||
stop_color[0]=c.r;
|
||||
stop_color[1]=c.g;
|
||||
stop_color[2]=c.b;
|
||||
stop_color[3]=c.a;
|
||||
}
|
||||
};//struct DebugUtilsLabel
|
||||
|
||||
|
29
src/SceneGraph/Vulkan/Platform/AndroidVulkan.cpp
Normal file
29
src/SceneGraph/Vulkan/Platform/AndroidVulkan.cpp
Normal file
@@ -0,0 +1,29 @@
|
||||
#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
|
29
src/SceneGraph/Vulkan/Platform/MacVulkan.cpp
Normal file
29
src/SceneGraph/Vulkan/Platform/MacVulkan.cpp
Normal file
@@ -0,0 +1,29 @@
|
||||
#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
|
30
src/SceneGraph/Vulkan/Platform/WaylandVulkan.cpp
Normal file
30
src/SceneGraph/Vulkan/Platform/WaylandVulkan.cpp
Normal file
@@ -0,0 +1,30 @@
|
||||
#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
|
30
src/SceneGraph/Vulkan/Platform/WinVulkan.cpp
Normal file
30
src/SceneGraph/Vulkan/Platform/WinVulkan.cpp
Normal file
@@ -0,0 +1,30 @@
|
||||
#include<hgl/platform/Vulkan.h>
|
||||
#include<hgl/platform/WinWindow.h>
|
||||
#include<vulkan/vulkan_win32.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);
|
||||
|
||||
WinWindow *win=(WinWindow *)w;
|
||||
|
||||
VkWin32SurfaceCreateInfoKHR createInfo;
|
||||
createInfo.sType =VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR;
|
||||
createInfo.pNext =nullptr;
|
||||
createInfo.flags =0;
|
||||
createInfo.hinstance=win->GetInstance();
|
||||
createInfo.hwnd =win->GetWnd();
|
||||
|
||||
VkSurfaceKHR surface;
|
||||
|
||||
VkResult res=vkCreateWin32SurfaceKHR(vk_inst,&createInfo,nullptr,&surface);
|
||||
|
||||
if(res!=VK_SUCCESS)
|
||||
return(VK_NULL_HANDLE);
|
||||
|
||||
return(surface);
|
||||
}
|
||||
}//namespace hgl
|
30
src/SceneGraph/Vulkan/Platform/XCBVulkan.cpp
Normal file
30
src/SceneGraph/Vulkan/Platform/XCBVulkan.cpp
Normal file
@@ -0,0 +1,30 @@
|
||||
#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
|
29
src/SceneGraph/Vulkan/Platform/iOSVulkan.cpp
Normal file
29
src/SceneGraph/Vulkan/Platform/iOSVulkan.cpp
Normal file
@@ -0,0 +1,29 @@
|
||||
#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
|
@@ -2,6 +2,7 @@
|
||||
#include<hgl/graph/VKIndexBuffer.h>
|
||||
#include<hgl/graph/VKVertexAttribBuffer.h>
|
||||
#include<hgl/graph/VKPhysicalDevice.h>
|
||||
#include<iostream>
|
||||
|
||||
VK_NAMESPACE_BEGIN
|
||||
const VkDeviceSize GPUDevice::GetUBOAlign (){return attr->physical_device->GetUBOAlign();}
|
||||
|
@@ -9,6 +9,7 @@
|
||||
#include<hgl/graph/VKDevice.h>
|
||||
#include<hgl/graph/VKDebugMaker.h>
|
||||
|
||||
#include<iostream>
|
||||
#include<iomanip>
|
||||
|
||||
VK_NAMESPACE_BEGIN
|
||||
|
@@ -6,6 +6,7 @@
|
||||
#include<hgl/graph/VKShaderModuleMap.h>
|
||||
#include<hgl/graph/VKVertexInputLayout.h>
|
||||
#include"VKPipelineLayoutData.h"
|
||||
#include<hgl/log/LogInfo.h>
|
||||
|
||||
VK_NAMESPACE_BEGIN
|
||||
|
||||
|
@@ -1,6 +1,7 @@
|
||||
#include<hgl/graph/VKDevice.h>
|
||||
#include<hgl/graph/VKDeviceAttribute.h>
|
||||
#include<hgl/graph/VKPhysicalDevice.h>
|
||||
#include<iostream>
|
||||
|
||||
VK_NAMESPACE_BEGIN
|
||||
namespace
|
||||
|
@@ -3,6 +3,7 @@
|
||||
#include<hgl/graph/VKMaterialParameters.h>
|
||||
#include<hgl/graph/VKMaterial.h>
|
||||
#include<hgl/graph/VKVertexAttribBuffer.h>
|
||||
#include<hgl/log/LogInfo.h>
|
||||
|
||||
VK_NAMESPACE_BEGIN
|
||||
VertexInputData::VertexInputData(const uint32_t c,const uint32_t vc,const IndexBufferData *ibd)
|
||||
|
Reference in New Issue
Block a user