forked from ExplosionEngine/Explosion
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
110 lines (95 loc) · 2.71 KB
/
CMakeLists.txt
File metadata and controls
110 lines (95 loc) · 2.71 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
function(add_sample)
cmake_parse_arguments(PARAMS "" "NAME" "SRC;INC;SHADER;IMAGE;MODEL" ${ARGN})
if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
set(PLATFORM_DEP_TARGET RHI-DirectX12 RHI-Vulkan)
else()
set(PLATFORM_DEP_TARGET RHI-Vulkan)
endif()
foreach(S ${PARAMS_SHADER})
set(path "${CMAKE_CURRENT_SOURCE_DIR}/${S}->../Test/Sample/${S}")
list(APPEND PATHS ${path})
endforeach()
foreach(I ${PARAMS_IMAGE})
set(path "${CMAKE_CURRENT_SOURCE_DIR}/${I}->../Test/Sample/${I}")
list(APPEND PATHS ${path})
endforeach()
foreach(M ${PARAMS_MODEL})
set(path "${CMAKE_CURRENT_SOURCE_DIR}/${M}->../Test/Sample/${M}")
list(APPEND PATHS ${path})
endforeach()
list(APPEND PATHS "${CMAKE_SOURCE_DIR}/Engine/Shader/Platform.esh->../Test/Sample/ShaderInclude/Platform.esh")
exp_add_executable(
SAMPLE
NAME ${PARAMS_NAME}
SRC ${PARAMS_SRC}
INC ${PARAMS_INC}
LIB Sample-Base
DEP_TARGET ${PLATFORM_DEP_TARGET}
RES ${PATHS}
NOT_INSTALL
)
endfunction()
if (${CMAKE_SYSTEM_NAME} STREQUAL "Darwin")
set(PLATFORM_EXT_LIBS
"-framework Cocoa"
"-framework IOKit"
"-framework CoreFoundation")
endif()
file(GLOB SOURCES Base/*.cpp)
exp_add_library(
NAME Sample-Base
SRC ${SOURCES}
PUBLIC_INC Base
LIB RHI glfw clipp ${PLATFORM_EXT_LIBS} Render.Static stb assimp-lib
NOT_INSTALL
)
file(GLOB SOURCES RHI-Triangle/*.cpp)
add_sample(
NAME RHISample-Triangle
SRC ${SOURCES}
INC RHI-Triangle
SHADER RHI-Triangle/Triangle.esl
)
file(GLOB SOURCES RHI-TexSampling/*.cpp)
add_sample(
NAME RHISample-TexSampling
SRC ${SOURCES}
INC RHI-TexSampling
SHADER RHI-TexSampling/TexSampling.esl
IMAGE RHI-TexSampling/Awesomeface.png
)
file(GLOB SOURCES RHI-SSAO/*.cpp)
add_sample(
NAME RHISample-SSAO
SRC ${SOURCES}
INC RHI-SSAO
SHADER
RHI-SSAO/Shader/Gbuffer.esl
RHI-SSAO/Shader/SSAO.esl
RHI-SSAO/Shader/Blur.esl
RHI-SSAO/Shader/Composition.esl
MODEL
RHI-SSAO/Model/Voyager.gltf
)
file(GLOB SOURCES RHI-ParallelCompute/*.cpp)
add_sample(
NAME RHISample-ParallelCompute
SRC ${SOURCES}
SHADER RHI-ParallelCompute/Compute.esl
)
file(GLOB SOURCES Rendering-Triangle/*.cpp)
add_sample(
NAME RenderingSample-Triangle
SRC ${SOURCES}
INC Rendering-Triangle
SHADER
Rendering-Triangle/Triangle.esl
)
file(GLOB SOURCES Rendering-BaseTexture/*.cpp)
add_sample(
NAME Rendering-BaseTexture
SRC ${SOURCES}
INC Rendering-BaseTexture
SHADER Rendering-BaseTexture/BaseTexture.esl
IMAGE Rendering-BaseTexture/Awesomeface.png
)