Mar*_*aht 2 c# unity-game-engine
我正在尝试制作一个简单的角色控制器.
void Update ()
{
var x = Input.GetAxis("Horizontal") * Time.deltaTime * 6;
var z = Input.GetAxis("Vertical") * Time.deltaTime * 6;
Vector3 direction = Quaternion.AngleAxis(45,Vector3.up) * new Vector3(x, 0, z);
transform.Translate(direction);
}
Run Code Online (Sandbox Code Playgroud)
但是这件事有加速和减速的不良影响.当我按下按钮时,它会加速到最大速度并继续移动,当我放松时它会平稳地减慢速度.但我希望它立即停止.如果我按下按钮,速度应该是最大值并且0
在释放时.
使用Input.GetAxisRaw
不适用平滑过滤.它应该立即停止而不是逐渐减速.
void Update ()
{
var x = Input.GetAxisRaw("Horizontal") * Time.deltaTime * 6;
var z = Input.GetAxisRaw("Vertical") * Time.deltaTime * 6;
Vector3 direction = Quaternion.AngleAxis(45,Vector3.up) * new Vector3(x, 0, z);
transform.Translate(direction);
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
824 次 |
最近记录: |