diff --git a/engine/core/include/engine.hpp b/engine/core/include/engine.hpp index 06eb9dd..7280aa8 100755 --- a/engine/core/include/engine.hpp +++ b/engine/core/include/engine.hpp @@ -54,10 +54,10 @@ namespace prism { /// Command line arguments, can be empty. std::vector command_line_arguments; - /** Sets the app object. - @param app The app object to set. Must not be null. + /** Sets the p_app object. + @param p_app The p_app object to set. Must not be null. */ - void set_app(app* app); + void set_app(app* p_app); /** Gets the current app object @return The current app object. Can be null. @@ -102,9 +102,9 @@ namespace prism { [[nodiscard]] bool is_quitting() const; /** Set the GFX api to use. - @param gfx The GFX object to use. Must not be null. + @param p_gfx The GFX object to use. Must not be null. */ - void set_gfx(GFX* gfx); + void set_gfx(GFX* p_gfx); /** Get the current GFX api. @return The current GFX api. Can be null. @@ -134,7 +134,7 @@ namespace prism { @param path The scene file path. @return Returns a instance of the scene is successful, and nullptr on failure. */ - Scene* load_scene(file::Path path); + Scene* load_scene(const file::Path& path); /** Save the current scene to disk. @param path The absolute file path. @@ -145,7 +145,7 @@ namespace prism { @param path The screen file path. @return Returns a instance of the screen if successful, and nullptr on failure. */ - ui::Screen* load_screen(file::Path path); + ui::Screen* load_screen(const file::Path& path); /** Set the current screen. @param screen The screen object to set as current. Can be null. @@ -162,7 +162,7 @@ namespace prism { @param path The prefab file path. @param override_name If not empty, the root object's new name. Defaulted to a empty string. */ - Object add_prefab(Scene& scene, file::Path path, std::string_view override_name = ""); + Object add_prefab(Scene& scene, const file::Path& path, std::string_view override_name = ""); /** Save a tree of objects as a prefab to disk. @param root The parent object to save as a prefab. @@ -180,12 +180,12 @@ namespace prism { @param path The animation file path. @return An animation. */ - Animation load_animation(file::Path path); + Animation load_animation(const file::Path& path); /** Load a cutscene from disk. This changes the current cutscene. @param path The cutscene file path. */ - void load_cutscene(file::Path path); + void load_cutscene(const file::Path& path); /** Saves the current cutscene to disk. @param path The absolute file path. @@ -254,7 +254,7 @@ namespace prism { @return A localized string if the key is found, or an empty string if not found. @note Having no localization loaded will always return a empty string. */ - std::string localize(std::string id); + std::string localize(const std::string& id); /** Adds a timer to the list of timers. @param timer The timer to add. @@ -362,7 +362,7 @@ namespace prism { void calculate_bone(Mesh& mesh, const Mesh::Part& part, Bone& bone, const Bone* parent_bone = nullptr); void calculate_object(Scene& scene, Object object, Object parent_object = NullObject); - Shot* get_shot(float time); + Shot* get_shot(float time) const; void update_animation(const Animation& anim, float time); void update_cutscene(float time); diff --git a/engine/core/src/engine.cpp b/engine/core/src/engine.cpp index 52c3dba..91ee8ed 100755 --- a/engine/core/src/engine.cpp +++ b/engine/core/src/engine.cpp @@ -1,6 +1,7 @@ #include "engine.hpp" #include +#include #include #include "scene.hpp" @@ -28,7 +29,7 @@ using prism::engine; engine::engine(const int argc, char* argv[]) { console::info(System::Core, "Prism Engine loading..."); - console::register_command("test_cmd", console::ArgumentFormat(0), [](const console::Arguments) { + console::register_command("test_cmd", console::ArgumentFormat(0), [](const console::Arguments&) { console::info(System::Core, "Test cmd!"); }); @@ -39,7 +40,7 @@ engine::engine(const int argc, char* argv[]) { }); for(int i = 0; i < argc; i++) - command_line_arguments.push_back(argv[i]); + command_line_arguments.emplace_back(argv[i]); input = std::make_unique(); physics = std::make_unique(); @@ -47,12 +48,12 @@ engine::engine(const int argc, char* argv[]) { assetm = std::make_unique(); } -engine::~engine() {} +engine::~engine() = default; -void engine::set_app(prism::app* app) { - Expects(app != nullptr); +void engine::set_app(prism::app* p_app) { + Expects(p_app != nullptr); - this->app = app; + this->app = p_app; } prism::app* engine::get_app() const { @@ -97,8 +98,10 @@ void engine::prepare_quit() { app->prepare_quit(); } -void engine::set_gfx(GFX* gfx) { - this->gfx = gfx; +void engine::set_gfx(GFX* p_gfx) { + Expects(p_gfx != nullptr); + + this->gfx = p_gfx; } GFX* engine::get_gfx() { @@ -126,7 +129,7 @@ void engine::create_empty_scene() { current_scene = scenes.back().get(); } -Scene* engine::load_scene(const file::Path path) { +Scene* engine::load_scene(const file::Path& path) { Expects(!path.empty()); auto file = file::open(path); @@ -153,7 +156,7 @@ Scene* engine::load_scene(const file::Path path) { transform.rotation = obj["rotation"]; transform.scale = obj["scale"]; } else { - auto o = load_object(*scene.get(), obj); + auto o = load_object(*scene, obj); if(obj.contains("parent")) parentQueue[o] = obj["parent"]; @@ -186,7 +189,7 @@ void engine::save_scene(const std::string_view path) { out << j; } -ui::Screen* engine::load_screen(const file::Path path) { +ui::Screen* engine::load_screen(const file::Path& path) { Expects(!path.empty()); return new ui::Screen(path); @@ -219,7 +222,7 @@ AnimationChannel engine::load_animation(nlohmann::json a) { return animation; } -Animation engine::load_animation(const file::Path path) { +Animation engine::load_animation(const file::Path& path) { Expects(!path.empty()); auto file = file::open(path, true); @@ -277,7 +280,7 @@ Animation engine::load_animation(const file::Path path) { return anim; } -void engine::load_cutscene(const file::Path path) { +void engine::load_cutscene(const file::Path& path) { Expects(!path.empty()); cutscene = std::make_unique(); @@ -354,7 +357,7 @@ void engine::save_cutscene(const std::string_view path) { out << j; } -Object engine::add_prefab(Scene& scene, const file::Path path, const std::string_view override_name) { +Object engine::add_prefab(Scene& scene, const file::Path& path, const std::string_view override_name) { Expects(!path.empty()); auto file = file::open(path); @@ -416,7 +419,7 @@ void engine::add_window(void* native_handle, const int identifier, const prism:: gfx->initialize_view(native_handle, identifier, drawable_extent.width, drawable_extent.height); - Window* window = new Window(); + auto* window = new Window(); windows.push_back(window); window->identifier = identifier; @@ -489,7 +492,7 @@ bool engine::has_localization(const std::string_view id) const { return strings.count(id.data()); } -std::string engine::localize(const std::string id) { +std::string engine::localize(const std::string& id) { Expects(!id.empty()); return strings[id]; @@ -561,7 +564,7 @@ void engine::calculate_object(Scene& scene, Object object, const Object parent_o calculate_object(scene, child, object); } -Shot* engine::get_shot(const float time) { +Shot* engine::get_shot(const float time) const { for(auto& shot : cutscene->shots) { if(time >= shot.begin && time <= (shot.begin + shot.length)) return &shot; @@ -816,7 +819,7 @@ void engine::play_animation(Animation animation, Object object, bool looping) { return; AnimationTarget target; - target.animation = animation; + target.animation = std::move(animation); target.target = object; target.looping = looping;