? ? ? ? //限制飞机飞行范围 ? ? ? ? float xPos = Mathf.Clamp(transform.position.x, xMin, xMax); ? ? ? ? float zPos = Mathf.Clamp(transform.position.z, zMin, zMax); ? ? ? ? r.position = new Vector3(xPos, 0.5f, zPos);
public static float?Clamp?(float?value, float?min, float?max);
参数
value | 浮点值,限制在最小值和最大值定义的范围内。 | min | 要比较的最小浮点值。 | max | 要比较的最大浮点值。 |
返回
float?最小值到最大值之间的浮点值结果。
描述
在给定的最小浮点值和最大浮点值之间钳制给定值。如果在最小和最大范围内,则返回给定值。
如果给定的浮点值小于最小值,则返回最小值。如果给定值大于最大值,则返回最大值。使用 Clamp 可将某个值限制为最小值和最大值定义的某个范围内。
??用Mathf.Clamp方法定义两个范围
Mathf.Clamp(transform.position.x, xMin, xMax);
Mathf.Clamp(transform.position.z, zMin, zMax);
定义两个float值接受这两个范围
?float xPos = Mathf.Clamp(transform.position.x, xMin, xMax);
?float zPos = Mathf.Clamp(transform.position.z, zMin, zMax);
让游戏物体的位置的x轴和y轴等于两个float值
r.position = new Vector3(xPos, 0.5f, zPos);
让游戏背景在一个范围反复移动
public float speed;
Vector3 startPos;
void Start () {
startPos = transform.position;
}
void Update () {
float a = Mathf.Repeat(Time.time * speed, 15);
transform.position = startPos + a * Vector3.back;
}
public static float?Repeat?(float?t, float?length);
描述
对值 t 进行循环,使它不会大于长度,并且不会小于 0。
这类似于取模运算符,但是它适用于浮点数。例如,将 3.0 用于?t ?并将 2.5 用于?t ,结果是 0.5。而当?t ?= 5 并且?length ?= 2.5 时,结果是 0.0。但是请注意,与取模运算符一样,没有为负数定义行为。
speed(自定义速度) startPos = transform.position;?(等于当前游戏物体的位置)
float a = Mathf.Repeat(Time.time * speed, 15); t=应用程序已运行的时间*速度 当t>15时 t=0
?transform.position = startPos + a * Vector3.back;//运行物体在0-15之间反复移动
飞机左右移动时的偏移角度
r.rotation = Quaternion.Euler(0, 0, r.velocity.x * fx * (-1));//飞机旋转 乘-1:表示正确方向
public?Vector3?velocity?;
刚体的速度矢量。它表示刚体位置的变化率。
界面切换
loginPanel.SetActive(true);//不失活
enrollPanel.SetActive(false); //失活
?场景跳转
using UnityEngine.SceneManagement;//命名空间
SceneManager.LoadScene("tkdz");//跳转到tkdz场景
? Time.timeScale = 1;//游戏继续
|