RawInput: Vector2 to Float2 refactor

This commit is contained in:
2022-06-13 22:20:45 +03:00
parent 753a6c73f8
commit a8ef6e69fe
2 changed files with 8 additions and 9 deletions

View File

@@ -5,7 +5,6 @@
#include "Keyboard.h"
#include "Mouse.h"
#include "Gamepad.h"
#include "FlaxEngine.Gen.h"
#include "Engine/Platform/Window.h"
#include "Engine/Engine/Engine.h"
#include "Engine/Engine/EngineService.h"
@@ -223,7 +222,7 @@ void Mouse::OnMouseMove(const Float2& position, Window* target)
e.MouseData.Position = position;
}
void Mouse::OnMouseMoveDelta(const Vector2& delta, Window* target)
void Mouse::OnMouseMoveDelta(const Float2& delta, Window* target)
{
Event& e = _queue.AddOne();
e.Type = EventType::MouseMoveDelta;
@@ -267,7 +266,7 @@ bool Mouse::Update(EventQueue& queue)
// Handle events
_state.MouseWheelDelta = 0;
_state.MouseDelta = Vector2::Zero;
_state.MouseDelta = Float2::Zero;
for (int32 i = 0; i < _queue.Count(); i++)
{
const Event& e = _queue[i];

View File

@@ -180,7 +180,7 @@ bool WindowsInput::WndProc(Window* window, Windows::UINT msg, Windows::WPARAM wP
return false;
}
bool OnRawInput(Vector2 mousePosition, Window* window, HRAWINPUT input)
bool OnRawInput(Float2 mousePosition, Window* window, HRAWINPUT input)
{
// TODO: use GetRawInputBuffer to avoid filling the message queue with high polling rate mice
@@ -220,13 +220,13 @@ bool OnRawInput(Vector2 mousePosition, Window* window, HRAWINPUT input)
if (rawInput->header.dwType == RIM_TYPEMOUSE)
{
const RAWMOUSE rawMouse = rawInput->data.mouse;
Vector2 mousePos;
Float2 mousePos;
if ((rawMouse.usFlags & MOUSE_MOVE_ABSOLUTE) != 0)
{
const bool virtualDesktop = (rawMouse.usFlags & MOUSE_VIRTUAL_DESKTOP) != 0;
const int width = GetSystemMetrics(virtualDesktop ? SM_CXVIRTUALSCREEN : SM_CXSCREEN);
const int height = GetSystemMetrics(virtualDesktop ? SM_CYVIRTUALSCREEN : SM_CYSCREEN);
mousePos = Vector2(Int2(
mousePos = Float2(Int2(
static_cast<int>((rawMouse.lLastX / 65535.0f) * width),
static_cast<int>((rawMouse.lLastY / 65535.0f) * height)));
@@ -238,7 +238,7 @@ bool OnRawInput(Vector2 mousePosition, Window* window, HRAWINPUT input)
// delta movement accumulated during this frame.
mousePos = mousePosition;
const Vector2 mouseDelta(Int2(rawMouse.lLastX, rawMouse.lLastY));
const Float2 mouseDelta(Int2(rawMouse.lLastX, rawMouse.lLastY));
mousePos += mouseDelta;
if (!mouseDelta.IsZero())
@@ -356,14 +356,14 @@ bool WindowsMouse::WndProc(Window* window, const UINT msg, WPARAM wParam, LPARAM
if (!WindowsRawInputImpl::UseRawInput)
{
// Calculate mouse deltas since last message
static Vector2 lastPos = mousePos;
static Float2 lastPos = mousePos;
if (_state.MouseWasReset)
{
lastPos = _state.MousePosition;
_state.MouseWasReset = false;
}
Vector2 deltaPos = mousePos - lastPos;
Float2 deltaPos = mousePos - lastPos;
if (!deltaPos.IsZero())
OnMouseMoveDelta(deltaPos, window);
lastPos = mousePos;