Added more folders to ProjectManager

This commit is contained in:
OusmBlueNinja 2025-05-10 13:31:09 -05:00
parent 3eb38d67f2
commit d735e31177
3 changed files with 43 additions and 16 deletions

View File

@ -1,2 +1,3 @@
[COMPILE] g++ -std=c++20 -Wall -g -DGLM_ENABLE_EXPERIMENTAL -O2 -static -static-libstdc++ -static-libgcc -Isrc/include -Isrc/include/lua -Isrc/vendor -Isrc/vendor/imgui -Isrc/vendor/box2d -Isrc/vendor/xxhash -Isrc/vendor/miniaudio -Isrc/vendor/imguizmo -IC:/msys64/mingw64/include -Isrc\vendor\imgui -IC:\msys64\mingw64\lib\libyaml-cpp.a -MMD -MP -c src\src\core\functions\ProjectManager.cpp -o src\build\core\functions\ProjectManager.o
[COMPILE] g++ -std=c++20 -Wall -g -DGLM_ENABLE_EXPERIMENTAL -O2 -static -static-libstdc++ -static-libgcc -Isrc/include -Isrc/include/lua -Isrc/vendor -Isrc/vendor/imgui -Isrc/vendor/box2d -Isrc/vendor/xxhash -Isrc/vendor/miniaudio -Isrc/vendor/imguizmo -IC:/msys64/mingw64/include -IC:\msys64\mingw64\lib\libyaml-cpp.a -Isrc\vendor\imgui -MMD -MP -c src\src\core\functions\ProjectManager.cpp -o src\build\core\functions\ProjectManager.o
[COMPILE] g++ -std=c++20 -Wall -g -DGLM_ENABLE_EXPERIMENTAL -O2 -static -static-libstdc++ -static-libgcc -Isrc/include -Isrc/include/lua -Isrc/vendor -Isrc/vendor/imgui -Isrc/vendor/box2d -Isrc/vendor/xxhash -Isrc/vendor/miniaudio -Isrc/vendor/imguizmo -IC:/msys64/mingw64/include -IC:\msys64\mingw64\lib\libyaml-cpp.a -Isrc\vendor\imgui -MMD -MP -c src\src\core\utils\EngineConfig.cpp -o src\build\core\utils\EngineConfig.o
[LINK] g++ src\build\Engine.o src\build\main.o src\build\Renderer.o src\build\Components\AnimationComponent.o src\build\Components\AudioPlayerComponent.o src\build\Components\CameraComponent.o src\build\Components\LightComponent.o src\build\Components\ParticleComponent.o src\build\Components\PathFollowerComponent.o src\build\Components\PhysicsComponent.o src\build\Components\ScriptComponent.o src\build\Components\SpriteComponent.o src\build\Components\TextComonent.o src\build\Components\TilemapComponent.o src\build\core\audio\AudioEngine.o src\build\core\functions\Prefab.o src\build\core\functions\ProjectManager.o src\build\core\functions\ScenePacker.o src\build\core\scripts\LuaGlobalBridge.o src\build\core\scripts\ScriptCore.o src\build\core\utils\AssetManager.o src\build\core\utils\EngineConfig.o src\build\core\utils\ExceptionHandler.o src\build\core\utils\FileDialog.o src\build\core\utils\input.o src\build\core\utils\LoadingWindow.o src\build\core\utils\Logging.o src\build\core\utils\Popup.o src\build\core\utils\Profiler.o src\build\core\utils\Texture.o src\build\core\utils\utils.o src\build\editor\utils\Themes.o src\build\editor\windows\AssetBrowser.o src\build\editor\windows\AudioInfo.o src\build\editor\windows\Inspector.o src\build\editor\windows\LuaGlobals.o src\build\editor\windows\SceneTree.o src\build\Entitys\Object.o src\build\utils\GameObjectsList.o src\build\utils\Shader.o src\build\utils\UID.o src\build\lapi.o src\build\lauxlib.o src\build\lbaselib.o src\build\lcode.o src\build\lcorolib.o src\build\lctype.o src\build\ldblib.o src\build\ldebug.o src\build\ldo.o src\build\ldump.o src\build\lfunc.o src\build\lgc.o src\build\linit.o src\build\liolib.o src\build\llex.o src\build\lmathlib.o src\build\lmem.o src\build\loadlib.o src\build\lobject.o src\build\lopcodes.o src\build\loslib.o src\build\lparser.o src\build\lstate.o src\build\lstring.o src\build\lstrlib.o src\build\ltable.o src\build\ltablib.o src\build\ltm.o src\build\lua.o src\build\luac.o src\build\lundump.o src\build\lutf8lib.o src\build\lvm.o src\build\lzio.o src\build\imgui.o src\build\imgui_demo.o src\build\imgui_draw.o src\build\imgui_impl_glfw.o src\build\imgui_impl_opengl3.o src\build\imgui_tables.o src\build\imgui_widgets.o src\build\aabb.o src\build\arena_allocator.o src\build\array.o src\build\bitset.o src\build\body.o src\build\broad_phase.o src\build\constraint_graph.o src\build\contact.o src\build\contact_solver.o src\build\core.o src\build\distance.o src\build\distance_joint.o src\build\dynamic_tree.o src\build\geometry.o src\build\hull.o src\build\id_pool.o src\build\island.o src\build\joint.o src\build\manifold.o src\build\math_functions.o src\build\motor_joint.o src\build\mouse_joint.o src\build\mover.o src\build\prismatic_joint.o src\build\revolute_joint.o src\build\sensor.o src\build\shape.o src\build\solver.o src\build\solver_set.o src\build\table.o src\build\timer.o src\build\types.o src\build\weld_joint.o src\build\wheel_joint.o src\build\world.o src\build\xxhash.o src\build\miniaudio.o src\build\ImGuizmo.o -o src\build\app.exe -LC:\msys64\mingw64\lib -lglfw3 -lglew32 -lopengl32 -lgdi32 -lyaml-cpp -lcomdlg32 -lssl -lcrypto -ldbghelp -lz -lfreetype

