【问题标题】:Unity gyroscope reads only two axesunity 陀螺仪只读 2 轴
【发布时间】:2023-03-05 04:54:01
【问题描述】:

希望大家今天过得愉快!感谢您的光临!

我想让陀螺仪只改变物体的 X 和 Y 轴。有一个轴和三轴的代码(主要使用),但是我找不到关于两个轴的任何东西,并且在花了一个晚上让它工作后自己无法做到。

提前致谢!

【问题讨论】:

  • 请提供足够的代码,以便其他人更好地理解或重现问题。

标签: c# visual-studio unity3d gyroscope


【解决方案1】:

在应用之前重置 Z 轴或任何轴-

private Vector3 startEulerAngles;
private Vector3 startGyroAttitudeToEuler;

private void Start()
{
    Input.gyro.enabled = true;
    startEulerAngles = transform.eulerAngles;
    startGyroAttitudeToEuler = Input.gyro.attitude.eulerAngles;
}

private void Update()
{
    Vector3 deltaEulerAngles = Input.gyro.attitude.eulerAngles - startGyroAttitudeToEuler;

    // Z-axis reseted, so it won't be applied. 
    deltaEulerAngles.z = 0.0f;

    transform.eulerAngles = startEulerAngles - deltaEulerAngles;
}

【讨论】:

  • 非常感谢!我真的很感谢你的回答!我将继续并将其应用到我的代码中。这看起来是个好主意,而且看起来会奏效
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-10-16
相关资源
最近更新 更多