Unity3d 将向量中大于1的值更改为1 3

Unity3d 将向量中大于1的值更改为1 3,unity3d,Unity3d,我有一个向量3,其中包含以下值: Vector3 bla = new Vector3(1.0f,8.0f,16.0f); 我希望每一个高于1的值都是1,有没有简单的方法?我可以写一个函数来实现它,比如: void ValueToOne(Vector3 _input) { float x = _input.x / _input.x; float y = _input.y / _input.y; float z = _input.z / _input.z; return

我有一个向量3,其中包含以下值:

Vector3 bla = new Vector3(1.0f,8.0f,16.0f);
我希望每一个高于1的值都是1,有没有简单的方法?我可以写一个函数来实现它,比如:

void ValueToOne(Vector3 _input)
{
   float x = _input.x / _input.x;
   float y = _input.y / _input.y;
   float z = _input.z / _input.z;

   return new Vector3(x,y,z);
}
但我想也许Unity已经做了些什么

提前谢谢

您可以使用函数执行此操作:

Vector3 clampedVector = Vector3.Min(Vector3.one, yourVector)
您可以使用函数执行以下操作:

Vector3 clampedVector = Vector3.Min(Vector3.one, yourVector)