From 7cf434d8779ede00bd779c39bde441ff969decd6 Mon Sep 17 00:00:00 2001 From: Green Sky Date: Wed, 25 Nov 2020 21:41:36 +0100 Subject: [PATCH] update to entt master (v3.6.0-pre) --- external/entt | 2 +- .../imgui/src/mm/imgui/imgui_entt_entity_editor.hpp | 9 +++++---- .../src/mm/imgui/widgets/texture_resource_manager.cpp | 1 + .../src/mm/opengl/render_tasks/simple_rect.cpp | 2 +- .../opengl_renderer/src/mm/services/opengl_renderer.cpp | 1 + framework/resource_manager/src/mm/resource_manager.hpp | 2 ++ framework/tilemap/src/mm/tilemap.cpp | 1 + screens/mm_logo/src/mm/screens/mm_logo_screen.cpp | 1 + 8 files changed, 13 insertions(+), 6 deletions(-) diff --git a/external/entt b/external/entt index 3a3a2c2..820d524 160000 --- a/external/entt +++ b/external/entt @@ -1 +1 @@ -Subproject commit 3a3a2c270273c8b45294f9f6135081fdb1628574 +Subproject commit 820d52428f3b3cb1a49652cbccf3c742fb960538 diff --git a/framework/imgui/src/mm/imgui/imgui_entt_entity_editor.hpp b/framework/imgui/src/mm/imgui/imgui_entt_entity_editor.hpp index 3774d8a..351acfc 100644 --- a/framework/imgui/src/mm/imgui/imgui_entt_entity_editor.hpp +++ b/framework/imgui/src/mm/imgui/imgui_entt_entity_editor.hpp @@ -4,7 +4,6 @@ #include #include #include -#include #include #include @@ -70,7 +69,8 @@ template class EntityEditor { public: using Registry = entt::basic_registry; - using ComponentTypeID = ENTT_ID_TYPE; + //using ComponentTypeID = ENTT_ID_TYPE; + using ComponentTypeID = entt::id_type; struct ComponentInfo { using Callback = std::function; @@ -93,7 +93,8 @@ public: template ComponentInfo& registerComponent(const ComponentInfo& component_info) { - auto index = entt::type_info::id(); + //auto index = entt::type_info::id(); + auto index = entt::type_hash::value(); [[maybe_unused]] auto [it, insert_result] = component_infos.insert_or_assign(index, component_info); MM_IEEE_ASSERT(insert_result); return std::get(*it); @@ -234,7 +235,7 @@ public: }); } else { auto view = registry.runtime_view(comp_list.begin(), comp_list.end()); - ImGui::Text("%lu Entities Matching:", view.size()); + ImGui::Text("%lu Entities Matching:", view.size_hint()); if (ImGui::BeginChild("entity list")) { for (auto e : view) { diff --git a/framework/imgui/src/mm/imgui/widgets/texture_resource_manager.cpp b/framework/imgui/src/mm/imgui/widgets/texture_resource_manager.cpp index ac7087e..6e708c4 100644 --- a/framework/imgui/src/mm/imgui/widgets/texture_resource_manager.cpp +++ b/framework/imgui/src/mm/imgui/widgets/texture_resource_manager.cpp @@ -30,6 +30,7 @@ void TextureResourceManagerList(void) { } void TextureResourceManagerLoader(MM::Engine& engine) { + using namespace entt::literals; auto& rm = MM::ResourceManager::ref(); static MM::OpenGL::Texture::handle texture = rm.get("default"_hs); diff --git a/framework/opengl_renderer/src/mm/opengl/render_tasks/simple_rect.cpp b/framework/opengl_renderer/src/mm/opengl/render_tasks/simple_rect.cpp index d165fa1..ad97938 100644 --- a/framework/opengl_renderer/src/mm/opengl/render_tasks/simple_rect.cpp +++ b/framework/opengl_renderer/src/mm/opengl/render_tasks/simple_rect.cpp @@ -79,7 +79,7 @@ void SimpleRect::render(Services::OpenGLRenderer& rs, Engine& engine) { auto view = scene.view(); for (auto& e : view) { - auto& t = view.get(e); + auto& t = view.get(e); _shader->setUniformMat4f("_WVP", vp * t.getTransform4(t.position.y/10.f + 500.f)); diff --git a/framework/opengl_renderer/src/mm/services/opengl_renderer.cpp b/framework/opengl_renderer/src/mm/services/opengl_renderer.cpp index ec08b71..1b530ff 100644 --- a/framework/opengl_renderer/src/mm/services/opengl_renderer.cpp +++ b/framework/opengl_renderer/src/mm/services/opengl_renderer.cpp @@ -111,6 +111,7 @@ bool OpenGLRenderer::enable(Engine& engine) { } { // default texures + using namespace entt::literals; auto& rm_t = MM::ResourceManager::ref(); if (!rm_t.contains("default"_hs)) { if (!rm_t.load("default", default_png, default_png_len)) { diff --git a/framework/resource_manager/src/mm/resource_manager.hpp b/framework/resource_manager/src/mm/resource_manager.hpp index 2494dc2..1963e80 100644 --- a/framework/resource_manager/src/mm/resource_manager.hpp +++ b/framework/resource_manager/src/mm/resource_manager.hpp @@ -108,6 +108,8 @@ class ResourceManager { } handle_type get(const res_id_type id) const { + using namespace entt::literals; + auto it = _storage.find(id); if (it == _storage.end()) { if (id != "default"_hs) { diff --git a/framework/tilemap/src/mm/tilemap.cpp b/framework/tilemap/src/mm/tilemap.cpp index 330bb34..9923d07 100644 --- a/framework/tilemap/src/mm/tilemap.cpp +++ b/framework/tilemap/src/mm/tilemap.cpp @@ -210,6 +210,7 @@ bool Tilemap::parseTiled_Layers(MM::Engine& engine, MM::Scene& scene, nlohmann:: } bool Tilemap::parseTiled_Tileset(MM::Engine& engine, std::string_view src_path, nlohmann::json& jts, uint32_t first_g_id) { + using namespace entt::literals; auto& fs = engine.getService(); auto& rm_t = MM::ResourceManager::ref(); diff --git a/screens/mm_logo/src/mm/screens/mm_logo_screen.cpp b/screens/mm_logo/src/mm/screens/mm_logo_screen.cpp index dfd360c..098ce2a 100644 --- a/screens/mm_logo/src/mm/screens/mm_logo_screen.cpp +++ b/screens/mm_logo/src/mm/screens/mm_logo_screen.cpp @@ -24,6 +24,7 @@ namespace MM::Screens { void create_mm_logo(MM::Engine& engine, MM::Services::ScreenDirector::Screen& screen, const std::string next_screen, float anim_duration, float screen_duration) { + using namespace entt::literals; screen.start_enable.push_back(engine.type()); screen.start_enable.push_back(engine.type());