diff options
| author | Egor Yusov <egor.yusov@gmail.com> | 2017-12-15 06:37:34 +0000 |
|---|---|---|
| committer | Egor Yusov <egor.yusov@gmail.com> | 2017-12-15 06:37:34 +0000 |
| commit | 4181dd04a310156555c68af1c7be31a8d7b58d65 (patch) | |
| tree | e3f9b5669ceca3f44079560878d2d3cf642e02b0 /unityplugin | |
| parent | Replaced FXC command with VS_SHADER_* properties. No need to specify FXC when... (diff) | |
| download | DiligentEngine-4181dd04a310156555c68af1c7be31a8d7b58d65.tar.gz DiligentEngine-4181dd04a310156555c68af1c7be31a8d7b58d65.zip | |
CMake: enabled resource processing for UnityPlugin in UWP build
Diffstat (limited to 'unityplugin')
| -rw-r--r-- | unityplugin/GhostCubePlugin/PluginSource/CMakeLists.txt | 10 | ||||
| -rw-r--r-- | unityplugin/GhostCubeScene/CMakeLists.txt | 44 |
2 files changed, 44 insertions, 10 deletions
diff --git a/unityplugin/GhostCubePlugin/PluginSource/CMakeLists.txt b/unityplugin/GhostCubePlugin/PluginSource/CMakeLists.txt index 4ead45b..a53e928 100644 --- a/unityplugin/GhostCubePlugin/PluginSource/CMakeLists.txt +++ b/unityplugin/GhostCubePlugin/PluginSource/CMakeLists.txt @@ -39,14 +39,6 @@ add_library(GhostCubePlugin-shared SHARED ${SOURCE} ${INCLUDE} ${UNITY_INTERFACES} ) -if(PLATFORM_WIN32 OR PLATFORM_UNIVERSAL_WINDOWS) - if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8") - set(ARCH 64) - else("${CMAKE_SIZEOF_VOID_P}" EQUAL "8") - set(ARCH 32) - endif("${CMAKE_SIZEOF_VOID_P}" EQUAL "8") -endif() - set(DLL_REL_SUFFIX _${ARCH}r) set(DLL_DBG_SUFFIX _${ARCH}d) @@ -57,7 +49,7 @@ set_target_properties(GhostCubePlugin-shared PROPERTIES OUTPUT_NAME_MINSIZEREL GhostCubePlugin${DLL_REL_SUFFIX} ) -if(PLATFORM_WIN32) +if(PLATFORM_WIN32 OR PLATFORM_UNIVERSAL_WINDOWS) target_sources(GhostCubePlugin-shared PRIVATE src/RenderingPlugin.def diff --git a/unityplugin/GhostCubeScene/CMakeLists.txt b/unityplugin/GhostCubeScene/CMakeLists.txt index 81d263a..f51cc2e 100644 --- a/unityplugin/GhostCubeScene/CMakeLists.txt +++ b/unityplugin/GhostCubeScene/CMakeLists.txt @@ -10,6 +10,14 @@ set(INCLUDE src/GhostCubeScene.h ) +set(SHADERS + build/assets/shaders/Mirror.psh + build/assets/shaders/Mirror.vsh +) +set(ASSETS ${SHADERS}) +set_source_files_properties(${SHADERS} PROPERTIES VS_TOOL_OVERRIDE "None") + + if(PLATFORM_WIN32 OR PLATFORM_UNIVERSAL_WINDOWS) list(APPEND SOURCE src/GhostCubeSceneResTrsnHelper.cpp) list(APPEND INCLUDE src/GhostCubeSceneResTrsnHelper.h) @@ -19,7 +27,7 @@ endif() if(PLATFORM_WIN32 OR PLATFORM_UNIVERSAL_WINDOWS) - add_executable(GhostCubeScene WIN32 ${SOURCE} ${INCLUDE}) + add_executable(GhostCubeScene WIN32 ${SOURCE} ${INCLUDE} ${ASSETS}) if(PLATFORM_WIN32) set_target_properties(GhostCubeScene PROPERTIES @@ -30,6 +38,37 @@ if(PLATFORM_WIN32 OR PLATFORM_UNIVERSAL_WINDOWS) COMMAND ${CMAKE_COMMAND} -E copy_if_different "\"$<TARGET_FILE:GhostCubePlugin-shared>\"" "\"$<TARGET_FILE_DIR:GhostCubeScene>\"") + + elseif(PLATFORM_UNIVERSAL_WINDOWS) + + set(PLUGIN_REL_DLL ${CMAKE_CURRENT_BINARY_DIR}/GhostCubePlugin_${ARCH}r.dll) + set(PLUGIN_DBG_DLL ${CMAKE_CURRENT_BINARY_DIR}/GhostCubePlugin_${ARCH}d.dll) + + set(PLUGIN_DLLS ${PLUGIN_REL_DLL} ${PLUGIN_DBG_DLL}) + set_source_files_properties(${PLUGIN_DLLS} PROPERTIES GENERATED TRUE) + set_source_files_properties(${PLUGIN_DBG_DLL} PROPERTIES + VS_DEPLOYMENT_CONTENT $<CONFIG:Debug> + VS_DEPLOYMENT_LOCATION "assets" + ) + set_source_files_properties(${PLUGIN_REL_DLL} PROPERTIES + VS_DEPLOYMENT_CONTENT $<NOT:$<CONFIG:Debug>> + VS_DEPLOYMENT_LOCATION "assets" + ) + + add_custom_command(TARGET GhostCubeScene PRE_BUILD + COMMAND ${CMAKE_COMMAND} -E copy_if_different + "\"$<TARGET_FILE:GhostCubePlugin-shared>\"" + "${CMAKE_CURRENT_BINARY_DIR}/$<TARGET_FILE_NAME:GhostCubePlugin-shared>" + ) + + target_sources(GhostCubeScene PRIVATE ${PLUGIN_DLLS}) + source_group("assets" FILES ${PLUGIN_DLLS}) + + set_source_files_properties(${SHADERS} PROPERTIES + VS_DEPLOYMENT_CONTENT TRUE + VS_DEPLOYMENT_LOCATION "assets/shaders" + ) + endif() #elseif(APPLE) @@ -40,6 +79,8 @@ else() message(FATAL_ERROR "Unknown platform") endif() +add_dependencies(GhostCubeScene GhostCubePlugin-shared) + if(PLATFORM_UNIVERSAL_WINDOWS) get_emulator_uwp_source(UWP_SOURCE UWP_INCLUDE UWP_INCLUDE_DIR) source_group("UWP\\src" FILES ${UWP_SOURCE}) @@ -75,6 +116,7 @@ endif() source_group("src" FILES ${SOURCE}) source_group("include" FILES ${INCLUDE}) +source_group("assets\\shaders" FILES ${SHADERS}) set_target_properties(GhostCubeScene PROPERTIES FOLDER Unity |
