From fb66a2d09df7c597bba8f2a3bd9c1ab3e5376b4d Mon Sep 17 00:00:00 2001 From: Isuru Samarathunga Date: Sat, 18 Oct 2025 14:13:36 +0530 Subject: [PATCH] Fixes --- Engine/Src/Imp/CPP/InputManager.cpp | 103 ++++++++++++++++++++++------ Engine/Src/Imp/CPP/UI.cpp | 78 +++++++++++++-------- Engine/Src/Imp/HPP/InputManager.hpp | 7 ++ Engine/Src/Inc/IAEngine/Engine.hpp | 6 ++ Engine/Src/Inc/IAEngine/UI.hpp | 4 ++ Resources/HUD/gamepad_dir_down.png | Bin 0 -> 1760 bytes Resources/HUD/gamepad_dir_left.png | Bin 0 -> 1654 bytes Resources/HUD/gamepad_dir_right.png | Bin 0 -> 1718 bytes Resources/HUD/gamepad_dir_up.png | Bin 0 -> 1859 bytes Vendor/CMakeLists.txt | 10 ++- 10 files changed, 157 insertions(+), 51 deletions(-) create mode 100644 Resources/HUD/gamepad_dir_down.png create mode 100644 Resources/HUD/gamepad_dir_left.png create mode 100644 Resources/HUD/gamepad_dir_right.png create mode 100644 Resources/HUD/gamepad_dir_up.png diff --git a/Engine/Src/Imp/CPP/InputManager.cpp b/Engine/Src/Imp/CPP/InputManager.cpp index eabc26b..4db4a9f 100644 --- a/Engine/Src/Imp/CPP/InputManager.cpp +++ b/Engine/Src/Imp/CPP/InputManager.cpp @@ -46,7 +46,7 @@ namespace ia::iae case SDL_EVENT_KEY_DOWN: s_keys[event->key.scancode] = true; break; - + case SDL_EVENT_KEY_UP: s_keys[event->key.scancode] = false; break; @@ -62,10 +62,8 @@ namespace ia::iae Vec2 InputManager::GetAxis() { - return Vec2{ - IsKeyDown(s_axisInputs[3]) + IsKeyDown(s_axisInputs[2]) * -1, - IsKeyDown(s_axisInputs[1]) + IsKeyDown(s_axisInputs[0]) * -1 - }; + return Vec2{IsKeyDown(s_axisInputs[3]) + IsKeyDown(s_axisInputs[2]) * -1, + IsKeyDown(s_axisInputs[1]) + IsKeyDown(s_axisInputs[0]) * -1}; } VOID InputManager::SwitchModeToText() @@ -100,42 +98,42 @@ namespace ia::iae BOOL InputManager::IsActionDown(IN Handle action) { - const auto& t = s_actions[action]; - for(const auto& k : t) - if(IsKeyDown(k)) + const auto &t = s_actions[action]; + for (const auto &k : t) + if (IsKeyDown(k)) return true; return false; } BOOL InputManager::WasActionPressed(IN Handle action) { - const auto& t = s_actions[action]; - for(const auto& k : t) - if(WasKeyPressed(k)) + const auto &t = s_actions[action]; + for (const auto &k : t) + if (WasKeyPressed(k)) return true; return false; } BOOL InputManager::WasActionReleased(IN Handle action) { - const auto& t = s_actions[action]; - for(const auto& k : t) - if(WasKeyReleased(k)) + const auto &t = s_actions[action]; + for (const auto &k : t) + if (WasKeyReleased(k)) return true; return false; } - BOOL InputManager::IsActionDown(IN CONST String& action) + BOOL InputManager::IsActionDown(IN CONST String &action) { return IsActionDown(s_actionNames[action]); } - BOOL InputManager::WasActionPressed(IN CONST String& action) + BOOL InputManager::WasActionPressed(IN CONST String &action) { return WasActionPressed(s_actionNames[action]); } - BOOL InputManager::WasActionReleased(IN CONST String& action) + BOOL InputManager::WasActionReleased(IN CONST String &action) { return WasActionReleased(s_actionNames[action]); } @@ -144,7 +142,7 @@ namespace ia::iae { s_actions.pushBack({key}); const auto handle = s_actions.size() - 1; - s_actionNames[name] = handle; + s_actionNames[name] = handle; return handle; } @@ -155,6 +153,39 @@ namespace ia::iae s_axisInputs[2] = leftKey; s_axisInputs[3] = rightKey; } + + VOID InputManager::SetKey(IN InputKey key, IN BOOL state) + { + s_keys[(UINT8) key] = state; + } + + VOID InputManager::SetAxis(IN BOOL up, IN BOOL down, IN BOOL left, IN BOOL right) + { + s_keys[(UINT8) s_axisInputs[0]] = up; + s_keys[(UINT8) s_axisInputs[1]] = down; + s_keys[(UINT8) s_axisInputs[2]] = left; + s_keys[(UINT8) s_axisInputs[3]] = right; + } + + VOID InputManager::SetAxisUp(IN BOOL v) + { + s_keys[(UINT8) s_axisInputs[0]] = v; + } + + VOID InputManager::SetAxisDown(IN BOOL v) + { + s_keys[(UINT8) s_axisInputs[1]] = v; + } + + VOID InputManager::SetAxisLeft(IN BOOL v) + { + s_keys[(UINT8) s_axisInputs[2]] = v; + } + + VOID InputManager::SetAxisRight(IN BOOL v) + { + s_keys[(UINT8) s_axisInputs[3]] = v; + } } // namespace ia::iae namespace ia::iae @@ -209,17 +240,17 @@ namespace ia::iae return InputManager::WasActionReleased(action); } - BOOL Engine::IsInputActionDown(IN CONST String& action) + BOOL Engine::IsInputActionDown(IN CONST String &action) { return InputManager::IsActionDown(action); } - BOOL Engine::WasInputActionPressed(IN CONST String& action) + BOOL Engine::WasInputActionPressed(IN CONST String &action) { return InputManager::WasActionPressed(action); } - BOOL Engine::WasInputActionReleased(IN CONST String& action) + BOOL Engine::WasInputActionReleased(IN CONST String &action) { return InputManager::WasActionReleased(action); } @@ -233,4 +264,34 @@ namespace ia::iae { InputManager::BindAxis(upKey, downKey, leftKey, rightKey); } + + VOID Engine::SetKey(IN InputKey key, IN BOOL state) + { + InputManager::SetKey(key, state); + } + + VOID Engine::SetAxis(IN BOOL up, IN BOOL down, IN BOOL left, IN BOOL right) + { + InputManager::SetAxis(up, down, left, right); + } + + VOID Engine::SetAxisUp(IN BOOL v) + { + InputManager::SetAxisUp(v); + } + + VOID Engine::SetAxisDown(IN BOOL v) + { + InputManager::SetAxisDown(v); + } + + VOID Engine::SetAxisLeft(IN BOOL v) + { + InputManager::SetAxisLeft(v); + } + + VOID Engine::SetAxisRight(IN BOOL v) + { + InputManager::SetAxisRight(v); + } } // namespace ia::iae \ No newline at end of file diff --git a/Engine/Src/Imp/CPP/UI.cpp b/Engine/Src/Imp/CPP/UI.cpp index 5e66397..3366e72 100644 --- a/Engine/Src/Imp/CPP/UI.cpp +++ b/Engine/Src/Imp/CPP/UI.cpp @@ -57,33 +57,33 @@ namespace ia::iae VOID AddClickListener(IN Rml::Element *element, IN std::function callback) { - element->AddEventListener("click", this); + element->AddEventListener(Rml::EventId::Click, this); m_clickCallbacks[element->GetId().c_str()] = callback; } - // VOID AddHoverEnterListener(IN PCCHAR elementId, IN std::function callback) - //{ - // m_document->GetElementById(elementId)->AddEventListener("mouseover", this); - // m_hoverEnterCallbacks[elementId] = callback; - // } - // - // VOID AddHoverExitListener(IN PCCHAR elementId, IN std::function callback) - //{ - // m_document->GetElementById(elementId)->AddEventListener("mouseout", this); - // m_hoverExitCallbacks[elementId] = callback; - //} - // - // VOID AddPointerDownListener(IN PCCHAR elementId, IN std::function callback) - //{ - // m_document->GetElementById(elementId)->AddEventListener("mousedown", this); - // m_pointerDownCallbacks[elementId] = callback; - //} - // - // VOID AddPointerUpListener(IN PCCHAR elementId, IN std::function callback) - //{ - // m_document->GetElementById(elementId)->AddEventListener("mouseup", this); - // m_pointerUpCallbacks[elementId] = callback; - //} + VOID AddPointerDownListener(IN Rml::Element *element, IN std::function callback) + { + element->AddEventListener(Rml::EventId::Mousedown, this); + m_pointerDownCallbacks[element->GetId().c_str()] = callback; + } + + VOID AddPointerUpListener(IN Rml::Element *element, IN std::function callback) + { + element->AddEventListener(Rml::EventId::Mouseup, this); + m_pointerUpCallbacks[element->GetId().c_str()] = callback; + } + + VOID AddPointerEnterListener(IN Rml::Element *element, IN std::function callback) + { + element->AddEventListener(Rml::EventId::Mouseover, this); + m_hoverEnterCallbacks[element->GetId().c_str()] = callback; + } + + VOID AddPointerExitListener(IN Rml::Element *element, IN std::function callback) + { + element->AddEventListener(Rml::EventId::Mouseout, this); + m_hoverExitCallbacks[element->GetId().c_str()] = callback; + } VOID ProcessEvent(IN Rml::Event &event) { @@ -101,13 +101,15 @@ namespace ia::iae m_hoverExitCallbacks[event.GetTargetElement()->GetId().c_str()](); break; - case Rml::EventId::Mousedown: + case Rml::EventId::Mousedown: { m_pointerDownCallbacks[event.GetTargetElement()->GetId().c_str()](); - break; + } + break; - case Rml::EventId::Mouseup: + case Rml::EventId::Mouseup: { m_pointerUpCallbacks[event.GetTargetElement()->GetId().c_str()](); - break; + } + break; default: break; @@ -490,6 +492,26 @@ namespace ia::iae { g_eventListener.AddClickListener(g_document->GetElementById(elementId), callback); } + + VOID UI::AddPointerUpEvent(IN PCCHAR elementId, IN std::function callback) + { + g_eventListener.AddPointerUpListener(g_document->GetElementById(elementId), callback); + } + + VOID UI::AddPointerDownEvent(IN PCCHAR elementId, IN std::function callback) + { + g_eventListener.AddPointerDownListener(g_document->GetElementById(elementId), callback); + } + + VOID UI::AddPointerExitEvent(IN PCCHAR elementId, IN std::function callback) + { + g_eventListener.AddPointerExitListener(g_document->GetElementById(elementId), callback); + } + + VOID UI::AddPointerEnterEvent(IN PCCHAR elementId, IN std::function callback) + { + g_eventListener.AddPointerEnterListener(g_document->GetElementById(elementId), callback); + } } // namespace ia::iae namespace ia::iae diff --git a/Engine/Src/Imp/HPP/InputManager.hpp b/Engine/Src/Imp/HPP/InputManager.hpp index d3de52f..8d09c2d 100644 --- a/Engine/Src/Imp/HPP/InputManager.hpp +++ b/Engine/Src/Imp/HPP/InputManager.hpp @@ -46,6 +46,13 @@ namespace ia::iae STATIC Handle BindAction(IN CONST String &name, IN InputKey key); STATIC VOID BindAxis(IN InputKey upKey, IN InputKey downKey, IN InputKey leftKey, IN InputKey rightKey); + STATIC VOID SetAxisUp(IN BOOL v); + STATIC VOID SetAxisDown(IN BOOL v); + STATIC VOID SetAxisLeft(IN BOOL v); + STATIC VOID SetAxisRight(IN BOOL v); + STATIC VOID SetKey(IN InputKey key, IN BOOL state); + STATIC VOID SetAxis(IN BOOL up, IN BOOL down, IN BOOL left, IN BOOL right); + private: STATIC BOOL s_keys[256]; STATIC BOOL s_prevKeys[256]; diff --git a/Engine/Src/Inc/IAEngine/Engine.hpp b/Engine/Src/Inc/IAEngine/Engine.hpp index 242262f..9992e17 100644 --- a/Engine/Src/Inc/IAEngine/Engine.hpp +++ b/Engine/Src/Inc/IAEngine/Engine.hpp @@ -117,6 +117,12 @@ namespace ia::iae STATIC BOOL WasInputActionReleased(IN CONST String &action); STATIC Handle BindInputAction(IN CONST String &name, IN InputKey key); STATIC VOID BindInputAxis(IN InputKey upKey, IN InputKey downKey, IN InputKey leftKey, IN InputKey rightKey); + STATIC VOID SetAxisUp(IN BOOL v); + STATIC VOID SetAxisDown(IN BOOL v); + STATIC VOID SetAxisLeft(IN BOOL v); + STATIC VOID SetAxisRight(IN BOOL v); + STATIC VOID SetKey(IN InputKey key, IN BOOL state); + STATIC VOID SetAxis(IN BOOL up, IN BOOL down, IN BOOL left, IN BOOL right); // Utility Functions STATIC String ReadTextAsset(IN CONST String& path); diff --git a/Engine/Src/Inc/IAEngine/UI.hpp b/Engine/Src/Inc/IAEngine/UI.hpp index 16a07cb..7392ec3 100644 --- a/Engine/Src/Inc/IAEngine/UI.hpp +++ b/Engine/Src/Inc/IAEngine/UI.hpp @@ -28,6 +28,10 @@ namespace ia::iae STATIC VOID SetMarkup(IN CONST String &markup, IN CONST String &styles); STATIC VOID AddClickEvent(IN PCCHAR elementId, IN std::function callback); + STATIC VOID AddPointerUpEvent(IN PCCHAR elementId, IN std::function callback); + STATIC VOID AddPointerDownEvent(IN PCCHAR elementId, IN std::function callback); + STATIC VOID AddPointerExitEvent(IN PCCHAR elementId, IN std::function callback); + STATIC VOID AddPointerEnterEvent(IN PCCHAR elementId, IN std::function callback); public: STATIC VOID Initialize(); diff --git a/Resources/HUD/gamepad_dir_down.png b/Resources/HUD/gamepad_dir_down.png new file mode 100644 index 0000000000000000000000000000000000000000..294393f6a1297b6814b28421c23eb5177e1b632e GIT binary patch literal 1760 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 F{{cO0>&5^8 literal 0 HcmV?d00001 diff --git a/Resources/HUD/gamepad_dir_up.png b/Resources/HUD/gamepad_dir_up.png new file mode 100644 index 0000000000000000000000000000000000000000..a4994cb3dda49244acd8524a86f7827421c43e4a GIT binary patch literal 1859 zcmeH|>r)d~7{+6agnMGbC4>b+SR+no5K&wuK!89t1{kO9a1rHV;%%TnkP>c+5!3{6 zNtO}08MIdE6pD&kq|#PU1B)mkZ4p7#WKo$xE{XzbwQK*3PCuM^-}#+0&pglbh8%T;w0-hn)?D?qU$=u`$EF+Aw_^i+L)`1KQoCy^09z_h zIa|5Toq|y67>&yaz&n+o^XTdojDRQKL8#5Nw}TZwR|#O0w$U*y?s4Kb=P3Mj6kW1r zAZTK}{)0C+HNRoy;*^6DWM(|%Fk(~gL#S3oII*b}BDnR)M@{LnsJC_Igt%d68QAwi z3YgiM`>z}`i@R)F*plq=laABkSMzD^N5X$805IFcim{>t9uhEWR~3ZTynW_q#jO1T zQ5f$uMRZYuZS9+|Aq_s66D)~%dybrjfmow8srYQ7w;G+ zAPvk1FqZjGa9R*#Q@IFY^F!{ER<+2$l6Sc1Cp%Y4lOBfw*kQ6%+`6=`%xgHFgM9-| z`vg(ve{P3R{PM;8%#$&VZIvDEb3pxgrJpfPMw_MAy|>8UUOsztfj4~cj!~Zu>BOMx zg$W2fMnyG>TLB)D))Emz-+WJCf^!*gwktLw>kkbclK~h)mZE+}UoUjUKA|yh--PG6 z%T2^npWP}Y7-&mmAmv$*XM z#A`#|=hVeX1&HIjnHNfs5G?oG@1`Gp^OR+7l+i9)klQ`cMAOx9j!Gj2`WZd`_J9^L zgme0p*WsJ9WOBZ`4*qy~4)9+P0lqvP(M{cCAWAc`LJ|u!>zF-550sz@DiPhia09-n zMF;)plYoVq=Ae@ewh=r1wx_Sz3t4)oGi(8OkV_!`u=InyRZsyj&*c;RMYUnyL+= zmXz|@YkjU*p}c(kPT^RpCBA8AxfqB8b^KaShH`6-sAaNDuaR4jYdRgd%e$i}YbxvD z{UM!+zw(hqOGTu-ye&HcoJRb{>URToIl7u{bS>n>(Jd2l7)l>8$EIBZn&NdLr<_P) zR*Rfs2^H&lBTLpVLI)@2B2iVwM~CiBmWqg&#=%7FWt%mBCWIfoFKt!N0P!1=NYaQH KaZ6ar!G8eecB|C@ literal 0 HcmV?d00001 diff --git a/Vendor/CMakeLists.txt b/Vendor/CMakeLists.txt index 2f5eb94..8af028c 100644 --- a/Vendor/CMakeLists.txt +++ b/Vendor/CMakeLists.txt @@ -1,3 +1,5 @@ +set(BUILD_SHARED_LIBS OFF) + # ----------------------------------------------- # IACore # ----------------------------------------------- @@ -7,7 +9,6 @@ add_subdirectory(IACore/) # SDL3 # ----------------------------------------------- set(SDL_TEST_LIBRARY OFF) -set(BUILD_SHARED_LIBS OFF) add_subdirectory(SDL/) # ----------------------------------------------- @@ -22,10 +23,15 @@ add_subdirectory(SDL_mixer/) add_subdirectory(freetype/) add_library(Freetype::Freetype ALIAS freetype) +# ----------------------------------------------- +# LunaSVG +# ----------------------------------------------- +set(LUNASVG_BUILD_EXAMPLES OFF) +add_subdirectory(lunasvg/) + # ----------------------------------------------- # RmlUI # ----------------------------------------------- -add_subdirectory(lunasvg/) set(RMLUI_SVG_PLUGIN ON) add_subdirectory(RmlUI/)