View File

@ -15,6 +15,43 @@ std::string ProjectManager::s_currentProjectName;
std::string ProjectManager::s_defaultScene;
bool CreateDirectories(const fs::path& baseDir)
{
static const std::vector<std::string> subdirs = {
"Prefabs",
"Scenes",
"Images",
"Sounds",
"Fomts",
"Shaders",
"Scripts",
"Videos",
};
std::error_code ec;
bool allOk = true;
fs::path assetsRoot = baseDir / "Assets";
for (const auto& name : subdirs)
{
Logger::LogVerbose("Creating Folder: '%s'", name.c_str());
fs::create_directories(assetsRoot / name, ec);
if (ec)
{
Logger::LogError("Could not ensure %s dir: %s",
name.c_str(),
ec.message().c_str());
allOk = false;
}
}
return allOk;
}
bool ProjectManager::Init()
{
s_currentProjectPath.clear();
@ -60,16 +97,7 @@ bool ProjectManager::LoadProject(const std::string& projectPath,
s_currentProjectPath = projectPath;
s_currentProjectName = savedName;
std::error_code ec;
fs::create_directories(baseDir / "Assets" / "Prefabs", ec);
if (ec)
Logger::LogError("Could not ensure Prefabs dir: %s",
ec.message().c_str());
fs::create_directories(baseDir / "Assets" / "Scenes", ec);
if (ec)
Logger::LogError("Could not ensure Scenes dir: %s",
ec.message().c_str());
CreateDirectories(baseDir);
return true;
}
@ -121,10 +149,8 @@ bool ProjectManager::SaveProject(const std::string& projectPath,
Logger::LogOk("Saved project '%s' at '%s'",
projectName.c_str(), projectPath.c_str());
fs::create_directories(baseDir / "asset" / "Prefabs", ec);
if (ec)
Logger::LogError("Could not create Prefabs dir: %s",
ec.message().c_str());
CreateDirectories(baseDir);
s_currentProjectPath = projectPath;
s_currentProjectName = projectName;

View File

@ -12,7 +12,7 @@
//! Macro Fuckery my Gz
EngineConfig g_engineConfig{
.version = "0.11.3",
.version = "0.11.7",
.gl_version = "430",
.gl_maxLight = 512,
.settings = UserSettings{}