如何将 vector3 用作浮点变量?
How can i use vector3 as float variables?
在我做的脚本顶部:
public float setRandScaleXMin, setRandScaleXMax;
public float setTandScaleYMin, setTandScaleYMax;
public float setTandScaleZMin, setRandScaleZMax;
但这将创建 6 行。
我想做的是在检查器中:
setRandScaleXMin
setRandScaleXMax
setRandScaleYMin
setRandScaleYMax
setRandScaleZMin
setRandScaleZMax
为此,他们将在检查器中每两个变量显示一行:
setRandScaleXMin 10 setRandScaleXMax 111
setRandScaleYMin 12 setRandScaleYMax 22
setRandScaleZMin 11 setRandScaleZMax 15
改为 6 行只有 3 行。
那么我是这样使用它的:
float randScaleX = Random.Range(setRandScaleXMin, setRandScaleXMax);
float randScaleY = Random.Range(setTandScaleYMin, setTandScaleYMax);
float randScaleZ = Random.Range(setTandScaleYMax, setRandScaleZMax);
和
objInstance = Instantiate(objectToInstantiate, new Vector3(randX, yVal, randZ), Quaternion.identity);
我只是觉得我隐约明白你想说什么所以如果我错了请原谅我,但你正在寻找最小和最大 X、Y 和 Z。而不是在检查器中有六行window,你可以有两个:
public Vector3 MinRandScale;
public Vector3 MaxRandScale;
RandScaleMin 表示随机比例的最小 X、Y 和 Z 限制,RandScaleMax 表示随机比例的最大 X、Y 和 Z 限制。
编辑以显示如何使用 Random.Range():
Random.Range
有两个值:最小界限和最大界限。因此,您只需执行以下操作即可获得具有随机组件的 Vector3:
var randX = Random.Range(MinRandScale.x, MaxRandScale.x);
var randY = Random.Range(MinRandScale.y, MaxRandScale.y);
var randZ = Random.Range(MinRandScale.z, MaxRandScale.z);
var randVector3 = new Vector3(randX, randY, randZ);
在我做的脚本顶部:
public float setRandScaleXMin, setRandScaleXMax;
public float setTandScaleYMin, setTandScaleYMax;
public float setTandScaleZMin, setRandScaleZMax;
但这将创建 6 行。 我想做的是在检查器中:
setRandScaleXMin
setRandScaleXMax
setRandScaleYMin
setRandScaleYMax
setRandScaleZMin
setRandScaleZMax
为此,他们将在检查器中每两个变量显示一行:
setRandScaleXMin 10 setRandScaleXMax 111
setRandScaleYMin 12 setRandScaleYMax 22
setRandScaleZMin 11 setRandScaleZMax 15
改为 6 行只有 3 行。
那么我是这样使用它的:
float randScaleX = Random.Range(setRandScaleXMin, setRandScaleXMax);
float randScaleY = Random.Range(setTandScaleYMin, setTandScaleYMax);
float randScaleZ = Random.Range(setTandScaleYMax, setRandScaleZMax);
和
objInstance = Instantiate(objectToInstantiate, new Vector3(randX, yVal, randZ), Quaternion.identity);
我只是觉得我隐约明白你想说什么所以如果我错了请原谅我,但你正在寻找最小和最大 X、Y 和 Z。而不是在检查器中有六行window,你可以有两个:
public Vector3 MinRandScale;
public Vector3 MaxRandScale;
RandScaleMin 表示随机比例的最小 X、Y 和 Z 限制,RandScaleMax 表示随机比例的最大 X、Y 和 Z 限制。
编辑以显示如何使用 Random.Range():
Random.Range
有两个值:最小界限和最大界限。因此,您只需执行以下操作即可获得具有随机组件的 Vector3:
var randX = Random.Range(MinRandScale.x, MaxRandScale.x);
var randY = Random.Range(MinRandScale.y, MaxRandScale.y);
var randZ = Random.Range(MinRandScale.z, MaxRandScale.z);
var randVector3 = new Vector3(randX, randY, randZ);