C# Unity3D为什么将轴与速度相乘?

C# Unity3D为什么将轴与速度相乘?,c#,unity3d,C#,Unity3d,我对Unity的编程相当陌生 所以我的问题是: 你为什么要乘这个数 Input.GetAxis("VertOrHorz") * speed 速度很快。因为我习惯于使用+=或-=运算符移动对象 谁能帮我一个忙,给我解释一下:) 提前谢谢 Jakob该函数将值从-1f返回到1f或0f返回到1f。该值范围太小,以至于无法移动对象 例如,使用从输入返回的0.5f值向刚体添加力。GetAxis将无法执行任何操作 通过将其与另一个数字相乘(速度),您将能够得到一个足够大的数字,以实际移动对象 如果您执行的

我对Unity的编程相当陌生

所以我的问题是:

你为什么要乘这个数

Input.GetAxis("VertOrHorz") * speed
速度很快。因为我习惯于使用+=或-=运算符移动对象

谁能帮我一个忙,给我解释一下:)

提前谢谢

Jakob

该函数将值从
-1f
返回到
1f
0f
返回到
1f
。该值范围太小,以至于无法移动对象

例如,使用从
输入返回的
0.5f
值向
刚体添加力。GetAxis
将无法执行任何操作

通过将其与另一个数字相乘(
速度
),您将能够得到一个足够大的数字,以实际移动对象

如果您执行的任何操作需要一个介于
-1f
1f
0f
1f
之间的数字,则您不需要将函数的值与任何其他数字相乘

该函数将值从
-1f
返回到
1f
0f
返回到
1f
。该值范围太小,以至于无法移动对象

例如,使用从
输入返回的
0.5f
值向
刚体添加力。GetAxis
将无法执行任何操作

通过将其与另一个数字相乘(
速度
),您将能够得到一个足够大的数字,以实际移动对象


如果您执行的任何操作需要一个介于
-1f
1f
0f
1f
之间的数字,则您不需要将函数的值与任何其他数字相乘

你在某个地方的教程中读过这个吗
Input.GetAxis()
提供[-1,1]范围内的值。将它乘以速度只会改变它的大小,所以你给出的直线将产生一个[speed,-speed]范围内的数字。有了这个新数字,您可以将它与
Transform.Translate()
Rigidbody.MovePosition()
,等等一起使用。您可能需要在阅读此数字的任何地方重新阅读,以便在上下文中进行解释?因为我无法给出作者这样做的确切原因,只是猜测。你在某个地方的教程中读过吗
Input.GetAxis()
提供[-1,1]范围内的值。将它乘以速度只会改变它的大小,所以你给出的直线将产生一个[speed,-speed]范围内的数字。有了这个新数字,您可以将它与
Transform.Translate()
Rigidbody.MovePosition()
,等等一起使用。您可能需要在阅读此数字的任何地方重新阅读,以便在上下文中进行解释?因为无法给出作者这样做的确切原因,只是猜测。