我试图在unity3d中为我的球做一个简单的动作。和即时通讯使用JavaScript。我有点做了但是当我移动球它滑动时我的意思是当我按下A它移动当我停止按下时稍微停止就像在我的船上当你在冰上行走时停止。我想让它像当我停止按下它立即停止,我该怎么办?无论如何这里是我的球的动作代码:
#pragma strict
var rotationSpeed = 100;
function Update ()
{
//Handle ball rotation.
var rotation : float = Input.GetAxis ("Horizontal") * rotationSpeed;
rotation *= Time.deltaTime;
rigidbody.AddRelativeTorque (Vector3.back * rotation);
}
答案 0 :(得分:0)
问题实际上不在您的代码中,而是在Unity的输入系统中。打开InputManager(编辑 - >项目设置 - >输入)并将所需轴上的重力(在您的示例中为水平)增加到更高的数字,例如10.您应该看到角色停止更快。
如果你想看看它到底在做什么,可以在你的代码中添加一行Debug.Log(Input.GetAxis(" Horizontal"))。重力设置正在调整输入从1回到0的速度。