@@ -20,25 +20,27 @@ file(GLOB HEADERS
2020 "*.h" "**/*.h"
2121)
2222
23- file (GLOB SHADER_DEFS
24- "${CMAKE_CURRENT_SOURCE_DIR} /Sfx/*.json"
25- )
26-
27-
28- file (GLOB JSON
29- "${CMAKE_CURRENT_SOURCE_DIR} /HLSL/*.json"
30- "${SIMUL_PLATFORM_DIR} /XboxOne/HLSL/*.json"
31- )
23+ if (PLATFORM_SPECTRUM)
24+ set ( FOLDER "Spectrum" )
25+ elseif (PLATFORM_XBOXONE)
26+ set ( FOLDER "XboxOne" )
27+ else ()
28+ set ( FOLDER "DirectX12" )
29+ endif ()
3230
3331file (GLOB SHADERS
34- "${SIMUL_PLATFORM_DIR} /Shaders /Sfx/*.sfx"
32+ "${SIMUL_PLATFORM_DIR} /${FOLDER} /Sfx/*.sfx"
3533)
36-
3734file (GLOB SHADER_INCLUDES
38- "${SIMUL_PLATFORM_DIR} /Shaders/SL/*.sl"
39- "${SIMUL_PLATFORM_DIR} /DirectX12/HLSL/*.sl"
35+ "${SIMUL_PLATFORM_DIR} /${FOLDER} /Sfx/*.sl"
36+ )
37+ file (GLOB SHADER_DEFS
38+ "${SIMUL_PLATFORM_DIR} /${FOLDER} /Sfx/*.json"
4039)
40+
4141source_group ("NV" src FILES "**/*.cpp" "**/*.h" )
42+ source_group ("Shaders" FILES ${SHADERS} )
43+ source_group ("Shader Includes" FILES ${SHADER_INCLUDES} )
4244
4345set (DX12_DEFS SIMUL_DIRECTX12_DLL=1
4446 PLATFORM_SUPPORT_D3D12_RAYTRACING=$<BOOL :${PLATFORM_SUPPORT_D3D12_RAYTRACING} >
@@ -63,7 +65,7 @@ endif()
6365set (HEADERS ${HEADERS} "${SIMUL_PLATFORM_DIR} /External/D3D12MemoryAllocator/include/D3D12MemAlloc.h" )
6466set (SOURCES ${SOURCES} "${SIMUL_PLATFORM_DIR} /External/D3D12MemoryAllocator/src/D3D12MemAlloc.cpp" )
6567
66- add_static_library ( SimulDirectX12 SOURCES ${SOURCES} ${HEADERS} ${SHADER_DEFS} DEFINITIONS ${DX12_DEFS} PROPERTIES FOLDER ${SIMUL_PLATFORM_FOLDER_PREFIX}
68+ add_static_library ( SimulDirectX12 SOURCES ${SOURCES} ${HEADERS} ${SHADERS} ${SHADER_INCLUDES} ${ SHADER_DEFS} DEFINITIONS ${DX12_DEFS} PROPERTIES FOLDER ${SIMUL_PLATFORM_FOLDER_PREFIX}
6769 INCLUDES "${SIMUL_PLATFORM_DIR} /External/DirectX/DirectXTex/DirectXTex" PUBLICINCLUDES "${SIMUL_PLATFORM_DIR} /DirectX12" )
6870add_dependencies (SimulDirectX12${STATIC_LINK_SUFFIX} SimulCrossPlatform${STATIC_LINK_SUFFIX} )
6971
@@ -81,16 +83,15 @@ endif()
8183option ( PLATFORM_SUPPORT_D3D12_RAYTRACING "" OFF )
8284if (SIMUL_SOURCE_BUILD)
8385 if (PLATFORM_SPECTRUM)
84- set ( JSON_FILE "${SIMUL_PLATFORM_DIR} /Spectrum/Sfx/Spectrum.json" )
8586 set ( PLATFORM_SUPPORT_D3D12_RAYTRACING True )
8687 elseif (PLATFORM_XBOXONE)
87- set ( JSON_FILE "${SIMUL_PLATFORM_DIR} /XboxOne/Sfx/XboxOne.json" )
8888 set ( PLATFORM_SUPPORT_D3D12_RAYTRACING False )
8989 else ()
90- set ( JSON_FILE "${CMAKE_CURRENT_SOURCE_DIR} /Sfx/DirectX12.json" )
9190 set ( PLATFORM_SUPPORT_D3D12_RAYTRACING True )
9291 endif ()
9392
93+ set ( JSON_FILE "${SIMUL_PLATFORM_DIR} /${FOLDER} /Sfx/${FOLDER} .json" )
94+
9495 #Note: Due to a CMake bug, we can't include the in_RootSignature file in SOURCES, or it will be default-compiled as an hlsl shader instead of the custom command below.
9596
9697 option (PLATFORM_DX12_LOAD_GFX "" OFF )
0 commit comments