From e70eba05213feb5ba4c720b3206e01a6eaff863a Mon Sep 17 00:00:00 2001 From: Benjamin Schagerl Date: Fri, 11 May 2018 10:36:18 +0200 Subject: [PATCH] !XF (DEV-5340) Added CMake option to enable/disable experimental Schematyc. Copied from Perforce Change: 1690778 --- Code/CryEngine/CrySystem/SystemInit.cpp | 6 +++++- Tools/CMake/BuildEngine.cmake | 15 +++++++++++---- Tools/CMake/BuildSandbox.cmake | 5 +++-- 3 files changed, 19 insertions(+), 7 deletions(-) diff --git a/Code/CryEngine/CrySystem/SystemInit.cpp b/Code/CryEngine/CrySystem/SystemInit.cpp index fb338ac9b..220438de5 100644 --- a/Code/CryEngine/CrySystem/SystemInit.cpp +++ b/Code/CryEngine/CrySystem/SystemInit.cpp @@ -1096,6 +1096,10 @@ bool CSystem::InitSchematyc(const SSystemInitParams& startupParams) { LOADING_TIME_PROFILE_SECTION(GetISystem()); +#ifdef USE_SCHEMATYC_EXPERIMENTAL + sys_SchematycPlugin = 2; +#endif + if (sys_SchematycPlugin == 0 || sys_SchematycPlugin == 1) { if (!InitializeEngineModule(startupParams, "CrySchematyc2", cryiidof(), true)) @@ -5300,7 +5304,7 @@ void CSystem::CreateSystemVars() REGISTER_CVAR_CB(sys_ProfileLevelLoadingDump, 0, VF_CHEAT, "Output level loading dump stats into log\n", OnLevelLoadingDump); - REGISTER_CVAR(sys_SchematycPlugin, 0, VF_REQUIRE_APP_RESTART, + REGISTER_CVAR(sys_SchematycPlugin, 1, VF_REQUIRE_APP_RESTART, "Set whether default Schematyc and/or experimental plugin is loaded\n" "0 = Both plugins\n" "1 = Loads default Schematyc plugin only\n" diff --git a/Tools/CMake/BuildEngine.cmake b/Tools/CMake/BuildEngine.cmake index d0a517622..7fcde201f 100644 --- a/Tools/CMake/BuildEngine.cmake +++ b/Tools/CMake/BuildEngine.cmake @@ -1,7 +1,7 @@ #options -option(PLUGIN_SCHEMATYC "Enables compilation of the Schematyc plugin" ON) +option(PLUGIN_SCHEMATYC_EXPERIMENTAL "Enables compilation of the Experimental Schematyc plugin" ON) option(OPTION_PAKTOOLS "Build .pak encryption tools" OFF) option(OPTION_RC "Include RC in the build" OFF) @@ -367,9 +367,16 @@ if (OPTION_ENGINE) add_subdirectory ("Code/CryEngine/CryMovie") add_subdirectory ("Code/CryEngine/CryNetwork") #add_subdirectory ("Code/CryEngine/CryReflection") - add_subdirectory ("Code/CryEngine/CrySchematyc") - if(NOT ANDROID) - add_subdirectory ("Code/CryEngine/CrySchematyc2") + if (PLUGIN_SCHEMATYC_EXPERIMENTAL) + target_compile_definitions(CrySystem PUBLIC USE_SCHEMATYC_EXPERIMENTAL=1) + if (TARGET CrySystemLib) + target_compile_definitions(CrySystemLib PUBLIC USE_SCHEMATYC_EXPERIMENTAL=1) + endif() + add_subdirectory ("Code/CryEngine/CrySchematyc") + else() + if (NOT ANDROID) + add_subdirectory ("Code/CryEngine/CrySchematyc2") + endif() endif() add_subdirectory ("Code/CryEngine/CryScriptSystem") add_subdirectory ("Code/CryEngine/CryFlowGraph") diff --git a/Tools/CMake/BuildSandbox.cmake b/Tools/CMake/BuildSandbox.cmake index dd93550e7..8eb8612b5 100644 --- a/Tools/CMake/BuildSandbox.cmake +++ b/Tools/CMake/BuildSandbox.cmake @@ -34,10 +34,11 @@ add_subdirectory("Code/Sandbox/Plugins/EditorAnimation") add_subdirectory("Code/Sandbox/Plugins/EditorDynamicResponseSystem") add_subdirectory("Code/Sandbox/Plugins/EditorEnvironment") add_subdirectory("Code/Sandbox/Plugins/EditorParticle") -if (PLUGIN_SCHEMATYC) - add_subdirectory("Code/Sandbox/Plugins/SchematycEditor") +if (PLUGIN_SCHEMATYC_EXPERIMENTAL) add_subdirectory("Code/Sandbox/Plugins/EditorSchematyc") +else() add_subdirectory("Code/Sandbox/Plugins/EditorSchematyc2") + add_subdirectory("Code/Sandbox/Plugins/SchematycEditor") endif() add_subdirectory("Code/Sandbox/Plugins/EditorTrackView") add_subdirectory("Code/Sandbox/Plugins/EditorGameSDK") -- 2.11.4.GIT