ULRE/src/SceneGraph/CMakeLists.txt

392 lines
17 KiB
CMake
Raw Normal View History

set(SG_INCLUDE_PATH ${ROOT_INCLUDE_PATH}/hgl/graph)
SET(SG_TEXTURE_SOURCE ${SG_INCLUDE_PATH}/TextureLoader.h
2021-12-13 21:03:41 +08:00
${SG_INCLUDE_PATH}/Bitmap2DLoader.h
TextureLoader.cpp
Bitmap2DLoader.cpp)
2020-07-28 16:37:01 +08:00
2021-09-13 20:39:25 +08:00
SOURCE_GROUP("Texture" FILES ${SG_TEXTURE_SOURCE})
2020-06-06 19:45:38 +08:00
SET(SG_VDM_SOURCE ${SG_INCLUDE_PATH}/VertexAttribDataAccess.h
2024-04-17 01:20:52 +08:00
${SG_INCLUDE_PATH}/VertexDataManager.h
VertexDataManager.cpp)
2024-04-02 21:14:34 +08:00
SOURCE_GROUP("VertexDataManager" FILES ${SG_VDM_SOURCE})
SET(SG_PRIMITIVE_SOURCE ${SG_INCLUDE_PATH}/VKPrimitive.h
2024-04-26 01:17:47 +08:00
Vulkan/VKPrimitive.cpp
Vulkan/VKPrimitiveData.cpp
Vulkan/VKPrimitiveData.h
2024-04-26 01:17:47 +08:00
${SG_INCLUDE_PATH}/PrimitiveCreater.h
PrimitiveCreater.cpp)
SOURCE_GROUP("Primitive" FILES ${SG_PRIMITIVE_SOURCE})
SET(TILE_SOURCE ${SG_INCLUDE_PATH}/TileData.h
2020-07-31 18:01:28 +08:00
TileData.cpp)
SOURCE_GROUP("Tile" FILES ${TILE_SOURCE})
2020-01-09 16:53:30 +08:00
2023-03-23 21:43:10 +08:00
SET(GEOMETRY_FILES ${SG_INCLUDE_PATH}/InlineGeometry.h
#${SG_INCLUDE_PATH}/Mesh.h
#${SG_INCLUDE_PATH}/Spline.h
InlineGeometry.cpp
2024-04-26 01:17:47 +08:00
#Mesh.cpp
2023-03-23 21:43:10 +08:00
)
SOURCE_GROUP("Geometry" FILES ${GEOMETRY_FILES})
2024-10-13 00:15:45 +08:00
SET(LIGHT_FILES ${SG_INCLUDE_PATH}/Light.h
${SG_INCLUDE_PATH}/LightCullMode.h
2024-10-13 00:15:45 +08:00
${SG_INCLUDE_PATH}/ShadowPolicy.h)
2023-03-23 21:43:10 +08:00
source_group("Light" FILES ${LIGHT_FILES})
2024-09-06 01:04:28 +08:00
SET(SCENE_GRAPH_HEADER ${SG_INCLUDE_PATH}/SceneManager.h
2024-10-10 01:58:47 +08:00
${SG_INCLUDE_PATH}/SceneNodeAttributes.h
${SG_INCLUDE_PATH}/SceneNode.h
2024-10-10 01:58:47 +08:00
${SG_INCLUDE_PATH}/ShadowPolicy.h
2023-05-07 01:07:26 +08:00
${SG_INCLUDE_PATH}/RenderNode.h
2024-08-31 00:10:57 +08:00
${SG_INCLUDE_PATH}/SceneMatrix.h
${SG_INCLUDE_PATH}/SceneOrient.h
2023-05-07 01:07:26 +08:00
${SG_INCLUDE_PATH}/RenderList.h
${SG_INCLUDE_PATH}/MaterialRenderList.h
${SG_INCLUDE_PATH}/MaterialRenderMap.h
2019-06-03 22:32:18 +08:00
)
2019-05-21 21:28:33 +08:00
SET(SCENE_GRAPH_SOURCE RenderList.cpp
MaterialRenderList.cpp
RenderAssignBuffer.h
RenderAssignBuffer.cpp
2020-01-09 16:53:30 +08:00
SceneNode.cpp
2024-08-31 00:10:57 +08:00
SceneOrient.cpp
SceneMatrix.cpp
)
2023-03-23 21:43:10 +08:00
SOURCE_GROUP("Scene Graph" FILES ${SCENE_GRAPH_HEADER} ${SCENE_GRAPH_SOURCE})
2024-10-19 13:08:05 +08:00
SET(STATIC_MESH_HEADER_FILES ${SG_INCLUDE_PATH}/mesh/StaticMesh.h
${SG_INCLUDE_PATH}/mesh/StaticMeshLODPolicy.h
${SG_INCLUDE_PATH}/mesh/StaticMeshNode.h
)
SET(STATIC_MESH_SOURCE_FILES mesh/StaticMesh.cpp)
SOURCE_GROUP("Scene Graph\\Mesh\\Static Mesh" FILES ${STATIC_MESH_HEADER_FILES} ${STATIC_MESH_SOURCE_FILES})
2024-07-29 13:19:24 +08:00
SET(FONT_MANAGE_SOURCE ${SG_INCLUDE_PATH}/font/Font.h
${SG_INCLUDE_PATH}/font/FontManage.h
2020-07-28 16:37:01 +08:00
font/Font.cpp)
2020-07-04 14:44:07 +08:00
SET(FONT_SOURCE ${SG_INCLUDE_PATH}/font/FontSource.h
2020-07-04 14:44:07 +08:00
font/FontSource.cpp
font/FontSourceSingle.cpp
font/FontSourceMulti.cpp
2020-07-21 17:09:24 +08:00
font/FontSourceManage.cpp)
2020-06-28 22:16:07 +08:00
SET(TILE_FONT_SOURCE ${SG_INCLUDE_PATH}/font/TileFont.h
2020-07-21 17:09:24 +08:00
font/TileFont.cpp)
SET(FONT_LAYOUT_SOURCE ${SG_INCLUDE_PATH}/font/TextLayout.h
2020-07-22 20:50:13 +08:00
font/TextLayout.cpp)
2020-07-21 17:09:24 +08:00
2022-06-24 17:51:05 +08:00
SET(TEXT_RENDERABLE_SOURCE ${SG_INCLUDE_PATH}/font/TextPrimitive.h
2022-02-16 23:26:50 +08:00
${SG_INCLUDE_PATH}/font/TextRender.h
font/TextRender.cpp
2022-06-24 17:51:05 +08:00
font/TextPrimitive.cpp)
2020-07-21 17:09:24 +08:00
SOURCE_GROUP("Font" FILES ${FONT_MANAGE_SOURCE})
SOURCE_GROUP("Font\\Source" FILES ${FONT_SOURCE})
SOURCE_GROUP("Font\\TileFont" FILES ${TILE_FONT_SOURCE})
2022-02-16 23:26:50 +08:00
SOURCE_GROUP("Font\\Layout" FILES ${FONT_LAYOUT_SOURCE})
SOURCE_GROUP("Font\\Render" FILES ${TEXT_RENDERABLE_SOURCE})
2020-06-28 22:16:07 +08:00
2020-07-04 14:44:07 +08:00
IF(WIN32)
SET(FONT_SOURCE_OS font/FontSourceWin.cpp
font/FontSourceWin.h)
2020-07-21 17:09:24 +08:00
SOURCE_GROUP("Font\\Source\\Windows" FILES ${FONT_SOURCE_OS})
2020-07-04 14:44:07 +08:00
ENDIF(WIN32)
SET(VK_RR_SOURCE ${SG_INCLUDE_PATH}/VKRenderResource.h
Vulkan/VKRenderResource.cpp
Vulkan/VKRenderResourceMaterial.cpp)
SOURCE_GROUP("Vulkan\\RenderResource" FILES ${VK_RR_SOURCE})
SET(VK_RR_MATERIAL_FILES ${SG_INCLUDE_PATH}/VKMaterialDescriptorManager.h
Vulkan/VKMaterialDescriptorManager.cpp)
2021-09-13 20:39:25 +08:00
SOURCE_GROUP("Vulkan\\RenderResource\\Material" FILES ${VK_RR_MATERIAL_FILES})
SET(VK_INST_SOURCE ${SG_INCLUDE_PATH}/VKInstance.h
Vulkan/VKInstance.cpp)
SET(VK_DEBUG_SOURCE ${SG_INCLUDE_PATH}/VKDebugOut.h
2022-09-26 12:14:52 +08:00
${SG_INCLUDE_PATH}/VKDebugUtils.h
Vulkan/Debug/VKDebugOut.cpp
Vulkan/Debug/VKDebugUtils.cpp)
SET(VK_MEMORY_SOURCE ${SG_INCLUDE_PATH}/VKMemory.h
${SG_INCLUDE_PATH}/VKMemoryAllocator.h
${SG_INCLUDE_PATH}/VKBuffer.h
2021-02-10 18:53:07 +08:00
${SG_INCLUDE_PATH}/VKIndexBuffer.h
2021-05-08 19:02:08 +08:00
${SG_INCLUDE_PATH}/VKArrayBuffer.h
2024-06-01 12:08:49 +08:00
${SG_INCLUDE_PATH}/VKBufferMap.h
Vulkan/VKMemory.cpp
Vulkan/VKMemoryAllocator.cpp
2021-02-10 18:53:07 +08:00
Vulkan/VKBuffer.cpp
2023-03-24 22:14:43 +08:00
Vulkan/VKArrayBuffer.cpp
2021-05-08 18:14:44 +08:00
)
SET(VK_DEVICE_TEXTURE_SOURCE Vulkan/Texture/BufferImageCopy2D.h
2022-01-07 19:39:39 +08:00
Vulkan/Texture/GenMipmaps.cpp
Vulkan/Texture/VKDeviceTexture.cpp
Vulkan/Texture/VKDeviceTexture2D.cpp
Vulkan/Texture/VKDeviceTexture2DArray.cpp
Vulkan/Texture/VKDeviceTextureCube.cpp)
SET(VK_TEXTURE_LOADER_SOURCE ${SG_INCLUDE_PATH}/VKTextureCreateInfo.h
Vulkan/Texture/VKTextureLoader.h
Vulkan/Texture/VKTexture2DLoader.cpp
Vulkan/Texture/VKTexture2DArrayLoader.cpp
Vulkan/Texture/VKTextureCubeLoader.cpp)
2023-05-11 21:14:35 +08:00
2023-06-14 19:58:56 +08:00
SET(VK_DEVICE_CREATER_SOURCE ${SG_INCLUDE_PATH}/VKDevice.h
2023-05-11 21:14:35 +08:00
${SG_INCLUDE_PATH}/VKDeviceAttribute.h
${SG_INCLUDE_PATH}/VKDeviceCreater.h
Vulkan/VKDeviceAttribute.cpp
Vulkan/VKDeviceCreater.cpp
Vulkan/VKDevice.cpp)
2023-05-11 21:14:35 +08:00
SET(VK_DEVICE_SOURCE Vulkan/VKDeviceMemory.cpp
Vulkan/VKDeviceBuffer.cpp
Vulkan/VKDeviceImage.cpp
Vulkan/VKDeviceSampler.cpp
Vulkan/VKDeviceMaterial.cpp
Vulkan/VKDeviceFramebuffer.cpp
Vulkan/VKDeviceSwapchain.cpp
Vulkan/VKDeviceRenderPass.cpp
Vulkan/VKDeviceRenderPassManage.cpp
Vulkan/VKDeviceRenderTarget.cpp)
SET(VK_PHYSICAL_DEVICE_SOURCE ${SG_INCLUDE_PATH}/VKPhysicalDevice.h
Vulkan/VKPhysicalDevice.cpp
Vulkan/VKProperties.cpp
Vulkan/DebugOutProperties.h
Vulkan/Debug/VKPhysicalDeviceCapsOutput.cpp)
SOURCE_GROUP("Vulkan\\Device" FILES ${VK_DEVICE_SOURCE})
2023-06-14 19:58:56 +08:00
SOURCE_GROUP("Vulkan\\Device\\Creater" FILES ${VK_DEVICE_CREATER_SOURCE})
SOURCE_GROUP("Vulkan\\Device\\Debug" FILES ${VK_DEBUG_SOURCE})
SOURCE_GROUP("Vulkan\\Device\\Instance" FILES ${VK_INST_SOURCE})
SOURCE_GROUP("Vulkan\\Device\\Physical Device" FILES ${VK_PHYSICAL_DEVICE_SOURCE})
SOURCE_GROUP("Vulkan\\Device\\Memory" FILES ${VK_MEMORY_SOURCE})
SOURCE_GROUP("Vulkan\\Device\\Texture" FILES ${VK_DEVICE_TEXTURE_SOURCE})
SOURCE_GROUP("Vulkan\\Device\\Texture\\Loader" FILES ${VK_TEXTURE_LOADER_SOURCE})
SET(VK_DESCRIPTOR_SETS_SOURCE ${SG_INCLUDE_PATH}/VKDescriptorSet.h
Vulkan/VKDescriptorSet.cpp
2021-09-14 20:31:15 +08:00
Vulkan/VKPipelineLayoutData.h
Vulkan/VKPipelineLayoutData.cpp)
SOURCE_GROUP("Vulkan\\Descriptor Sets" FILES ${VK_DESCRIPTOR_SETS_SOURCE})
SET(VK_SHADER_SOURCE ${SG_INCLUDE_PATH}/VKShaderModule.h
${SG_INCLUDE_PATH}/VKShaderModuleMap.h
Vulkan/VKShaderModuleMap.cpp
Vulkan/VKShaderModule.cpp)
SET(VK_TEXTURE_SOURCE ${SG_INCLUDE_PATH}/VKImageView.h
${SG_INCLUDE_PATH}/VKTexture.h
${SG_INCLUDE_PATH}/VKSampler.h
Vulkan/VKSampler.cpp
Vulkan/VKImageView.cpp
Vulkan/VKTexture.cpp)
SET(VK_MATERIAL_SOURCE ${SG_INCLUDE_PATH}/VKMaterial.h
${SG_INCLUDE_PATH}/VKMaterialParameters.h
2021-06-16 20:29:25 +08:00
${SG_INCLUDE_PATH}/VKMaterialInstance.h
${SG_INCLUDE_PATH}/VKDescriptorBindingManage.h
${SG_INCLUDE_PATH}/VKDynamicBufferAccess.h
Vulkan/VKDescriptorBindingManage.cpp
Vulkan/VKMaterial.cpp
2021-06-16 20:29:25 +08:00
Vulkan/VKMaterialParameters.cpp
Vulkan/VKMaterialInstance.cpp)
SOURCE_GROUP("Vulkan\\Material" FILES ${VK_MATERIAL_SOURCE})
SOURCE_GROUP("Vulkan\\Material\\Texture" FILES ${VK_TEXTURE_SOURCE})
SOURCE_GROUP("Vulkan\\Material\\Shader" FILES ${VK_SHADER_SOURCE})
2021-09-29 20:52:14 +08:00
SET(VK_RENDER_CONTEXT_SOURCE ${SG_INCLUDE_PATH}/VKRenderContext.h
${SG_INCLUDE_PATH}/VKSubpass.h
2021-10-04 17:47:55 +08:00
Vulkan/VKSubpass.cpp
2021-09-29 20:52:14 +08:00
Vulkan/VKRenderContext.cpp)
SET(VK_RENDER_PASS_SOURCE ${SG_INCLUDE_PATH}/VKFramebuffer.h
${SG_INCLUDE_PATH}/VKPipeline.h
${SG_INCLUDE_PATH}/VKRenderPass.h
${SG_INCLUDE_PATH}/VKRenderTarget.h
${SG_INCLUDE_PATH}/VKSwapchain.h
${SG_INCLUDE_PATH}/VKSemaphore.h
${SG_INCLUDE_PATH}/VKFence.h
Vulkan/VKQueue.cpp
Vulkan/VKSemaphore.cpp
Vulkan/VKFence.cpp
Vulkan/VKFramebuffer.cpp
Vulkan/VKPipeline.cpp
Vulkan/VKPipelineCache.cpp
2021-09-29 20:52:14 +08:00
#Vulkan/VKSubpass.cpp
Vulkan/VKRenderPass.cpp
Vulkan/VKRenderTarget.cpp
Vulkan/VKSwapchainRenderTarget.cpp
Vulkan/VKSwapchain.cpp
)
2021-10-04 17:47:55 +08:00
SOURCE_GROUP("Vulkan\\Render Pass" FILES ${VK_RENDER_PASS_SOURCE})
2021-09-29 20:52:14 +08:00
SOURCE_GROUP("Vulkan\\Render Context" FILES ${VK_RENDER_CONTEXT_SOURCE})
SET(VK_CMD_BUFFER_SOURCE ${SG_INCLUDE_PATH}/VKCommandBuffer.h
2024-05-30 01:14:27 +08:00
${SG_INCLUDE_PATH}/VKIndirectCommandBuffer.h
Vulkan/VKIndirectCommandBuffer.cpp
Vulkan/VKCommandBuffer.cpp
Vulkan/VKCommandBufferRender.cpp)
SOURCE_GROUP("Vulkan\\Command Buffer" FILES ${VK_CMD_BUFFER_SOURCE})
2024-04-26 01:17:47 +08:00
SET(VK_RENDERABLE_SOURCE ${SG_INCLUDE_PATH}/VKRenderable.h
Vulkan/VKRenderable.cpp
Vulkan/VKTileData.cpp
Vulkan/VKTileFont.cpp)
SOURCE_GROUP("Vulkan\\Renderable" FILES ${VK_RENDERABLE_SOURCE})
#-Component-------------------------------------------------------------
SET(SGC_HEADER_PATH ${SG_INCLUDE_PATH}/component)
SET(SGC_SOURCE_PATH component)
SET(SG_COMPONENT_HEADER ${SG_INCLUDE_PATH}/Component.h
${SGC_HEADER_PATH}/StaticMeshComponent.h)
SET(SG_COMPONENT_SOURCE ${SGC_SOURCE_PATH}/Component.cpp
${SGC_SOURCE_PATH}/StaticMeshComponent.cpp)
SOURCE_GROUP("Scene Graph\\Component" FILES ${SG_COMPONENT_HEADER} ${SG_COMPONENT_SOURCE})
2024-10-22 01:51:25 +08:00
#-GraphModule,RenderFramework-------------------------------------------
SET(SG_MODULE_HEADER_PATH ${SG_INCLUDE_PATH}/module)
2024-10-22 01:51:25 +08:00
SET(GRAPH_MODULE_HEADER ${SG_MODULE_HEADER_PATH}/GraphModule.h
${SG_MODULE_HEADER_PATH}/GraphModuleFactory.h
${SG_MODULE_HEADER_PATH}/RenderModule.h
${SG_MODULE_HEADER_PATH}/SwapchainModule.h)
2024-10-22 01:51:25 +08:00
SET(GRAPH_MODULE_SOURCE module/GraphModule.cpp
2024-10-25 23:17:14 +08:00
module/GraphModuleManager.cpp
module/GraphModuleFactory.cpp
module/RenderModule.cpp
2024-10-24 00:29:16 +08:00
module/RegistryCommonModule.cpp
module/SwapchainModule.cpp)
2024-10-19 13:08:05 +08:00
SOURCE_GROUP("Render Framework\\Module" FILES ${GRAPH_MODULE_HEADER}
${GRAPH_MODULE_SOURCE})
SET(SG_MANAGER_HEADER_PATH ${SG_INCLUDE_PATH}/manager)
SET(GRAPH_MANAGER_HEADER ${SG_MANAGER_HEADER_PATH}/GraphManager.h
${SG_MANAGER_HEADER_PATH}/TextureManager.h)
SET(GRAPH_MANAGER_SOURCE manager/GraphManager.cpp
manager/TextureManager.cpp)
SOURCE_GROUP("Render Framework\\Manager" FILES ${GRAPH_MANAGER_HEADER} ${GRAPH_MANAGER_SOURCE})
2024-10-19 13:08:05 +08:00
SET(RENDER_FRAMEWORK_FILES ${SG_INCLUDE_PATH}/RenderFramework.h
RenderFramework.cpp)
SOURCE_GROUP("Render Framework" FILES ${RENDER_FRAMEWORK_FILES})
2024-10-19 13:08:05 +08:00
SET(DEFERRED_RENDER_HEADER ${SG_INCLUDE_PATH}/deferred/GBufferFormat.h)
SET(DEFERRED_RENDER_SOURCE deferred/GBufferFormat.cpp)
2024-10-22 01:51:25 +08:00
SOURCE_GROUP("Graph Module\\Deferred Rendering" FILES ${DEFERRED_RENDER_HEADER} ${DEFERRED_RENDER_SOURCE})
2024-10-19 13:08:05 +08:00
IF(WIN32)
OPTION(FORCE_DISCETE_GPU "Force Discrete GPU" OFF)
IF(FORCE_DISCETE_GPU)
SET(RENDER_DEVICE_SOURCE ForceDiscreteGPU.c)
ENDIF()
2023-07-28 20:17:46 +08:00
SET(VULKAN_SURFACE_SOURCE Vulkan/Platform/WinVulkan.cpp)
ENDIF(WIN32)
2023-07-28 20:17:46 +08:00
IF(UNIX)
IF(ANDROID)
SET(VULKAN_SURFACE_SOURCE Vulkan/Platform/AndroidVulkan.cpp)
ELSE()
IF(APPLE)
ELSE()
SET(VULKAN_SURFACE_SOURCE Vulkan/Platform/XCBVulkan.cpp)
ENDIF()
ENDIF()
ENDIF(UNIX)
SOURCE_GROUP("Vulkan\\Surface" FILES ${VULKAN_SURFACE_SOURCE})
SET(VULKAN_RENDER_SOURCE ${VK_RR_SOURCE}
2021-09-13 20:39:25 +08:00
${VK_RR_MATERIAL_FILES}
${VK_INST_SOURCE}
${VK_DEBUG_SOURCE}
${VK_MEMORY_SOURCE}
${VK_DEVICE_SOURCE}
2023-06-14 19:58:56 +08:00
${VK_DEVICE_CREATER_SOURCE}
${VK_DEVICE_TEXTURE_SOURCE}
${VK_TEXTURE_LOADER_SOURCE}
${VK_PHYSICAL_DEVICE_SOURCE}
${VK_DESCRIPTOR_SETS_SOURCE}
${VK_SHADER_SOURCE}
${VK_TEXTURE_SOURCE}
${VK_MATERIAL_SOURCE}
${VK_RENDER_PASS_SOURCE}
2021-10-04 17:47:55 +08:00
#${VK_RENDER_CONTEXT_SOURCE}
${VK_CMD_BUFFER_SOURCE}
${VK_RENDERABLE_SOURCE}
${VK_RENDER_DEVICE_SOURCE})
add_cm_library(ULRE.SceneGraph "ULRE" ${SCENE_GRAPH_HEADER} ${SCENE_GRAPH_SOURCE}
2024-04-26 01:17:47 +08:00
${SG_PRIMITIVE_SOURCE}
2023-03-23 21:43:10 +08:00
${GEOMETRY_FILES}
${LIGHT_FILES}
2020-01-09 16:53:30 +08:00
2020-07-28 16:37:01 +08:00
${SG_TEXTURE_SOURCE}
2020-07-31 18:01:28 +08:00
${TILE_SOURCE}
${SG_VDM_SOURCE}
2020-06-28 22:16:07 +08:00
${STATIC_MESH_HEADER_FILES} ${STATIC_MESH_SOURCE_FILES}
2024-10-19 13:08:05 +08:00
${SG_COMPONENT_HEADER} ${SG_COMPONENT_SOURCE}
2024-07-29 13:19:24 +08:00
# ${FONT_MANAGE_SOURCE}
# ${FONT_SOURCE}
# ${FONT_SOURCE_OS}
# ${TILE_FONT_SOURCE}
# ${FONT_LAYOUT_SOURCE}
# ${TEXT_RENDERABLE_SOURCE}
2023-07-28 20:17:46 +08:00
${VULKAN_RENDER_SOURCE}
2024-10-19 13:08:05 +08:00
${VULKAN_SURFACE_SOURCE}
${GRAPH_MODULE_HEADER} ${GRAPH_MODULE_SOURCE}
${GRAPH_MANAGER_HEADER} ${GRAPH_MANAGER_SOURCE}
${RENDER_FRAMEWORK_FILES}
2024-10-19 13:08:05 +08:00
${DEFERRED_RENDER_HEADER} ${DEFERRED_RENDER_SOURCE}
)