diff options
author | bunnei <bunneidev@gmail.com> | 2023-06-05 21:43:43 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-06-05 21:43:43 -0700 |
commit | cb95d7fe1b6d81899fe6b279400da2c991e3132c (patch) | |
tree | a856ac45b1053009c4c11ee141c49d7faa4c8a19 /src/input_common/drivers/virtual_gamepad.cpp | |
parent | db7b106f1d9d559dadfd9ed070a8b0986609ec57 (diff) | |
parent | 036996429e1766231c5002bb333ee4e67d216c2c (diff) |
Merge pull request #10508 from yuzu-emu/lime
Project Lime - yuzu Android Port
Diffstat (limited to 'src/input_common/drivers/virtual_gamepad.cpp')
-rw-r--r-- | src/input_common/drivers/virtual_gamepad.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/input_common/drivers/virtual_gamepad.cpp b/src/input_common/drivers/virtual_gamepad.cpp index 7db945aa6..c15cbbe58 100644 --- a/src/input_common/drivers/virtual_gamepad.cpp +++ b/src/input_common/drivers/virtual_gamepad.cpp @@ -39,6 +39,22 @@ void VirtualGamepad::SetStickPosition(std::size_t player_index, VirtualStick axi SetStickPosition(player_index, static_cast<int>(axis_id), x_value, y_value); } +void VirtualGamepad::SetMotionState(std::size_t player_index, u64 delta_timestamp, float gyro_x, + float gyro_y, float gyro_z, float accel_x, float accel_y, + float accel_z) { + const auto identifier = GetIdentifier(player_index); + const BasicMotion motion_data{ + .gyro_x = gyro_x, + .gyro_y = gyro_y, + .gyro_z = gyro_z, + .accel_x = accel_x, + .accel_y = accel_y, + .accel_z = accel_z, + .delta_timestamp = delta_timestamp, + }; + SetMotion(identifier, 0, motion_data); +} + void VirtualGamepad::ResetControllers() { for (std::size_t i = 0; i < PlayerIndexCount; i++) { SetStickPosition(i, VirtualStick::Left, 0.0f, 0.0f); |