|
|
|
@ -274,18 +274,22 @@ void Client::Reset() { |
|
|
|
|
|
|
|
void Client::UpdateYuzuSettings(std::size_t client, const Common::Vec3<float>& acc, |
|
|
|
const Common::Vec3<float>& gyro, bool touch) { |
|
|
|
if (gyro.Length() > 0.2f) { |
|
|
|
LOG_DEBUG(Input, "UDP Controller {}: gyro=({}, {}, {}), accel=({}, {}, {}), touch={}", |
|
|
|
client, gyro[0], gyro[1], gyro[2], acc[0], acc[1], acc[2], touch); |
|
|
|
} |
|
|
|
UDPPadStatus pad; |
|
|
|
if (touch) { |
|
|
|
pad.touch = PadTouch::Click; |
|
|
|
pad_queue[client].Push(pad); |
|
|
|
} |
|
|
|
for (size_t i = 0; i < 3; ++i) { |
|
|
|
if (gyro[i] > 6.0f || gyro[i] < -6.0f) { |
|
|
|
if (gyro[i] > 5.0f || gyro[i] < -5.0f) { |
|
|
|
pad.motion = static_cast<PadMotion>(i); |
|
|
|
pad.motion_value = gyro[i]; |
|
|
|
pad_queue[client].Push(pad); |
|
|
|
} |
|
|
|
if (acc[i] > 2.0f || acc[i] < -2.0f) { |
|
|
|
if (acc[i] > 1.75f || acc[i] < -1.75f) { |
|
|
|
pad.motion = static_cast<PadMotion>(i + 3); |
|
|
|
pad.motion_value = acc[i]; |
|
|
|
pad_queue[client].Push(pad); |
|
|
|
|