diff --git a/SHADE_Engine/src/Assets/SHAssetMacros.h b/SHADE_Engine/src/Assets/SHAssetMacros.h index 5ab1945d..566e34e2 100644 --- a/SHADE_Engine/src/Assets/SHAssetMacros.h +++ b/SHADE_Engine/src/Assets/SHAssetMacros.h @@ -40,6 +40,8 @@ typedef FMOD::Sound* SHSound; // Asset Meta Version constexpr std::string_view ASSET_META_VER { "1.0" }; +constexpr AssetID INVALID_ASSET_ID {0}; + // Asset type enum enum class AssetType : AssetTypeMeta { diff --git a/SHADE_Managed/src/Engine/ECS.cxx b/SHADE_Managed/src/Engine/ECS.cxx index ffdffd12..c388f0cd 100644 --- a/SHADE_Managed/src/Engine/ECS.cxx +++ b/SHADE_Managed/src/Engine/ECS.cxx @@ -28,6 +28,7 @@ of DigiPen Institute of Technology is prohibited. #include "Scene/SHSceneGraph.h" #include "Tools/Logger/SHLog.h" #include "Graphics\MiddleEnd\Interface\SHRenderable.h" +#include "Graphics\MiddleEnd\TextRendering\SHTextRenderableComponent.h" // Project Headers #include "Utility/Convert.hxx" #include "Utility/Debug.hxx" @@ -38,6 +39,7 @@ of DigiPen Institute of Technology is prohibited. #include "Components/CameraArm.hxx" #include "Components/Light.hxx" #include "Components\Renderable.hxx" +#include "Components\TextRenderable.hxx" namespace SHADE { @@ -321,6 +323,7 @@ namespace SHADE componentMap.Add(createComponentSet()); componentMap.Add(createComponentSet()); componentMap.Add(createComponentSet()); + componentMap.Add(createComponentSet()); } /*---------------------------------------------------------------------------------*/ diff --git a/SHADE_Managed/src/Scene/SceneManager.cxx b/SHADE_Managed/src/Scene/SceneManager.cxx new file mode 100644 index 00000000..1e139a95 --- /dev/null +++ b/SHADE_Managed/src/Scene/SceneManager.cxx @@ -0,0 +1,25 @@ +/************************************************************************************//*! +\file Input.hxx +\author Daniel Chua +\par email: yeechendaniel.chua@digipen.edu +\date Oct 16, 2022 +\brief Contains the definition of the managed SceneManager static class. + + Note: This file is written in C++17/CLI. + +Copyright (C) 2022 DigiPen Institute of Technology. +Reproduction or disclosure of this file or its contents without the prior written consent +of DigiPen Institute of Technology is prohibited. +*//*************************************************************************************/ + +#include "SHpch.h" +#include "SceneManager.hxx" +#include "Scene/SHSceneManager.h" + +namespace SHADE +{ + void SceneManager::ChangeScene(AssetID sceneAssetID) + { + SHSceneManager::RestartScene(sceneAssetID); + } +} \ No newline at end of file diff --git a/SHADE_Managed/src/Scene/SceneManager.hxx b/SHADE_Managed/src/Scene/SceneManager.hxx new file mode 100644 index 00000000..e1b30bc3 --- /dev/null +++ b/SHADE_Managed/src/Scene/SceneManager.hxx @@ -0,0 +1,26 @@ +/************************************************************************************//*! +\file Input.hxx +\author Daniel Chua +\par email: yeechendaniel.chua@digipen.edu +\date Oct 16, 2022 +\brief Contains the definition of the managed SceneManager static class. + + Note: This file is written in C++17/CLI. + +Copyright (C) 2022 DigiPen Institute of Technology. +Reproduction or disclosure of this file or its contents without the prior written consent +of DigiPen Institute of Technology is prohibited. +*//*************************************************************************************/ + + +#pragma once + +#include "Assets/SHAssetMacros.h" + +namespace SHADE +{ + public ref class SceneManager abstract sealed + { + static void ChangeScene(AssetID sceneAssetID); + }; +}