From 60ecbecb74b0aa45445a059d921fb2a44309dd41 Mon Sep 17 00:00:00 2001 From: Olorin Date: Wed, 1 Jun 2022 19:04:03 +0800 Subject: [PATCH 1/4] using relative root folder --- engine/source/editor/source/main.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/engine/source/editor/source/main.cpp b/engine/source/editor/source/main.cpp index 175e5bcb4..143bab043 100644 --- a/engine/source/editor/source/main.cpp +++ b/engine/source/editor/source/main.cpp @@ -13,11 +13,9 @@ int main(int argc, char** argv) { - std::filesystem::path pilot_root_folder = std::filesystem::path(PILOT_XSTR(PILOT_ROOT_DIR)); - Pilot::EngineInitParams params; - params.m_root_folder = pilot_root_folder; - params.m_config_file_path = pilot_root_folder / "PilotEditor.ini"; + params.m_root_folder = "."; + params.m_config_file_path = "./PilotEditor.ini"; Pilot::PilotEngine* engine = new Pilot::PilotEngine(); From bf1a41d3415142c3e11558d7e3fa7e5e0aff645e Mon Sep 17 00:00:00 2001 From: Olorin Date: Wed, 1 Jun 2022 20:57:12 +0800 Subject: [PATCH 2/4] separate development and deployment config --- engine/CMakeLists.txt | 5 ++++ .../{ => configs/deployment}/PilotEditor.ini | 1 + .../development/windows/PilotEditor.ini | 9 +++++++ engine/source/editor/CMakeLists.txt | 6 +++-- engine/source/editor/source/main.cpp | 24 +++++++++---------- engine/source/runtime/engine.cpp | 6 ++--- engine/source/runtime/engine.h | 11 ++------- .../function/global/global_context.cpp | 4 ++-- .../runtime/function/global/global_context.h | 3 ++- .../resource/asset_manager/asset_manager.cpp | 4 +++- .../config_manager/config_manager.cpp | 11 +++++---- .../resource/config_manager/config_manager.h | 2 +- 12 files changed, 49 insertions(+), 37 deletions(-) rename engine/{ => configs/deployment}/PilotEditor.ini (93%) create mode 100644 engine/configs/development/windows/PilotEditor.ini diff --git a/engine/CMakeLists.txt b/engine/CMakeLists.txt index 4bb744ff7..73b53dd7f 100644 --- a/engine/CMakeLists.txt +++ b/engine/CMakeLists.txt @@ -3,6 +3,11 @@ set(ENGINE_ROOT_DIR "${PILOT_ROOT_DIR}/engine") set(THIRD_PARTY_DIR "${ENGINE_ROOT_DIR}/3rdparty") set(ENGINE_ASSET_DIR "/asset") +set(DEPLOY_CONFIG_DIR "/configs/deployment") +if(WIN32) + set(DEVELOP_CONFIG_DIR "/configs/development/windows") +endif() + option(ENABLE_PHYSICS_DEBUG_RENDERER "Enable Physics Debug Renderer" OFF) # only support physics debug render at windows platform diff --git a/engine/PilotEditor.ini b/engine/configs/deployment/PilotEditor.ini similarity index 93% rename from engine/PilotEditor.ini rename to engine/configs/deployment/PilotEditor.ini index 4dfe8b12b..a021b4566 100644 --- a/engine/PilotEditor.ini +++ b/engine/configs/deployment/PilotEditor.ini @@ -1,3 +1,4 @@ +BinaryRootFolder=. AssetFolder=asset SchemaFolder=schema BigIconFile=resource/PilotEditorBigIcon.png diff --git a/engine/configs/development/windows/PilotEditor.ini b/engine/configs/development/windows/PilotEditor.ini new file mode 100644 index 000000000..8cab6fbcd --- /dev/null +++ b/engine/configs/development/windows/PilotEditor.ini @@ -0,0 +1,9 @@ +BinaryRootFolder=../../../../bin +AssetFolder=asset +SchemaFolder=schema +BigIconFile=resource/PilotEditorBigIcon.png +SmallIconFile=resource/PilotEditorSmallIcon.png +FontFile=resource/PilotEditorFont.TTF +DefaultWorld=asset/world/hello.world.json +GlobalRenderingRes=asset/global/rendering.global.json +JoltAssetFolder=jolt-asset \ No newline at end of file diff --git a/engine/source/editor/CMakeLists.txt b/engine/source/editor/CMakeLists.txt index ffdf850ec..97a4386cb 100644 --- a/engine/source/editor/CMakeLists.txt +++ b/engine/source/editor/CMakeLists.txt @@ -25,7 +25,8 @@ target_link_libraries(${TARGET_NAME} PilotRuntime) if(NOT ENABLE_PHYSICS_DEBUG_RENDERER) add_custom_command(TARGET ${TARGET_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory "${BINARY_ROOT_DIR}" - COMMAND ${CMAKE_COMMAND} -E copy "${ENGINE_ROOT_DIR}/${TARGET_NAME}.ini" "${BINARY_ROOT_DIR}" + COMMAND ${CMAKE_COMMAND} -E copy "${ENGINE_ROOT_DIR}/${DEPLOY_CONFIG_DIR}/${TARGET_NAME}.ini" "${BINARY_ROOT_DIR}" + COMMAND ${CMAKE_COMMAND} -E copy "${ENGINE_ROOT_DIR}/${DEVELOP_CONFIG_DIR}/${TARGET_NAME}.ini" "${CMAKE_CURRENT_BINARY_DIR}" COMMAND ${CMAKE_COMMAND} -E copy_directory "${CMAKE_CURRENT_SOURCE_DIR}/resource" "${BINARY_ROOT_DIR}/resource" COMMAND ${CMAKE_COMMAND} -E copy_directory "$/" "${BINARY_ROOT_DIR}" COMMAND ${CMAKE_COMMAND} -E remove_directory "${BINARY_ROOT_DIR}/${ENGINE_ASSET_DIR}" @@ -34,7 +35,8 @@ if(NOT ENABLE_PHYSICS_DEBUG_RENDERER) else() add_custom_command(TARGET ${TARGET_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory "${BINARY_ROOT_DIR}" - COMMAND ${CMAKE_COMMAND} -E copy "${ENGINE_ROOT_DIR}/${TARGET_NAME}.ini" "${BINARY_ROOT_DIR}" + COMMAND ${CMAKE_COMMAND} -E copy "${ENGINE_ROOT_DIR}/${DEPLOY_CONFIG_DIR}/${TARGET_NAME}.ini" "${BINARY_ROOT_DIR}" + COMMAND ${CMAKE_COMMAND} -E copy "${ENGINE_ROOT_DIR}/${DEVELOP_CONFIG_DIR}/${TARGET_NAME}.ini" "${CMAKE_CURRENT_BINARY_DIR}" COMMAND ${CMAKE_COMMAND} -E copy_directory "${CMAKE_CURRENT_SOURCE_DIR}/resource" "${BINARY_ROOT_DIR}/resource" COMMAND ${CMAKE_COMMAND} -E copy_directory "$/" "${BINARY_ROOT_DIR}" COMMAND ${CMAKE_COMMAND} -E remove_directory "${BINARY_ROOT_DIR}/${ENGINE_ASSET_DIR}" diff --git a/engine/source/editor/source/main.cpp b/engine/source/editor/source/main.cpp index 143bab043..16a849313 100644 --- a/engine/source/editor/source/main.cpp +++ b/engine/source/editor/source/main.cpp @@ -13,24 +13,22 @@ int main(int argc, char** argv) { - Pilot::EngineInitParams params; - params.m_root_folder = "."; - params.m_config_file_path = "./PilotEditor.ini"; + std::string config_file_path = "./PilotEditor.ini"; - Pilot::PilotEngine* engine = new Pilot::PilotEngine(); + Pilot::PilotEngine* engine = new Pilot::PilotEngine(); - engine->startEngine(params); - engine->initialize(); + engine->startEngine(config_file_path); + engine->initialize(); - Pilot::PilotEditor* editor = new Pilot::PilotEditor(); - editor->initialize(engine); + Pilot::PilotEditor* editor = new Pilot::PilotEditor(); + editor->initialize(engine); - editor->run(); + editor->run(); - editor->clear(); + editor->clear(); - engine->clear(); - engine->shutdownEngine(); + engine->clear(); + engine->shutdownEngine(); - return 0; + return 0; } diff --git a/engine/source/runtime/engine.cpp b/engine/source/runtime/engine.cpp index 8ace7c4c8..340500b2c 100644 --- a/engine/source/runtime/engine.cpp +++ b/engine/source/runtime/engine.cpp @@ -15,13 +15,11 @@ namespace Pilot bool g_is_editor_mode {false}; std::unordered_set g_editor_tick_component_types {}; - void PilotEngine::startEngine(const EngineInitParams& param) + void PilotEngine::startEngine(const std::string& config_file_path) { - m_init_params = param; - Reflection::TypeMetaRegister::Register(); - g_runtime_global_context.startSystems(param); + g_runtime_global_context.startSystems(config_file_path); LOG_INFO("engine start"); } diff --git a/engine/source/runtime/engine.h b/engine/source/runtime/engine.h index cae0497b6..1ce20e7b6 100644 --- a/engine/source/runtime/engine.h +++ b/engine/source/runtime/engine.h @@ -3,6 +3,7 @@ #include #include #include +#include #include namespace Pilot @@ -10,12 +11,6 @@ namespace Pilot extern bool g_is_editor_mode; extern std::unordered_set g_editor_tick_component_types; - struct EngineInitParams - { - std::filesystem::path m_root_folder; - std::filesystem::path m_config_file_path; - }; - class PilotEngine { friend class PilotEditor; @@ -23,7 +18,7 @@ namespace Pilot static const float k_fps_alpha; public: - void startEngine(const EngineInitParams& param); + void startEngine(const std::string& config_file_path); void shutdownEngine(); void initialize(); @@ -47,8 +42,6 @@ namespace Pilot float calculateDeltaTime(); protected: - EngineInitParams m_init_params; - bool m_is_quit {false}; std::chrono::steady_clock::time_point m_last_tick_time_point {std::chrono::steady_clock::now()}; diff --git a/engine/source/runtime/function/global/global_context.cpp b/engine/source/runtime/function/global/global_context.cpp index 0c97c31fe..83c47ff54 100644 --- a/engine/source/runtime/function/global/global_context.cpp +++ b/engine/source/runtime/function/global/global_context.cpp @@ -21,10 +21,10 @@ namespace Pilot { RuntimeGlobalContext g_runtime_global_context; - void RuntimeGlobalContext::startSystems(const EngineInitParams& init_params) + void RuntimeGlobalContext::startSystems(const std::string& config_file_path) { m_config_manager = std::make_shared(); - m_config_manager->initialize(init_params); + m_config_manager->initialize(config_file_path); m_file_system = std::make_shared(); diff --git a/engine/source/runtime/function/global/global_context.h b/engine/source/runtime/function/global/global_context.h index 038758d3e..c30f31f5d 100644 --- a/engine/source/runtime/function/global/global_context.h +++ b/engine/source/runtime/function/global/global_context.h @@ -1,6 +1,7 @@ #pragma once #include +#include namespace Pilot { @@ -22,7 +23,7 @@ namespace Pilot { public: // create all global systems and initialize these systems - void startSystems(const EngineInitParams& init_params); + void startSystems(const std::string& config_file_path); // destroy all global systems void shutdownSystems(); diff --git a/engine/source/runtime/resource/asset_manager/asset_manager.cpp b/engine/source/runtime/resource/asset_manager/asset_manager.cpp index 1c15f9de1..ffb7e7419 100644 --- a/engine/source/runtime/resource/asset_manager/asset_manager.cpp +++ b/engine/source/runtime/resource/asset_manager/asset_manager.cpp @@ -4,10 +4,12 @@ #include "runtime/function/global/global_context.h" +#include + namespace Pilot { std::filesystem::path AssetManager::getFullPath(const std::string& relative_path) const { - return g_runtime_global_context.m_config_manager->getRootFolder() / relative_path; + return std::filesystem::absolute(g_runtime_global_context.m_config_manager->getRootFolder() / relative_path); } } // namespace Pilot \ No newline at end of file diff --git a/engine/source/runtime/resource/config_manager/config_manager.cpp b/engine/source/runtime/resource/config_manager/config_manager.cpp index af1e8f9ad..ff6be04ba 100644 --- a/engine/source/runtime/resource/config_manager/config_manager.cpp +++ b/engine/source/runtime/resource/config_manager/config_manager.cpp @@ -7,11 +7,10 @@ namespace Pilot { - void ConfigManager::initialize(const EngineInitParams& init_param) + void ConfigManager::initialize(const std::string& config_file_path) { - m_root_folder = init_param.m_root_folder; // read configs - std::ifstream config_file(init_param.m_config_file_path); + std::ifstream config_file(config_file_path); std::string config_line; while (std::getline(config_file, config_line)) { @@ -20,7 +19,11 @@ namespace Pilot { std::string name = config_line.substr(0, seperate_pos); std::string value = config_line.substr(seperate_pos + 1, config_line.length() - seperate_pos - 1); - if (name == "AssetFolder") + if (name == "BinaryRootFolder") + { + m_root_folder = value; + } + else if (name == "AssetFolder") { m_asset_folder = m_root_folder / value; } diff --git a/engine/source/runtime/resource/config_manager/config_manager.h b/engine/source/runtime/resource/config_manager/config_manager.h index 7bbcc8e43..0bd18b03a 100644 --- a/engine/source/runtime/resource/config_manager/config_manager.h +++ b/engine/source/runtime/resource/config_manager/config_manager.h @@ -9,7 +9,7 @@ namespace Pilot class ConfigManager { public: - void initialize(const EngineInitParams& init_param); + void initialize(const std::string& config_file_path); const std::filesystem::path& getRootFolder() const; const std::filesystem::path& getAssetFolder() const; From f718c9430e5636b786256897eb67c2ed29b91257 Mon Sep 17 00:00:00 2001 From: Olorin Date: Thu, 9 Jun 2022 21:34:29 +0800 Subject: [PATCH 3/4] fix root folder --- engine/CMakeLists.txt | 6 ++-- .../development/{windows => }/PilotEditor.ini | 0 engine/source/editor/CMakeLists.txt | 33 +++++++++---------- engine/source/editor/source/main.cpp | 24 +++++++------- .../resource/asset_manager/asset_manager.h | 5 +-- .../config_manager/config_manager.cpp | 5 +-- .../resource/config_manager/config_manager.h | 2 +- 7 files changed, 37 insertions(+), 38 deletions(-) rename engine/configs/development/{windows => }/PilotEditor.ini (100%) diff --git a/engine/CMakeLists.txt b/engine/CMakeLists.txt index 73b53dd7f..1f79339cd 100644 --- a/engine/CMakeLists.txt +++ b/engine/CMakeLists.txt @@ -3,10 +3,8 @@ set(ENGINE_ROOT_DIR "${PILOT_ROOT_DIR}/engine") set(THIRD_PARTY_DIR "${ENGINE_ROOT_DIR}/3rdparty") set(ENGINE_ASSET_DIR "/asset") -set(DEPLOY_CONFIG_DIR "/configs/deployment") -if(WIN32) - set(DEVELOP_CONFIG_DIR "/configs/development/windows") -endif() +set(DEPLOY_CONFIG_DIR "configs/deployment") +set(DEVELOP_CONFIG_DIR "configs/development") option(ENABLE_PHYSICS_DEBUG_RENDERER "Enable Physics Debug Renderer" OFF) diff --git a/engine/configs/development/windows/PilotEditor.ini b/engine/configs/development/PilotEditor.ini similarity index 100% rename from engine/configs/development/windows/PilotEditor.ini rename to engine/configs/development/PilotEditor.ini diff --git a/engine/source/editor/CMakeLists.txt b/engine/source/editor/CMakeLists.txt index 97a4386cb..662dd1e42 100644 --- a/engine/source/editor/CMakeLists.txt +++ b/engine/source/editor/CMakeLists.txt @@ -22,26 +22,23 @@ target_compile_options(${TARGET_NAME} PUBLIC "$<$: target_link_libraries(${TARGET_NAME} PilotRuntime) -if(NOT ENABLE_PHYSICS_DEBUG_RENDERER) - add_custom_command(TARGET ${TARGET_NAME} POST_BUILD - COMMAND ${CMAKE_COMMAND} -E make_directory "${BINARY_ROOT_DIR}" - COMMAND ${CMAKE_COMMAND} -E copy "${ENGINE_ROOT_DIR}/${DEPLOY_CONFIG_DIR}/${TARGET_NAME}.ini" "${BINARY_ROOT_DIR}" - COMMAND ${CMAKE_COMMAND} -E copy "${ENGINE_ROOT_DIR}/${DEVELOP_CONFIG_DIR}/${TARGET_NAME}.ini" "${CMAKE_CURRENT_BINARY_DIR}" - COMMAND ${CMAKE_COMMAND} -E copy_directory "${CMAKE_CURRENT_SOURCE_DIR}/resource" "${BINARY_ROOT_DIR}/resource" - COMMAND ${CMAKE_COMMAND} -E copy_directory "$/" "${BINARY_ROOT_DIR}" - COMMAND ${CMAKE_COMMAND} -E remove_directory "${BINARY_ROOT_DIR}/${ENGINE_ASSET_DIR}" - COMMAND ${CMAKE_COMMAND} -E copy_directory "${ENGINE_ROOT_DIR}/${ENGINE_ASSET_DIR}" "${BINARY_ROOT_DIR}/${ENGINE_ASSET_DIR}" +set(POST_BUILD_COMMANDS + COMMAND ${CMAKE_COMMAND} -E make_directory "${BINARY_ROOT_DIR}" + COMMAND ${CMAKE_COMMAND} -E copy_directory "${CMAKE_CURRENT_SOURCE_DIR}/resource" "${BINARY_ROOT_DIR}/resource" + COMMAND ${CMAKE_COMMAND} -E copy_directory "$/" "${BINARY_ROOT_DIR}" + COMMAND ${CMAKE_COMMAND} -E copy "${ENGINE_ROOT_DIR}/${DEPLOY_CONFIG_DIR}/${TARGET_NAME}.ini" "${BINARY_ROOT_DIR}" + COMMAND ${CMAKE_COMMAND} -E copy "${ENGINE_ROOT_DIR}/${DEVELOP_CONFIG_DIR}/${TARGET_NAME}.ini" "$/" + COMMAND ${CMAKE_COMMAND} -E remove_directory "${BINARY_ROOT_DIR}/${ENGINE_ASSET_DIR}" + COMMAND ${CMAKE_COMMAND} -E copy_directory "${ENGINE_ROOT_DIR}/${ENGINE_ASSET_DIR}" "${BINARY_ROOT_DIR}/${ENGINE_ASSET_DIR}" ) -else() - add_custom_command(TARGET ${TARGET_NAME} POST_BUILD - COMMAND ${CMAKE_COMMAND} -E make_directory "${BINARY_ROOT_DIR}" - COMMAND ${CMAKE_COMMAND} -E copy "${ENGINE_ROOT_DIR}/${DEPLOY_CONFIG_DIR}/${TARGET_NAME}.ini" "${BINARY_ROOT_DIR}" - COMMAND ${CMAKE_COMMAND} -E copy "${ENGINE_ROOT_DIR}/${DEVELOP_CONFIG_DIR}/${TARGET_NAME}.ini" "${CMAKE_CURRENT_BINARY_DIR}" - COMMAND ${CMAKE_COMMAND} -E copy_directory "${CMAKE_CURRENT_SOURCE_DIR}/resource" "${BINARY_ROOT_DIR}/resource" - COMMAND ${CMAKE_COMMAND} -E copy_directory "$/" "${BINARY_ROOT_DIR}" - COMMAND ${CMAKE_COMMAND} -E remove_directory "${BINARY_ROOT_DIR}/${ENGINE_ASSET_DIR}" - COMMAND ${CMAKE_COMMAND} -E copy_directory "${ENGINE_ROOT_DIR}/${ENGINE_ASSET_DIR}" "${BINARY_ROOT_DIR}/${ENGINE_ASSET_DIR}" + + + +if(ENABLE_PHYSICS_DEBUG_RENDERER) + set(POST_BUILD_COMMANDS ${POST_BUILD_COMMANDS} COMMAND ${CMAKE_COMMAND} -E remove_directory "${BINARY_ROOT_DIR}/${JOLT_ASSET_DIR}" COMMAND ${CMAKE_COMMAND} -E copy_directory "${ENGINE_ROOT_DIR}/${JOLT_ASSET_DIR}" "${BINARY_ROOT_DIR}/${JOLT_ASSET_DIR}" ) endif() + +add_custom_command(TARGET ${TARGET_NAME} ${POST_BUILD_COMMANDS}) diff --git a/engine/source/editor/source/main.cpp b/engine/source/editor/source/main.cpp index 16a849313..2fe7af270 100644 --- a/engine/source/editor/source/main.cpp +++ b/engine/source/editor/source/main.cpp @@ -1,3 +1,4 @@ +#include #include #include #include @@ -13,22 +14,23 @@ int main(int argc, char** argv) { - std::string config_file_path = "./PilotEditor.ini"; + std::filesystem::path executable_path(argv[0]); + std::filesystem::path config_file_path = executable_path.parent_path() / "PilotEditor.ini"; - Pilot::PilotEngine* engine = new Pilot::PilotEngine(); + Pilot::PilotEngine* engine = new Pilot::PilotEngine(); - engine->startEngine(config_file_path); - engine->initialize(); + engine->startEngine(config_file_path.generic_string()); + engine->initialize(); - Pilot::PilotEditor* editor = new Pilot::PilotEditor(); - editor->initialize(engine); + Pilot::PilotEditor* editor = new Pilot::PilotEditor(); + editor->initialize(engine); - editor->run(); + editor->run(); - editor->clear(); + editor->clear(); - engine->clear(); - engine->shutdownEngine(); + engine->clear(); + engine->shutdownEngine(); - return 0; + return 0; } diff --git a/engine/source/runtime/resource/asset_manager/asset_manager.h b/engine/source/runtime/resource/asset_manager/asset_manager.h index d96e445ff..45d0bd294 100644 --- a/engine/source/runtime/resource/asset_manager/asset_manager.h +++ b/engine/source/runtime/resource/asset_manager/asset_manager.h @@ -20,10 +20,11 @@ namespace Pilot bool loadAsset(const std::string& asset_url, AssetType& out_asset) const { // read json file to string - std::ifstream asset_json_file(getFullPath(asset_url)); + std::filesystem::path asset_path = getFullPath(asset_url); + std::ifstream asset_json_file(asset_path); if (!asset_json_file) { - LOG_ERROR("open file: {} failed!", asset_url); + LOG_ERROR("open file: {} failed!", asset_path.generic_string()); return false; } diff --git a/engine/source/runtime/resource/config_manager/config_manager.cpp b/engine/source/runtime/resource/config_manager/config_manager.cpp index ff6be04ba..4f26bfad1 100644 --- a/engine/source/runtime/resource/config_manager/config_manager.cpp +++ b/engine/source/runtime/resource/config_manager/config_manager.cpp @@ -2,12 +2,13 @@ #include "runtime/engine.h" +#include #include #include namespace Pilot { - void ConfigManager::initialize(const std::string& config_file_path) + void ConfigManager::initialize(const std::filesystem::path& config_file_path) { // read configs std::ifstream config_file(config_file_path); @@ -21,7 +22,7 @@ namespace Pilot std::string value = config_line.substr(seperate_pos + 1, config_line.length() - seperate_pos - 1); if (name == "BinaryRootFolder") { - m_root_folder = value; + m_root_folder = config_file_path.parent_path() / value; } else if (name == "AssetFolder") { diff --git a/engine/source/runtime/resource/config_manager/config_manager.h b/engine/source/runtime/resource/config_manager/config_manager.h index 0bd18b03a..fa1f460ac 100644 --- a/engine/source/runtime/resource/config_manager/config_manager.h +++ b/engine/source/runtime/resource/config_manager/config_manager.h @@ -9,7 +9,7 @@ namespace Pilot class ConfigManager { public: - void initialize(const std::string& config_file_path); + void initialize(const std::filesystem::path& config_file_path); const std::filesystem::path& getRootFolder() const; const std::filesystem::path& getAssetFolder() const; From a58b3fb95acb233dcb17528e6d8ebdc9686efeac Mon Sep 17 00:00:00 2001 From: Olorin Date: Mon, 13 Jun 2022 18:09:34 +0800 Subject: [PATCH 4/4] fix IDE launch --- engine/configs/development/PilotEditor.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/engine/configs/development/PilotEditor.ini b/engine/configs/development/PilotEditor.ini index 8cab6fbcd..5420ea11b 100644 --- a/engine/configs/development/PilotEditor.ini +++ b/engine/configs/development/PilotEditor.ini @@ -1,4 +1,4 @@ -BinaryRootFolder=../../../../bin +BinaryRootFolder=../../../../../bin AssetFolder=asset SchemaFolder=schema BigIconFile=resource/PilotEditorBigIcon.png