C# 如何增加玩家';装置倾斜得越远,速度是多少?
我正在为Unity中的mobile制作一个平台游戏,我想使用加速计提高角色沿x轴移动的速度,直到达到最大速度 现在我有这个:C# 如何增加玩家';装置倾斜得越远,速度是多少?,c#,unity3d,accelerometer,C#,Unity3d,Accelerometer,我正在为Unity中的mobile制作一个平台游戏,我想使用加速计提高角色沿x轴移动的速度,直到达到最大速度 现在我有这个: void FixedUpdate () { Vector2 direction = Vector2.zero; direction.x = Input.acceleration.x * horizontalSpeed; if ( direction.sqrMagnitude > 1 ) {
void FixedUpdate ()
{
Vector2 direction = Vector2.zero;
direction.x = Input.acceleration.x * horizontalSpeed;
if ( direction.sqrMagnitude > 1 )
{
direction.Normalize();
}
direction *= Time.deltaTime;
transform.Translate(direction);
}
当前,角色始终以相同的速度移动。设备倾斜越远,如何提高角色的速度
我想我可以测量加速计的位置,随着位置的变化,我可以调整速度变量。我就是不知道怎么测量它 请不要将[unity]标记用于unity 3D。这就是[unity3d]标签的作用。[unity]标签指向另一个Microsoft产品。P.s。为什么要对方向向量进行归一化?我不知道你的direction.x得到了什么样的值,但是如果它们明显高于1,那么标准化很可能就是为什么你永远不会得到任何不同的速度。你正在破坏它的大小,它直接影响最终的速度。