move VK source files to up-level folder

This commit is contained in:
hyzboy 2020-10-21 11:43:18 +08:00
parent 114c57510c
commit 917424e784
118 changed files with 506 additions and 468 deletions

@ -1 +1 @@
Subproject commit 0178a443b3d96f08f95c42b474f526bfd4e29389 Subproject commit 0f92de76507348b9a5a5cdd80a51406bfae00ddd

View File

@ -34,7 +34,7 @@ SET(ULRE CMCore
CMAssetsManage CMAssetsManage
CMSceneGraph CMSceneGraph
ULRE.Util ULRE.Util
ULRE.RenderDevice.Vulkan ULRE.VulkanRender
ULRE.SceneGraph ULRE.SceneGraph
MathGeoLib MathGeoLib
${JSONCPP_LIBRARY} ${JSONCPP_LIBRARY}
@ -55,4 +55,4 @@ add_subdirectory(example)
IF(SUPPORT_QT_VULKAN) IF(SUPPORT_QT_VULKAN)
fix_project_version(1,1) fix_project_version(1,1)
add_project_meta(META_FILES_TO_INCLUDE) add_project_meta(META_FILES_TO_INCLUDE)
ENDIF(SUPPORT_QT_VULKAN) ENDIF(SUPPORT_QT_VULKAN)

View File

@ -4,8 +4,8 @@
#include"VulkanAppFramework.h" #include"VulkanAppFramework.h"
#include<hgl/filesystem/FileSystem.h> #include<hgl/filesystem/FileSystem.h>
#include<hgl/graph/InlineGeometry.h> #include<hgl/graph/InlineGeometry.h>
#include<hgl/graph/vulkan/VKDatabase.h> #include<hgl/graph/VKDatabase.h>
#include<hgl/graph/vulkan/VKRenderableInstance.h> #include<hgl/graph/VKRenderableInstance.h>
#include<hgl/graph/RenderList.h> #include<hgl/graph/RenderList.h>
using namespace hgl; using namespace hgl;

View File

@ -4,13 +4,13 @@
#include"VulkanAppFramework.h" #include"VulkanAppFramework.h"
#include<hgl/filesystem/FileSystem.h> #include<hgl/filesystem/FileSystem.h>
#include<hgl/graph/InlineGeometry.h> #include<hgl/graph/InlineGeometry.h>
#include<hgl/graph/vulkan/VKDatabase.h> #include<hgl/graph/VKDatabase.h>
#include<hgl/graph/vulkan/VKRenderableInstance.h> #include<hgl/graph/VKRenderableInstance.h>
#include<hgl/graph/RenderList.h> #include<hgl/graph/RenderList.h>
#include<hgl/graph/vulkan/VKTexture.h> #include<hgl/graph/VKTexture.h>
#include<hgl/graph/vulkan/VKImageView.h> #include<hgl/graph/VKImageView.h>
#include<hgl/graph/vulkan/VKSampler.h> #include<hgl/graph/VKSampler.h>
#include<hgl/graph/vulkan/VKFramebuffer.h> #include<hgl/graph/VKFramebuffer.h>
using namespace hgl; using namespace hgl;
using namespace hgl::graph; using namespace hgl::graph;

View File

@ -6,8 +6,8 @@
#include<hgl/graph/font/TextRenderable.h> #include<hgl/graph/font/TextRenderable.h>
#include"VulkanAppFramework.h" #include"VulkanAppFramework.h"
#include<hgl/graph/vulkan/VKTexture.h> #include<hgl/graph/VKTexture.h>
#include<hgl/graph/vulkan/VKSampler.h> #include<hgl/graph/VKSampler.h>
#include<hgl/math/Math.h> #include<hgl/math/Math.h>
using namespace hgl; using namespace hgl;

View File

@ -6,8 +6,8 @@
#include<hgl/graph/TileData.h> #include<hgl/graph/TileData.h>
#include"VulkanAppFramework.h" #include"VulkanAppFramework.h"
#include<hgl/graph/vulkan/VKTexture.h> #include<hgl/graph/VKTexture.h>
#include<hgl/graph/vulkan/VKSampler.h> #include<hgl/graph/VKSampler.h>
#include<hgl/math/Math.h> #include<hgl/math/Math.h>
using namespace hgl; using namespace hgl;

View File

@ -7,8 +7,8 @@
#include"VulkanAppFramework.h" #include"VulkanAppFramework.h"
#include<hgl/filesystem/FileSystem.h> #include<hgl/filesystem/FileSystem.h>
#include<hgl/graph/InlineGeometry.h> #include<hgl/graph/InlineGeometry.h>
#include<hgl/graph/vulkan/VKDatabase.h> #include<hgl/graph/VKDatabase.h>
#include<hgl/graph/vulkan/VKRenderableInstance.h> #include<hgl/graph/VKRenderableInstance.h>
#include<hgl/graph/RenderList.h> #include<hgl/graph/RenderList.h>
using namespace hgl; using namespace hgl;

View File

@ -3,7 +3,7 @@
#include"VulkanAppFramework.h" #include"VulkanAppFramework.h"
#include<hgl/filesystem/FileSystem.h> #include<hgl/filesystem/FileSystem.h>
#include<hgl/graph/InlineGeometry.h> #include<hgl/graph/InlineGeometry.h>
#include<hgl/graph/vulkan/VKDatabase.h> #include<hgl/graph/VKDatabase.h>
#include<hgl/graph/RenderList.h> #include<hgl/graph/RenderList.h>
using namespace hgl; using namespace hgl;

View File

@ -2,8 +2,8 @@
// 测试高质量纹理过滤函数 // 测试高质量纹理过滤函数
#include"VulkanAppFramework.h" #include"VulkanAppFramework.h"
#include<hgl/graph/vulkan/VKTexture.h> #include<hgl/graph/VKTexture.h>
#include<hgl/graph/vulkan/VKSampler.h> #include<hgl/graph/VKSampler.h>
#include<hgl/math/Math.h> #include<hgl/math/Math.h>
using namespace hgl; using namespace hgl;

View File

@ -4,8 +4,8 @@
#include"VulkanAppFramework.h" #include"VulkanAppFramework.h"
#include<hgl/filesystem/FileSystem.h> #include<hgl/filesystem/FileSystem.h>
#include<hgl/graph/InlineGeometry.h> #include<hgl/graph/InlineGeometry.h>
#include<hgl/graph/vulkan/VKDatabase.h> #include<hgl/graph/VKDatabase.h>
#include<hgl/graph/vulkan/VKRenderableInstance.h> #include<hgl/graph/VKRenderableInstance.h>
#include<hgl/graph/RenderList.h> #include<hgl/graph/RenderList.h>
using namespace hgl; using namespace hgl;

View File

@ -1,4 +1,4 @@
#include<hgl/graph/vulkan/VKRenderTarget.h> #include<hgl/graph/VKRenderTarget.h>
#include<hgl/graph/InlineGeometry.h> #include<hgl/graph/InlineGeometry.h>
#include"VulkanAppFramework.h" #include"VulkanAppFramework.h"

View File

@ -2,8 +2,8 @@
// 该示例是texture_rect的进化演示使用GeometryShader画矩形 // 该示例是texture_rect的进化演示使用GeometryShader画矩形
#include"VulkanAppFramework.h" #include"VulkanAppFramework.h"
#include<hgl/graph/vulkan/VKTexture.h> #include<hgl/graph/VKTexture.h>
#include<hgl/graph/vulkan/VKSampler.h> #include<hgl/graph/VKSampler.h>
#include<hgl/math/Math.h> #include<hgl/math/Math.h>
using namespace hgl; using namespace hgl;

View File

@ -1,7 +1,7 @@
#include<iostream> #include<iostream>
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/graph/vulkan/VKInstance.h> #include<hgl/graph/VKInstance.h>
using namespace hgl; using namespace hgl;
using namespace hgl::graph; using namespace hgl::graph;

View File

@ -2,9 +2,9 @@
// 该示例是1.indices_rect的进化演示在矩形上贴上贴图 // 该示例是1.indices_rect的进化演示在矩形上贴上贴图
#include"VulkanAppFramework.h" #include"VulkanAppFramework.h"
#include<hgl/graph/vulkan/VKTexture.h> #include<hgl/graph/VKTexture.h>
#include<hgl/graph/vulkan/VKSampler.h> #include<hgl/graph/VKSampler.h>
#include<hgl/graph/vulkan/VKInlinePipeline.h> #include<hgl/graph/VKInlinePipeline.h>
#include<hgl/math/Math.h> #include<hgl/math/Math.h>
using namespace hgl; using namespace hgl;

View File

@ -1,23 +1,23 @@
#pragma once #pragma once
#include<hgl/platform/Window.h> #include<hgl/platform/Window.h>
#include<hgl/graph/vulkan/VKInstance.h> #include<hgl/graph/VKInstance.h>
#include<hgl/graph/vulkan/VKPhysicalDevice.h> #include<hgl/graph/VKPhysicalDevice.h>
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/graph/vulkan/VKSemaphore.h> #include<hgl/graph/VKSemaphore.h>
#include<hgl/graph/vulkan/VKBuffer.h> #include<hgl/graph/VKBuffer.h>
#include<hgl/graph/vulkan/VKShaderModule.h> #include<hgl/graph/VKShaderModule.h>
#include<hgl/graph/vulkan/VKImageView.h> #include<hgl/graph/VKImageView.h>
#include<hgl/graph/vulkan/VKRenderable.h> #include<hgl/graph/VKRenderable.h>
#include<hgl/graph/vulkan/VKDescriptorSets.h> #include<hgl/graph/VKDescriptorSets.h>
#include<hgl/graph/vulkan/VKRenderPass.h> #include<hgl/graph/VKRenderPass.h>
#include<hgl/graph/vulkan/VKPipeline.h> #include<hgl/graph/VKPipeline.h>
#include<hgl/graph/vulkan/VKCommandBuffer.h> #include<hgl/graph/VKCommandBuffer.h>
#include<hgl/graph/vulkan/VKFormat.h> #include<hgl/graph/VKFormat.h>
#include<hgl/graph/vulkan/VKFramebuffer.h> #include<hgl/graph/VKFramebuffer.h>
#include<hgl/graph/vulkan/VKMaterial.h> #include<hgl/graph/VKMaterial.h>
#include<hgl/graph/vulkan/VKMaterialInstance.h> #include<hgl/graph/VKMaterialInstance.h>
#include<hgl/graph/vulkan/VKRenderTarget.h> #include<hgl/graph/VKRenderTarget.h>
#include<hgl/graph/vulkan/VKDatabase.h> #include<hgl/graph/VKDatabase.h>
#include<hgl/graph/RenderList.h> #include<hgl/graph/RenderList.h>
using namespace hgl; using namespace hgl;

View File

@ -1,7 +1,7 @@
#ifndef HGL_GRAPH_INLINE_GEOMETRY_INCLUDE #ifndef HGL_GRAPH_INLINE_GEOMETRY_INCLUDE
#define HGL_GRAPH_INLINE_GEOMETRY_INCLUDE #define HGL_GRAPH_INLINE_GEOMETRY_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/math/Vector.h> #include<hgl/math/Vector.h>
#include<hgl/type/RectScope.h> #include<hgl/type/RectScope.h>
#include<hgl/type/Color4f.h> #include<hgl/type/Color4f.h>

View File

@ -1,7 +1,7 @@
#ifndef HGL_GRAPH_RENDER_LIST_INCLUDE #ifndef HGL_GRAPH_RENDER_LIST_INCLUDE
#define HGL_GRAPH_RENDER_LIST_INCLUDE #define HGL_GRAPH_RENDER_LIST_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/graph/Camera.h> #include<hgl/graph/Camera.h>
#include<hgl/graph/SceneNode.h> #include<hgl/graph/SceneNode.h>
#include<hgl/type/Color4f.h> #include<hgl/type/Color4f.h>

View File

@ -1,9 +1,9 @@
#ifndef HGL_GRAPH_RENDERABLE_CREATER_INCLUDE #ifndef HGL_GRAPH_RENDERABLE_CREATER_INCLUDE
#define HGL_GRAPH_RENDERABLE_CREATER_INCLUDE #define HGL_GRAPH_RENDERABLE_CREATER_INCLUDE
#include<hgl/graph/vulkan/VKDatabase.h> #include<hgl/graph/VKDatabase.h>
#include<hgl/graph/VertexAttribDataAccess.h> #include<hgl/graph/VertexAttribDataAccess.h>
#include<hgl/graph/vulkan/VKShaderModule.h> #include<hgl/graph/VKShaderModule.h>
namespace hgl namespace hgl
{ {
namespace graph namespace graph

View File

@ -3,7 +3,7 @@
#include<hgl/type/List.h> #include<hgl/type/List.h>
#include<hgl/graph/SceneOrient.h> #include<hgl/graph/SceneOrient.h>
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
namespace hgl namespace hgl
{ {
namespace graph namespace graph

View File

@ -3,7 +3,7 @@
//#include<hgl/type/List.h> //#include<hgl/type/List.h>
#include<hgl/math/Math.h> #include<hgl/math/Math.h>
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
//#include<hgl/graph/Transform.h> //#include<hgl/graph/Transform.h>
namespace hgl namespace hgl
{ {

View File

@ -5,7 +5,7 @@
#include<hgl/type/Pool.h> #include<hgl/type/Pool.h>
#include<hgl/type/RectScope.h> #include<hgl/type/RectScope.h>
#include<hgl/graph/Bitmap.h> #include<hgl/graph/Bitmap.h>
#include<hgl/graph/vulkan/VKTexture.h> #include<hgl/graph/VKTexture.h>
VK_NAMESPACE_USING VK_NAMESPACE_USING

View File

@ -4,10 +4,10 @@
#include<hgl/type/List.h> #include<hgl/type/List.h>
#include<hgl/math/Math.h> #include<hgl/math/Math.h>
#include<iostream> #include<iostream>
#include<hgl/graph/vulkan/VKNamespace.h> #include<hgl/graph/VKNamespace.h>
#include<hgl/graph/vulkan/VKFormat.h> #include<hgl/graph/VKFormat.h>
#include<hgl/graph/vulkan/VKPrimivate.h> #include<hgl/graph/VKPrimivate.h>
#include<hgl/graph/vulkan/VKStruct.h> #include<hgl/graph/VKStruct.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN

View File

@ -1,8 +1,8 @@
#ifndef HGL_GRAPH_VULKAN_BUFFER_INCLUDE #ifndef HGL_GRAPH_VULKAN_BUFFER_INCLUDE
#define HGL_GRAPH_VULKAN_BUFFER_INCLUDE #define HGL_GRAPH_VULKAN_BUFFER_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/graph/vulkan/VKMemory.h> #include<hgl/graph/VKMemory.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
struct BufferData struct BufferData
{ {

View File

@ -1,9 +1,9 @@
#ifndef HGL_GRAPH_VULKAN_COMMAND_BUFFER_INCLUDE #ifndef HGL_GRAPH_VULKAN_COMMAND_BUFFER_INCLUDE
#define HGL_GRAPH_VULKAN_COMMAND_BUFFER_INCLUDE #define HGL_GRAPH_VULKAN_COMMAND_BUFFER_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/graph/vulkan/VKPipeline.h> #include<hgl/graph/VKPipeline.h>
#include<hgl/graph/vulkan/VKDescriptorSets.h> #include<hgl/graph/VKDescriptorSets.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
//push constant 一般只有128/256字节仅能存在矩阵。 //push constant 一般只有128/256字节仅能存在矩阵。
//所以我们将每个对象的独立变换矩阵存在push constant中 //所以我们将每个对象的独立变换矩阵存在push constant中

View File

@ -1,16 +1,16 @@
#ifndef HGL_GRAPH_VULKAN_DATABASE_INCLUDE #ifndef HGL_GRAPH_VULKAN_DATABASE_INCLUDE
#define HGL_GRAPH_VULKAN_DATABASE_INCLUDE #define HGL_GRAPH_VULKAN_DATABASE_INCLUDE
#include<hgl/graph/vulkan/VKMaterial.h> #include<hgl/graph/VKMaterial.h>
#include<hgl/graph/vulkan/VKPipeline.h> #include<hgl/graph/VKPipeline.h>
#include<hgl/graph/vulkan/VKDescriptorSets.h> #include<hgl/graph/VKDescriptorSets.h>
#include<hgl/graph/vulkan/VKRenderable.h> #include<hgl/graph/VKRenderable.h>
#include<hgl/graph/vulkan/VKBuffer.h> #include<hgl/graph/VKBuffer.h>
#include<hgl/graph/vulkan/VKSampler.h> #include<hgl/graph/VKSampler.h>
#include<hgl/graph/vulkan/VKTexture.h> #include<hgl/graph/VKTexture.h>
#include<hgl/graph/vulkan/VKMaterialInstance.h> #include<hgl/graph/VKMaterialInstance.h>
#include<hgl/graph/VertexAttribData.h> #include<hgl/graph/VertexAttribData.h>
#include<hgl/graph/vulkan/VKRenderableInstance.h> #include<hgl/graph/VKRenderableInstance.h>
#include<hgl/graph/font/TextRenderable.h> #include<hgl/graph/font/TextRenderable.h>
#include<hgl/type/ResManage.h> #include<hgl/type/ResManage.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN

View File

@ -1,7 +1,7 @@
#ifndef HGL_GRAPH_VULKAN_DEBUG_OUT_INCLUDE #ifndef HGL_GRAPH_VULKAN_DEBUG_OUT_INCLUDE
#define HGL_GRAPH_VULKAN_DEBUG_OUT_INCLUDE #define HGL_GRAPH_VULKAN_DEBUG_OUT_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN

View File

@ -1,7 +1,7 @@
#ifndef HGL_GRAPH_VULKAN_DESCRIPTOR_SETS_LAYOUT_INCLUDE #ifndef HGL_GRAPH_VULKAN_DESCRIPTOR_SETS_LAYOUT_INCLUDE
#define HGL_GRAPH_VULKAN_DESCRIPTOR_SETS_LAYOUT_INCLUDE #define HGL_GRAPH_VULKAN_DESCRIPTOR_SETS_LAYOUT_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/type/Map.h> #include<hgl/type/Map.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
class Buffer; class Buffer;

View File

@ -8,12 +8,12 @@
#include<hgl/platform/Window.h> #include<hgl/platform/Window.h>
#include<hgl/graph/Bitmap.h> #include<hgl/graph/Bitmap.h>
#include<hgl/graph/font/Font.h> #include<hgl/graph/font/Font.h>
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/graph/vulkan/VKDeviceAttribute.h> #include<hgl/graph/VKDeviceAttribute.h>
#include<hgl/graph/vulkan/VKSwapchain.h> #include<hgl/graph/VKSwapchain.h>
#include<hgl/graph/vulkan/VKRenderTarget.h> #include<hgl/graph/VKRenderTarget.h>
#include<hgl/graph/VertexAttribData.h> #include<hgl/graph/VertexAttribData.h>
#include<hgl/graph/vulkan/VKShaderModuleMap.h> #include<hgl/graph/VKShaderModuleMap.h>
namespace hgl namespace hgl
{ {

View File

@ -1,6 +1,6 @@
#pragma once #pragma once
#include<hgl/graph/vulkan/VKTexture.h> #include<hgl/graph/VKTexture.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN

View File

@ -1,7 +1,7 @@
#ifndef HGL_VULKAN_GRAPH_FENCE_INCLUDE #ifndef HGL_VULKAN_GRAPH_FENCE_INCLUDE
#define HGL_VULKAN_GRAPH_FENCE_INCLUDE #define HGL_VULKAN_GRAPH_FENCE_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
class Fence class Fence
{ {

View File

@ -1,7 +1,7 @@
#ifndef HGL_GRAPH_VULKAN_FRAMEBUFFER_INCLUDE #ifndef HGL_GRAPH_VULKAN_FRAMEBUFFER_INCLUDE
#define HGL_GRAPH_VULKAN_FRAMEBUFFER_INCLUDE #define HGL_GRAPH_VULKAN_FRAMEBUFFER_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
class Framebuffer class Framebuffer
{ {

View File

@ -1,7 +1,7 @@
#ifndef HGL_GRAPH_VULKAN_IMAGE_VIEW_INCLUDE #ifndef HGL_GRAPH_VULKAN_IMAGE_VIEW_INCLUDE
#define HGL_GRAPH_VULKAN_IMAGE_VIEW_INCLUDE #define HGL_GRAPH_VULKAN_IMAGE_VIEW_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
class ImageView class ImageView
{ {

View File

@ -4,8 +4,8 @@
#include<hgl/type/String.h> #include<hgl/type/String.h>
#include<hgl/type/List.h> #include<hgl/type/List.h>
#include<hgl/platform/Window.h> #include<hgl/platform/Window.h>
#include<hgl/graph/vulkan/VKPhysicalDevice.h> #include<hgl/graph/VKPhysicalDevice.h>
#include<hgl/graph/vulkan/VKDebugOut.h> #include<hgl/graph/VKDebugOut.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
#define VK_BOOL1BIT(name) bool name:1; #define VK_BOOL1BIT(name) bool name:1;

View File

@ -1,11 +1,11 @@
#ifndef HGL_GRAPH_VULKAN_MATERIAL_INCLUDE #ifndef HGL_GRAPH_VULKAN_MATERIAL_INCLUDE
#define HGL_GRAPH_VULKAN_MATERIAL_INCLUDE #define HGL_GRAPH_VULKAN_MATERIAL_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/type/Map.h> #include<hgl/type/Map.h>
#include<hgl/type/String.h> #include<hgl/type/String.h>
#include<hgl/graph/vulkan/VKShaderModuleMap.h> #include<hgl/graph/VKShaderModuleMap.h>
#include<hgl/graph/vulkan/VKVertexAttributeBinding.h> #include<hgl/graph/VKVertexAttributeBinding.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
class DescriptorSetLayoutCreater; class DescriptorSetLayoutCreater;

View File

@ -1,7 +1,7 @@
#ifndef HGL_GRAPH_VULKAN_MATERIAL_INSTANCE_INCLUDE #ifndef HGL_GRAPH_VULKAN_MATERIAL_INSTANCE_INCLUDE
#define HGL_GRAPH_VULKAN_MATERIAL_INSTANCE_INCLUDE #define HGL_GRAPH_VULKAN_MATERIAL_INSTANCE_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/type/String.h> #include<hgl/type/String.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
class MaterialInstance class MaterialInstance

View File

@ -1,7 +1,7 @@
#ifndef HGL_GRAPH_VULKAN_MEMORY_INCLUDE #ifndef HGL_GRAPH_VULKAN_MEMORY_INCLUDE
#define HGL_GRAPH_VULKAN_MEMORY_INCLUDE #define HGL_GRAPH_VULKAN_MEMORY_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
class Memory class Memory
{ {

View File

@ -1,6 +1,6 @@
#pragma once #pragma once
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/type/String.h> #include<hgl/type/String.h>
#include<hgl/type/Sets.h> #include<hgl/type/Sets.h>

View File

@ -1,9 +1,9 @@
#ifndef HGL_GRAPH_VULKAN_PIPELINE_INCLUDE #ifndef HGL_GRAPH_VULKAN_PIPELINE_INCLUDE
#define HGL_GRAPH_VULKAN_PIPELINE_INCLUDE #define HGL_GRAPH_VULKAN_PIPELINE_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/graph/vulkan/VKPipelineData.h> #include<hgl/graph/VKPipelineData.h>
#include<hgl/graph/vulkan/VKInlinePipeline.h> #include<hgl/graph/VKInlinePipeline.h>
#include<hgl/io/DataOutputStream.h> #include<hgl/io/DataOutputStream.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
class Pipeline class Pipeline

View File

@ -1,7 +1,7 @@
#ifndef HGL_GRAPH_VULKAN_RENDER_PASS_INCLUDE #ifndef HGL_GRAPH_VULKAN_RENDER_PASS_INCLUDE
#define HGL_GRAPH_VULKAN_RENDER_PASS_INCLUDE #define HGL_GRAPH_VULKAN_RENDER_PASS_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
/** /**
* RenderPass功能封装<br> * RenderPass功能封装<br>

View File

@ -1,11 +1,11 @@
#ifndef HGL_GRAPH_VULKAN_RENDER_TARGET_INCLUDE #ifndef HGL_GRAPH_VULKAN_RENDER_TARGET_INCLUDE
#define HGL_GRAPH_VULKAN_RENDER_TARGET_INCLUDE #define HGL_GRAPH_VULKAN_RENDER_TARGET_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/graph/vulkan/VKRenderPass.h> #include<hgl/graph/VKRenderPass.h>
#include<hgl/graph/vulkan/VKFramebuffer.h> #include<hgl/graph/VKFramebuffer.h>
#include<hgl/graph/vulkan/VKSwapchain.h> #include<hgl/graph/VKSwapchain.h>
#include<hgl/graph/vulkan/VKSubmitQueue.h> #include<hgl/graph/VKSubmitQueue.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
/** /**
* *

View File

@ -1,8 +1,8 @@
#ifndef HGL_GRAPH_VULKAN_RENDERABLE_INCLUDE #ifndef HGL_GRAPH_VULKAN_RENDERABLE_INCLUDE
#define HGL_GRAPH_VULKAN_RENDERABLE_INCLUDE #define HGL_GRAPH_VULKAN_RENDERABLE_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/graph/vulkan/VKBuffer.h> #include<hgl/graph/VKBuffer.h>
#include<hgl/type/Map.h> #include<hgl/type/Map.h>
#include<hgl/type/String.h> #include<hgl/type/String.h>
#include<hgl/math/Math.h> #include<hgl/math/Math.h>

View File

@ -1,10 +1,10 @@
#ifndef HGL_GRAPH_RENDERABLE_INSTANCE_INCLUDE #ifndef HGL_GRAPH_RENDERABLE_INSTANCE_INCLUDE
#define HGL_GRAPH_RENDERABLE_INSTANCE_INCLUDE #define HGL_GRAPH_RENDERABLE_INSTANCE_INCLUDE
#include<hgl/graph/vulkan/VKRenderable.h> #include<hgl/graph/VKRenderable.h>
#include<hgl/graph/vulkan/VKPipeline.h> #include<hgl/graph/VKPipeline.h>
#include<hgl/graph/vulkan/VKDescriptorSets.h> #include<hgl/graph/VKDescriptorSets.h>
#include<hgl/graph/vulkan/VKMaterialInstance.h> #include<hgl/graph/VKMaterialInstance.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
/** /**
* *

View File

@ -1,7 +1,7 @@
#ifndef HGL_GRAPH_VULKAN_SAMPLER_INCLUDE #ifndef HGL_GRAPH_VULKAN_SAMPLER_INCLUDE
#define HGL_GRAPH_VULKAN_SAMPLER_INCLUDE #define HGL_GRAPH_VULKAN_SAMPLER_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
class Device; class Device;

View File

@ -1,7 +1,7 @@
#ifndef HGL_GRAPH_VULKAN_SEMAPHORE_INCLUDE #ifndef HGL_GRAPH_VULKAN_SEMAPHORE_INCLUDE
#define HGL_GRAPH_VULKAN_SEMAPHORE_INCLUDE #define HGL_GRAPH_VULKAN_SEMAPHORE_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
class GPUSemaphore class GPUSemaphore
{ {

View File

@ -2,8 +2,8 @@
#define HGL_GRAPH_VULKAN_SHADER_MODULE_MAP_INCLUDE #define HGL_GRAPH_VULKAN_SHADER_MODULE_MAP_INCLUDE
#include<hgl/type/Map.h> #include<hgl/type/Map.h>
#include<hgl/graph/vulkan/VKNamespace.h> #include<hgl/graph/VKNamespace.h>
#include<hgl/graph/vulkan/VKShaderModule.h> #include<hgl/graph/VKShaderModule.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN

View File

@ -1,8 +1,8 @@
#ifndef HGL_GRAPH_VULKAN_SUBMIT_QUEUE_INCLUDE #ifndef HGL_GRAPH_VULKAN_SUBMIT_QUEUE_INCLUDE
#define HGL_GRAPH_VULKAN_SUBMIT_QUEUE_INCLUDE #define HGL_GRAPH_VULKAN_SUBMIT_QUEUE_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/graph/vulkan/VKFence.h> #include<hgl/graph/VKFence.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
class SubmitQueue class SubmitQueue
{ {

View File

@ -1,6 +1,6 @@
#pragma once #pragma once
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#ifdef __ANDROID__ #ifdef __ANDROID__
#include<vulkan/vulkan_android.h> #include<vulkan/vulkan_android.h>

View File

@ -1,8 +1,8 @@
#ifndef HGL_GRAPH_VULKAN_SWAP_CHAIN_INCLUDE #ifndef HGL_GRAPH_VULKAN_SWAP_CHAIN_INCLUDE
#define HGL_GRAPH_VULKAN_SWAP_CHAIN_INCLUDE #define HGL_GRAPH_VULKAN_SWAP_CHAIN_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/graph/vulkan/VKTexture.h> #include<hgl/graph/VKTexture.h>
#include<hgl/type/List.h> #include<hgl/type/List.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
struct Swapchain struct Swapchain

View File

@ -1,9 +1,9 @@
#ifndef HGL_GRAPH_VULKAN_TEXTURE_INCLUDE #ifndef HGL_GRAPH_VULKAN_TEXTURE_INCLUDE
#define HGL_GRAPH_VULKAN_TEXTURE_INCLUDE #define HGL_GRAPH_VULKAN_TEXTURE_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/graph/vulkan/VKMemory.h> #include<hgl/graph/VKMemory.h>
#include<hgl/graph/vulkan/VKImageView.h> #include<hgl/graph/VKImageView.h>
#include<hgl/graph/Bitmap.h> #include<hgl/graph/Bitmap.h>
#include<hgl/type/String.h> #include<hgl/type/String.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN

View File

@ -1,7 +1,7 @@
#ifndef HGL_GRAPH_VULKAN_VERTEX_ATTRIBUTE_BINDING_INCLUDE #ifndef HGL_GRAPH_VULKAN_VERTEX_ATTRIBUTE_BINDING_INCLUDE
#define HGL_GRAPH_VULKAN_VERTEX_ATTRIBUTE_BINDING_INCLUDE #define HGL_GRAPH_VULKAN_VERTEX_ATTRIBUTE_BINDING_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/type/String.h> #include<hgl/type/String.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
/** /**

View File

@ -1,7 +1,7 @@
#ifndef HGL_GRAPH_VERTEX_ATTRIB_DATA_INCLUDE #ifndef HGL_GRAPH_VERTEX_ATTRIB_DATA_INCLUDE
#define HGL_GRAPH_VERTEX_ATTRIB_DATA_INCLUDE #define HGL_GRAPH_VERTEX_ATTRIB_DATA_INCLUDE
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
namespace hgl namespace hgl
{ {
namespace graph namespace graph

View File

@ -1,7 +1,7 @@
#ifndef HGL_GRAPH_TEXT_RENDERABLE_INCLUDE #ifndef HGL_GRAPH_TEXT_RENDERABLE_INCLUDE
#define HGL_GRAPH_TEXT_RENDERABLE_INCLUDE #define HGL_GRAPH_TEXT_RENDERABLE_INCLUDE
#include<hgl/graph/vulkan/VKRenderable.h> #include<hgl/graph/VKRenderable.h>
namespace hgl namespace hgl
{ {
namespace graph namespace graph

View File

@ -2,8 +2,8 @@
#include<hgl/type/String.h> #include<hgl/type/String.h>
#include<hgl/type/List.h> #include<hgl/type/List.h>
#include<hgl/type/StringList.h> #include<hgl/type/StringList.h>
#include<hgl/graph/vulkan/VKFormat.h> #include<hgl/graph/VKFormat.h>
#include<hgl/graph/vulkan/VKStruct.h> #include<hgl/graph/VKStruct.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
struct ShaderStage struct ShaderStage

View File

@ -1,7 +1,8 @@
#ifndef HGL_GUI_FORM_INCLUDE #ifndef HGL_GUI_FORM_INCLUDE
#define HGL_GUI_FORM_INCLUDE #define HGL_GUI_FORM_INCLUDE
#include<hgl/graph/vulkan/VKPipeline.h> #include<hgl/graph/VKPipeline.h>
#include<hgl/gui/Widget.h>
namespace hgl namespace hgl
{ {
namespace gui namespace gui
@ -11,18 +12,14 @@ namespace hgl
/** /**
* GUI控件的基本装置 * GUI控件的基本装置
*/ */
class Form class Form:public Widget
{ {
protected: //每个窗体独立一个FBO存在所以每个窗体会有自己的RenderTarget与pipeline protected: //每个窗体独立一个FBO存在所以每个窗体会有自己的RenderTarget与pipeline
struct
{
vulkan::Pipeline *solid;
vulkan::Pipeline *mask;
vulkan::Pipeline *alpha;
}pipeline;
public: public:
Form(ThemeEngine *te=nullptr):Widget(nullptr,te){}
virtual ~Form()=default;
};//class Form };//class Form
}//namespace gui }//namespace gui
}//namespace hgl }//namespace hgl

View File

@ -2,23 +2,37 @@
#define HGL_GUI_THEME_ENGINE_INCLUDE #define HGL_GUI_THEME_ENGINE_INCLUDE
#include<hgl/type/RectScope.h> #include<hgl/type/RectScope.h>
#include<hgl/type/Map.h>
#include<hgl/gui/ThemeForm.h>
namespace hgl namespace hgl
{ {
namespace gui namespace gui
{ {
class Widget; namespace vulkan
{
class Device;
}//namespace vulkan
class ThemeEngine class ThemeEngine
{ {
protected:
vulkan::Device *device;
MapObject<Form *,ThemeForm> form_list;
public: public:
ThemeEngine(vulkan::Device *dev){device=dev;}
virtual ~ThemeEngine()=default;
virtual bool Init()=0; virtual bool Init()=0;
virtual void Clear()=0; virtual void Clear()=0;
virtual void DrawFrame(const Widget *)=0; virtual bool Registry(Form *)=0;
//virtual void DrawButton(const Widget *)=0; virtual void Unregistry(Form *)=0;
//virtual void DrawCheckBox(const Widget *)=0; virtual void Render(Form *)=0;
//virtual void DrawRadioBox(const Widget *)=0; virtual bool Resize(Form *,const uint32_t,const uint32_t);
};//class ThemeEngine };//class ThemeEngine
// ThemeEngine *CreateThemeEngine(); // ThemeEngine *CreateThemeEngine();

View File

@ -54,18 +54,8 @@ namespace hgl
public: public:
Widget(Widget *parent=nullptr,ThemeEngine *te=nullptr) Widget(Widget *parent=nullptr,ThemeEngine *te=nullptr);
{ virtual ~Widget()=default;
parent_widget=parent;
theme_engine=te;
//默认值
visible=false; //不显示
recv_event=false; //不接收事件
align_bits=0; //不对齐
position.Clear();
}
virtual ~Widget();
virtual void Draw(){} virtual void Draw(){}
};//class Widget };//class Widget

View File

@ -2,7 +2,8 @@
SET(THEME_SOURCE ${GUI_INCLUDE_PATH}/ThemeForm.h SET(THEME_SOURCE ${GUI_INCLUDE_PATH}/ThemeForm.h
${GUI_INCLUDE_PATH}/ThemeEngine.h ${GUI_INCLUDE_PATH}/ThemeEngine.h
ThemeEngine.cpp) ThemeEngine.cpp
ThemeForm.cpp)
SET(DEFAULT_THEME_SOURCE DefaultThemeEngine.h SET(DEFAULT_THEME_SOURCE DefaultThemeEngine.h
DefaultThemeEngine.cpp DefaultThemeEngine.cpp

View File

@ -4,21 +4,40 @@ namespace hgl
{ {
namespace gui namespace gui
{ {
ThemeEngine *CreateDefaultThemeEngine() ThemeEngine *CreateDefaultThemeEngine(vulkan::Device *dev)
{ {
return(new DefaultThemeEngine); return(new default_theme::DefaultThemeEngine(dev));
} }
bool DefaultThemeEngine::Init() namespace default_theme
{ {
} bool DefaultThemeEngine::Init()
{
return(true);
}
void DefaultThemeEngine::Clear() void DefaultThemeEngine::Clear()
{ {
} }
void DefaultThemeEngine::DrawFrame(const Widget *w) bool DefaultThemeEngine::Registry(Form *f)
{ {
} if(!f)return(false);
if(form_list.KeyExist(f))return(false);
return(true);
}
void DefaultThemeEngine::Unregistry(Form *f)
{
if(!f)return;
if(!form_list.KeyExist(f))return;
}
void DefaultThemeEngine::Render(Form *f)
{
}
}//namespace default_theme
}//namespace gui }//namespace gui
}//namespace hgl }//namespace hgl

View File

@ -1,8 +1,9 @@
#pragma once #pragma once
#include<hgl/gui/ThemeEngine.h> #include<hgl/gui/ThemeEngine.h>
#include<hgl/graph/vulkan/VKMaterialInstance.h> #include<hgl/graph/VKMaterialInstance.h>
#include<hgl/type/Map.h> #include<hgl/type/Map.h>
#include"DTForm.h"
namespace hgl namespace hgl
{ {
@ -12,33 +13,33 @@ namespace hgl
class Form; ///<窗体 class Form; ///<窗体
/** namespace default_theme
* GUI主题引擎
*/
class DefaultThemeEngine:public ThemeEngine
{ {
struct IForm /**
* GUI主题引擎
*/
class DefaultThemeEngine:public ThemeEngine
{ {
Form *form; ///<窗体控件
vulkan::RenderTarget *rt; ///<渲染目标
};//
MapObject<Form *,IForm> form_list; //struct
//{
// vulkan::Material * m;
// vulkan::MaterialInstance * mi;
//}panel;
struct public:
{
vulkan::Material * m;
vulkan::MaterialInstance * mi;
}panel;
public: DefaultThemeEngine(vulkan::Device *dev):ThemeEngine(dev){}
virtual ~DefaultThemeEngine() override;
bool Init() override; bool Init() override;
void Clear() override; void Clear() override;
bool Registry(Form *); bool Registry(Form *) override;
void Unregistry(Form *); void Unregistry(Form *) override;
void Render(Form *); void Render(Form *) override;
};//class DefaultThemeEngine:public ThemeEngine bool Resize(Form *,const uint32_t,const uint32_t) override;
};//class DefaultThemeEngine:public ThemeEngine
}//namespace default_theme
}//namespace gui }//namespace gui
}//namespace hgl }//namespace hgl

View File

@ -1,5 +1,5 @@
#include<hgl/gui/Panel.h> #include<hgl/gui/Panel.h>
#include<hgl/gui/GUIRenderEngine.h> #include<hgl/gui/ThemeEngine.h>
namespace hgl namespace hgl
{ {

View File

@ -1,4 +1,5 @@
#include<hgl/gui/ThemeEngine.h> #include<hgl/gui/ThemeEngine.h>
#include<hgl/gui/ThemeForm.h>
namespace hgl namespace hgl
{ {
@ -9,19 +10,35 @@ namespace hgl
ThemeEngine *default_theme_engine=nullptr; ThemeEngine *default_theme_engine=nullptr;
}//namespace }//namespace
ThemeEngine *CreateDefaultThemeEngine(); ThemeEngine *CreateDefaultThemeEngine(vulkan::Device *dev);
ThemeEngine *GetDefaultThemeEngine() ThemeEngine *GetDefaultThemeEngine(vulkan::Device *dev)
{ {
if(!default_theme_engine) if(!default_theme_engine)
default_theme_engine=CreateDefaultThemeEngine(); default_theme_engine=CreateDefaultThemeEngine(dev);
return default_theme_engine; return default_theme_engine;
} }
ThemeEngine *CreateThemeEngine() ThemeEngine *CreateThemeEngine(vulkan::Device *dev)
{ {
return GetDefaultThemeEngine(); return GetDefaultThemeEngine();
} }
bool ThemeEngine::Resize(Form *f,const uint32_t w,const uint32_t h)
{
if(!f)return(false);
ThemeForm *tf;
if(!form_list.Get(f,tf))return(false);
if(w<=0||h<=0)
{
tf->SetRenderTarget(nullptr);
return(true);
}
}
}//namespace gui }//namespace gui
}//namespace hgl }//namespace hgl

View File

@ -5,7 +5,7 @@ namespace hgl
{ {
namespace gui namespace gui
{ {
Widget::Widget(Widget *parent=nullptr,ThemeEngine *te=nullptr) Widget::Widget(Widget *parent,ThemeEngine *te)
{ {
parent_widget=parent; parent_widget=parent;

View File

@ -1 +1,123 @@
add_subdirectory(Vulkan) set(VK_INCLUDE_PATH ${ROOT_INCLUDE_PATH}/hgl/graph)
SET(VK_DB_SOURCE ${VK_INCLUDE_PATH}/VKDatabase.h
VKDatabase.cpp
VKDatabaseMaterial.cpp)
SOURCE_GROUP("Database" FILES ${VK_DB_SOURCE})
SET(VK_INST_SOURCE ${VK_INCLUDE_PATH}/VKInstance.h
VKInstance.cpp)
SET(VK_DEBUG_SOURCE ${VK_INCLUDE_PATH}/VKDebugOut.h
VKDebugOut.cpp)
SET(VK_MEMORY_SOURCE ${VK_INCLUDE_PATH}/VKMemory.h
${VK_INCLUDE_PATH}/VKBuffer.h
VKMemory.cpp
VKBuffer.cpp)
SET(VK_DEVICE_SOURCE ${VK_INCLUDE_PATH}/VKDevice.h
${VK_INCLUDE_PATH}/VKDeviceAttribute.h
VKDeviceAttribute.cpp
VKDeviceCreater.cpp
VKDevice.cpp
VKDeviceBuffer.cpp
VKDeviceImage.cpp
VKDeviceTexture.cpp
VKDeviceFramebuffer.cpp
VKDeviceSwapchain.cpp
VKDeviceRenderPass.cpp
VKDeviceRenderTarget.cpp)
SET(VK_PHYSICAL_DEVICE_SOURCE ${VK_INCLUDE_PATH}/VKPhysicalDevice.h
VKPhysicalDevice.cpp
VKProperties.cpp)
SOURCE_GROUP("Device" FILES ${VK_DEVICE_SOURCE})
SOURCE_GROUP("Device\\Debug" FILES ${VK_DEBUG_SOURCE})
SOURCE_GROUP("Device\\Instance" FILES ${VK_INST_SOURCE})
SOURCE_GROUP("Device\\Physical Device" FILES ${VK_PHYSICAL_DEVICE_SOURCE})
SOURCE_GROUP("Device\\Memory" FILES ${VK_MEMORY_SOURCE})
SET(VK_DESCRIPTOR_SETS_SOURCE ${VK_INCLUDE_PATH}/VKDescriptorSets.h
VKDescriptorSets.cpp
VKDescriptorSetLayoutCreater.cpp
VKDescriptorSetLayoutCreater.h)
SOURCE_GROUP("Descriptor Sets" FILES ${VK_DESCRIPTOR_SETS_SOURCE})
SET(VK_SHADER_SOURCE ${VK_INCLUDE_PATH}/VKShaderModule.h
${VK_INCLUDE_PATH}/VKShaderModuleMap.h
VKShaderModuleMap.cpp
VKShaderModule.cpp)
SET(VK_TEXTURE_SOURCE ${VK_INCLUDE_PATH}/VKImageView.h
${VK_INCLUDE_PATH}/VKTexture.h
${VK_INCLUDE_PATH}/VKSampler.h
VKSampler.cpp
VKImageView.cpp
VKTexture.cpp
VKTextureLoader.cpp)
SET(VK_MATERIAL_SOURCE ${VK_INCLUDE_PATH}/VKMaterial.h
${VK_INCLUDE_PATH}/VKMaterialInstance.h
VKMaterial.cpp
VKMaterialInstance.cpp)
SOURCE_GROUP("Material" FILES ${VK_MATERIAL_SOURCE})
SOURCE_GROUP("Material\\Texture" FILES ${VK_TEXTURE_SOURCE})
SOURCE_GROUP("Material\\Shader" FILES ${VK_SHADER_SOURCE})
SET(VK_RENDER_PASS_SOURCE ${VK_INCLUDE_PATH}/VKFramebuffer.h
${VK_INCLUDE_PATH}/VKPipeline.h
${VK_INCLUDE_PATH}/VKRenderPass.h
${VK_INCLUDE_PATH}/VKRenderTarget.h
${VK_INCLUDE_PATH}/VKSwapchain.h
${VK_INCLUDE_PATH}/VKCommandBuffer.h
${VK_INCLUDE_PATH}/VKSemaphore.h
${VK_INCLUDE_PATH}/VKFence.h
VKSubmitQueue.cpp
VKSemaphore.cpp
VKFence.cpp
VKFramebuffer.cpp
VKPipeline.cpp
VKRenderPass.cpp
VKRenderTarget.cpp
VKSwapchain.cpp
VKCommandBuffer.cpp)
SOURCE_GROUP("Render Pass" FILES ${VK_RENDER_PASS_SOURCE})
SET(VK_RENDERABLE_SOURCE ${VK_INCLUDE_PATH}/VKVertexAttributeBinding.h
${VK_INCLUDE_PATH}/VKRenderable.h
${VK_INCLUDE_PATH}/VKRenderableInstance.h
VKVertexAttributeBinding.cpp
VKRenderable.cpp
VKRenderableInstance.cpp
VKTileData.cpp
VKTileFont.cpp)
SOURCE_GROUP("Renderable" FILES ${VK_RENDERABLE_SOURCE})
IF(WIN32)
OPTION(FORCE_DISCETE_GPU "Force Discrete GPU" OFF)
IF(FORCE_DISCETE_GPU)
SET(RENDER_DEVICE_SOURCE ForceDiscreteGPU.c)
ENDIF()
ENDIF(WIN32)
add_cm_library(ULRE.VulkanRender "ULRE" ${VK_DB_SOURCE}
${VK_INST_SOURCE}
${VK_DEBUG_SOURCE}
${VK_MEMORY_SOURCE}
${VK_DEVICE_SOURCE}
${VK_PHYSICAL_DEVICE_SOURCE}
${VK_DESCRIPTOR_SETS_SOURCE}
${VK_SHADER_SOURCE}
${VK_TEXTURE_SOURCE}
${VK_MATERIAL_SOURCE}
${VK_RENDER_PASS_SOURCE}
${VK_RENDERABLE_SOURCE}
${VK_RENDER_DEVICE_SOURCE})

View File

@ -1,4 +1,4 @@
#include<hgl/graph/vulkan/VKBuffer.h> #include<hgl/graph/VKBuffer.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
Buffer::~Buffer() Buffer::~Buffer()

View File

@ -1,13 +1,13 @@
#include<hgl/graph/vulkan/VKCommandBuffer.h> #include<hgl/graph/VKCommandBuffer.h>
#include<hgl/graph/vulkan/VKRenderPass.h> #include<hgl/graph/VKRenderPass.h>
#include<hgl/graph/vulkan/VKFramebuffer.h> #include<hgl/graph/VKFramebuffer.h>
#include<hgl/graph/vulkan/VKRenderTarget.h> #include<hgl/graph/VKRenderTarget.h>
#include<hgl/graph/vulkan/VKPipeline.h> #include<hgl/graph/VKPipeline.h>
#include<hgl/graph/vulkan/VKBuffer.h> #include<hgl/graph/VKBuffer.h>
#include<hgl/graph/vulkan/VKMaterial.h> #include<hgl/graph/VKMaterial.h>
#include<hgl/graph/vulkan/VKRenderable.h> #include<hgl/graph/VKRenderable.h>
#include<hgl/graph/vulkan/VKRenderableInstance.h> #include<hgl/graph/VKRenderableInstance.h>
#include<hgl/graph/vulkan/VKDescriptorSets.h> #include<hgl/graph/VKDescriptorSets.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
CommandBuffer::CommandBuffer(VkDevice dev,const VkExtent2D &extent,const uint32_t atta_count,VkCommandPool cp,VkCommandBuffer cb) CommandBuffer::CommandBuffer(VkDevice dev,const VkExtent2D &extent,const uint32_t atta_count,VkCommandPool cp,VkCommandBuffer cb)

View File

@ -1,7 +1,7 @@
#include<hgl/graph/vulkan/VKDatabase.h> #include<hgl/graph/VKDatabase.h>
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/graph/vulkan/VKRenderableInstance.h> #include<hgl/graph/VKRenderableInstance.h>
#include<hgl/graph/vulkan/VKInlinePipeline.h> #include<hgl/graph/VKInlinePipeline.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
VAB *Database::CreateVAB(VkFormat format,uint32_t count,const void *data,SharingMode sharing_mode) VAB *Database::CreateVAB(VkFormat format,uint32_t count,const void *data,SharingMode sharing_mode)

View File

@ -1,10 +1,10 @@
#include<hgl/graph/vulkan/VKShaderModule.h> #include<hgl/graph/VKShaderModule.h>
#include<hgl/graph/vulkan/VKMaterial.h> #include<hgl/graph/VKMaterial.h>
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/graph/vulkan/VKShaderModuleMap.h> #include<hgl/graph/VKShaderModuleMap.h>
#include<hgl/graph/shader/ShaderResource.h> #include<hgl/graph/shader/ShaderResource.h>
#include<hgl/filesystem/FileSystem.h> #include<hgl/filesystem/FileSystem.h>
#include<hgl/graph/vulkan/VKDatabase.h> #include<hgl/graph/VKDatabase.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN

View File

@ -1,4 +1,4 @@
#include<hgl/graph/vulkan/VKDebugOut.h> #include<hgl/graph/VKDebugOut.h>
#include<iostream> #include<iostream>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN

View File

@ -1,6 +1,6 @@
#include"VKDescriptorSetLayoutCreater.h" #include"VKDescriptorSetLayoutCreater.h"
#include<hgl/graph/vulkan/VKDescriptorSets.h> #include<hgl/graph/VKDescriptorSets.h>
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
DescriptorSetLayoutCreater *Device::CreateDescriptorSetLayoutCreater() DescriptorSetLayoutCreater *Device::CreateDescriptorSetLayoutCreater()

View File

@ -1,8 +1,8 @@
#include<hgl/graph/vulkan/VKDescriptorSets.h> #include<hgl/graph/VKDescriptorSets.h>
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/graph/vulkan/VKBuffer.h> #include<hgl/graph/VKBuffer.h>
#include<hgl/graph/vulkan/VKTexture.h> #include<hgl/graph/VKTexture.h>
#include<hgl/graph/vulkan/VKSampler.h> #include<hgl/graph/VKSampler.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
void DescriptorSets::Clear() void DescriptorSets::Clear()

View File

@ -1,14 +1,14 @@
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/type/Pair.h> #include<hgl/type/Pair.h>
#include<hgl/graph/vulkan/VKSemaphore.h> #include<hgl/graph/VKSemaphore.h>
#include<hgl/graph/vulkan/VKTexture.h> #include<hgl/graph/VKTexture.h>
#include<hgl/graph/vulkan/VKImageView.h> #include<hgl/graph/VKImageView.h>
#include<hgl/graph/vulkan/VKPipeline.h> #include<hgl/graph/VKPipeline.h>
#include<hgl/graph/vulkan/VKCommandBuffer.h> #include<hgl/graph/VKCommandBuffer.h>
//#include<hgl/graph/vulkan/VKDescriptorSet.h> //#include<hgl/graph/VKDescriptorSet.h>
#include<hgl/graph/vulkan/VKRenderPass.h> #include<hgl/graph/VKRenderPass.h>
#include<hgl/graph/vulkan/VKFramebuffer.h> #include<hgl/graph/VKFramebuffer.h>
#include<hgl/graph/vulkan/VKDescriptorSets.h> #include<hgl/graph/VKDescriptorSets.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
Device::Device(DeviceAttribute *da) Device::Device(DeviceAttribute *da)

View File

@ -1,7 +1,7 @@
#include<hgl/graph/vulkan/VKDeviceAttribute.h> #include<hgl/graph/VKDeviceAttribute.h>
#include<hgl/graph/vulkan/VKPhysicalDevice.h> #include<hgl/graph/VKPhysicalDevice.h>
#include<hgl/graph/vulkan/VKImageView.h> #include<hgl/graph/VKImageView.h>
#include<hgl/graph/vulkan/VKTexture.h> #include<hgl/graph/VKTexture.h>
#include<iostream> #include<iostream>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN

View File

@ -1,5 +1,5 @@
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/graph/vulkan/VKBuffer.h> #include<hgl/graph/VKBuffer.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
bool Device::CreateBuffer(BufferData *buf,VkBufferUsageFlags buf_usage,VkDeviceSize size,const void *data,SharingMode sharing_mode) bool Device::CreateBuffer(BufferData *buf,VkBufferUsageFlags buf_usage,VkDeviceSize size,const void *data,SharingMode sharing_mode)

View File

@ -1,11 +1,11 @@
#include<hgl/platform/Vulkan.h> #include<hgl/platform/Vulkan.h>
#include<hgl/platform/Window.h> #include<hgl/platform/Window.h>
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/graph/vulkan/VKInstance.h> #include<hgl/graph/VKInstance.h>
#include<hgl/graph/vulkan/VKPhysicalDevice.h> #include<hgl/graph/VKPhysicalDevice.h>
#include<hgl/graph/vulkan/VKFramebuffer.h> #include<hgl/graph/VKFramebuffer.h>
#include<hgl/graph/vulkan/VKTexture.h> #include<hgl/graph/VKTexture.h>
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<iostream> #include<iostream>
#include<iomanip> #include<iomanip>

View File

@ -1,4 +1,4 @@
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
VkFramebuffer CreateVulkanFramebuffer(VkDevice device,RenderPass *rp,const VkExtent2D &extent,VkImageView *attachments,const uint attachmentCount) VkFramebuffer CreateVulkanFramebuffer(VkDevice device,RenderPass *rp,const VkExtent2D &extent,VkImageView *attachments,const uint attachmentCount)

View File

@ -1,5 +1,5 @@
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/graph/vulkan/VKImageCreateInfo.h> #include<hgl/graph/VKImageCreateInfo.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
VkImage Device::CreateImage(VkImageCreateInfo *ici) VkImage Device::CreateImage(VkImageCreateInfo *ici)

View File

@ -1,6 +1,6 @@
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/graph/vulkan/VKPhysicalDevice.h> #include<hgl/graph/VKPhysicalDevice.h>
#include<hgl/graph/vulkan/VKRenderPass.h> #include<hgl/graph/VKRenderPass.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
//void CreateSubpassDependency(VkSubpassDependency *dependency) //void CreateSubpassDependency(VkSubpassDependency *dependency)

View File

@ -1,4 +1,4 @@
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
RenderTarget *Device::CreateRenderTarget(Framebuffer *fb,const uint32_t fence_count) RenderTarget *Device::CreateRenderTarget(Framebuffer *fb,const uint32_t fence_count)

View File

@ -1,6 +1,6 @@
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/graph/vulkan/VKDeviceAttribute.h> #include<hgl/graph/VKDeviceAttribute.h>
#include<hgl/graph/vulkan/VKPhysicalDevice.h> #include<hgl/graph/VKPhysicalDevice.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
namespace namespace

View File

@ -1,12 +1,12 @@
#include<hgl/graph/vulkan/VKTexture.h> #include<hgl/graph/VKTexture.h>
#include<hgl/graph/vulkan/VKSampler.h> #include<hgl/graph/VKSampler.h>
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/graph/vulkan/VKPhysicalDevice.h> #include<hgl/graph/VKPhysicalDevice.h>
#include<hgl/graph/vulkan/VKFence.h> #include<hgl/graph/VKFence.h>
#include<hgl/graph/vulkan/VKBuffer.h> #include<hgl/graph/VKBuffer.h>
#include<hgl/graph/vulkan/VKCommandBuffer.h> #include<hgl/graph/VKCommandBuffer.h>
#include<hgl/graph/vulkan/VKMemory.h> #include<hgl/graph/VKMemory.h>
#include<hgl/graph/vulkan/VKImageCreateInfo.h> #include<hgl/graph/VKImageCreateInfo.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
namespace namespace
{ {

View File

@ -1,4 +1,4 @@
#include<hgl/graph/vulkan/VKFence.h> #include<hgl/graph/VKFence.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
Fence::~Fence() Fence::~Fence()
{ {

View File

@ -1,8 +1,8 @@
#include<hgl/graph/vulkan/VKFramebuffer.h> #include<hgl/graph/VKFramebuffer.h>
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/graph/vulkan/VKImageView.h> #include<hgl/graph/VKImageView.h>
#include<hgl/graph/vulkan/VKRenderPass.h> #include<hgl/graph/VKRenderPass.h>
#include<hgl/graph/vulkan/VKTexture.h> #include<hgl/graph/VKTexture.h>
#include<hgl/type/Smart.h> #include<hgl/type/Smart.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN

View File

@ -1,4 +1,4 @@
#include<hgl/graph/vulkan/VKImageView.h> #include<hgl/graph/VKImageView.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
ImageView::~ImageView() ImageView::~ImageView()

View File

@ -1,7 +1,7 @@
#include<hgl/graph/vulkan/VKInstance.h> #include<hgl/graph/VKInstance.h>
#include<hgl/graph/vulkan/VKSurfaceExtensionName.h> #include<hgl/graph/VKSurfaceExtensionName.h>
#include<hgl/graph/vulkan/VKPhysicalDevice.h> #include<hgl/graph/VKPhysicalDevice.h>
#include<hgl/graph/vulkan/VKDebugOut.h> #include<hgl/graph/VKDebugOut.h>
#include<iostream> #include<iostream>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN

View File

@ -1,10 +1,10 @@
#include<hgl/graph/vulkan/VKMaterial.h> #include<hgl/graph/VKMaterial.h>
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/graph/vulkan/VKDescriptorSets.h> #include<hgl/graph/VKDescriptorSets.h>
#include<hgl/graph/vulkan/VKShaderModule.h> #include<hgl/graph/VKShaderModule.h>
#include<hgl/graph/vulkan/VKShaderModuleMap.h> #include<hgl/graph/VKShaderModuleMap.h>
#include<hgl/graph/vulkan/VKVertexAttributeBinding.h> #include<hgl/graph/VKVertexAttributeBinding.h>
#include<hgl/graph/vulkan/VKBuffer.h> #include<hgl/graph/VKBuffer.h>
#include"VKDescriptorSetLayoutCreater.h" #include"VKDescriptorSetLayoutCreater.h"
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
Material *Device::CreateMaterial(ShaderModuleMap *shader_maps) Material *Device::CreateMaterial(ShaderModuleMap *shader_maps)

View File

@ -1,7 +1,7 @@
#include<hgl/graph/vulkan/VKMaterialInstance.h> #include<hgl/graph/VKMaterialInstance.h>
#include<hgl/graph/vulkan/VKMaterial.h> #include<hgl/graph/VKMaterial.h>
#include<hgl/graph/vulkan/VKDescriptorSets.h> #include<hgl/graph/VKDescriptorSets.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
MaterialInstance::MaterialInstance(Material *m,DescriptorSets *ds) MaterialInstance::MaterialInstance(Material *m,DescriptorSets *ds)

View File

@ -1,6 +1,6 @@
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/graph/vulkan/VKMemory.h> #include<hgl/graph/VKMemory.h>
#include<hgl/graph/vulkan/VKPhysicalDevice.h> #include<hgl/graph/VKPhysicalDevice.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
Memory *Device::CreateMemory(const VkMemoryRequirements &req,uint32_t properties) Memory *Device::CreateMemory(const VkMemoryRequirements &req,uint32_t properties)
{ {

View File

@ -1,4 +1,4 @@
#include<hgl/graph/vulkan/VKPhysicalDevice.h> #include<hgl/graph/VKPhysicalDevice.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
PhysicalDevice::PhysicalDevice(VkInstance inst,VkPhysicalDevice pd) PhysicalDevice::PhysicalDevice(VkInstance inst,VkPhysicalDevice pd)

View File

@ -1,9 +1,9 @@
#include<hgl/graph/vulkan/VKPipeline.h> #include<hgl/graph/VKPipeline.h>
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/graph/vulkan/VKMaterial.h> #include<hgl/graph/VKMaterial.h>
#include<hgl/graph/vulkan/VKRenderPass.h> #include<hgl/graph/VKRenderPass.h>
#include<hgl/graph/vulkan/VKRenderTarget.h> #include<hgl/graph/VKRenderTarget.h>
#include<hgl/graph/vulkan/VKFramebuffer.h> #include<hgl/graph/VKFramebuffer.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
Pipeline::~Pipeline() Pipeline::~Pipeline()

View File

@ -1,5 +1,5 @@
#include<hgl/graph/vulkan/VK.h> #include<hgl/graph/VK.h>
#include<hgl/graph/vulkan/VKInstance.h> #include<hgl/graph/VKInstance.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN

View File

@ -1,5 +1,5 @@
#include<hgl/graph/vulkan/VKRenderPass.h> #include<hgl/graph/VKRenderPass.h>
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
RenderPass::~RenderPass() RenderPass::~RenderPass()
{ {

View File

@ -1,8 +1,8 @@
#include<hgl/graph/vulkan/VKRenderTarget.h> #include<hgl/graph/VKRenderTarget.h>
#include<hgl/graph/vulkan/VKDevice.h> #include<hgl/graph/VKDevice.h>
#include<hgl/graph/vulkan/VKSwapchain.h> #include<hgl/graph/VKSwapchain.h>
#include<hgl/graph/vulkan/VKCommandBuffer.h> #include<hgl/graph/VKCommandBuffer.h>
#include<hgl/graph/vulkan/VKSemaphore.h> #include<hgl/graph/VKSemaphore.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
RenderTarget::RenderTarget(Device *dev,Framebuffer *_fb,CommandBuffer *_cb,const uint32_t fence_count):SubmitQueue(dev,dev->GetGraphicsQueue(),fence_count) RenderTarget::RenderTarget(Device *dev,Framebuffer *_fb,CommandBuffer *_cb,const uint32_t fence_count):SubmitQueue(dev,dev->GetGraphicsQueue(),fence_count)

View File

@ -1,6 +1,6 @@
#include<hgl/graph/vulkan/VKRenderable.h> #include<hgl/graph/VKRenderable.h>
#include<hgl/graph/vulkan/VKBuffer.h> #include<hgl/graph/VKBuffer.h>
#include<hgl/graph/vulkan/VKShaderModule.h> #include<hgl/graph/VKShaderModule.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
//bool Renderable::Set(const int stage_input_binding,VAB *vab,VkDeviceSize offset) //bool Renderable::Set(const int stage_input_binding,VAB *vab,VkDeviceSize offset)

View File

@ -1,6 +1,6 @@
#include<hgl/graph/vulkan/VKRenderableInstance.h> #include<hgl/graph/VKRenderableInstance.h>
#include<hgl/graph/vulkan/VKMaterialInstance.h> #include<hgl/graph/VKMaterialInstance.h>
#include<hgl/graph/vulkan/VKMaterial.h> #include<hgl/graph/VKMaterial.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
RenderableInstance::RenderableInstance(Renderable *r,MaterialInstance *mi,Pipeline *p,const uint32_t count,VkBuffer *bl,VkDeviceSize *bs) RenderableInstance::RenderableInstance(Renderable *r,MaterialInstance *mi,Pipeline *p,const uint32_t count,VkBuffer *bl,VkDeviceSize *bs)

View File

@ -1,4 +1,4 @@
#include<hgl/graph/vulkan/VKSampler.h> #include<hgl/graph/VKSampler.h>
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
Sampler::~Sampler() Sampler::~Sampler()
{ {

Some files were not shown because too many files have changed in this diff Show More