diff options
Diffstat (limited to 'src/GFX/Mouse.cpp')
| -rw-r--r-- | src/GFX/Mouse.cpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/GFX/Mouse.cpp b/src/GFX/Mouse.cpp new file mode 100644 index 0000000..5cd2698 --- /dev/null +++ b/src/GFX/Mouse.cpp @@ -0,0 +1,24 @@ +#include "Mouse.hpp" + +namespace MC::GFX { + +Vector<2> Mouse::update(GLFWwindow* window) { + double x, y; + glfwGetCursorPos(window, &x, &y); + + if (m_first_event) { + m_last_x = x; + m_last_y = y; + + m_first_event = false; + } + + Vector<2> movement{static_cast<float>(x) - m_last_x, static_cast<float>(y) - m_last_y}; + + m_last_x = x; + m_last_y = y; + + return movement; +} + +} \ No newline at end of file |
