我正在开发一款关于Unity的安卓游戏,玩家会在点击时跳跃,相机会跟随玩家。到目前为止,我所做的是使用yMin = 0
和yMax = 2
来限制/限制相机的垂直移动。相机也顺畅地跟随播放器。
我现在想要的是当玩家改变其位置时,相机位置会改变并将下限yMin更新为玩家的当前位置。这样,如果播放器位于视图的下方和外部,则相机不会将其降低到初始值。
这是我的相机跟随代码。
public class CameraFollow : MonoBehaviour {
[SerializeField]
private float yMin;
[SerializeField]
private float yMax;
[SerializeField]
private float xMin;
[SerializeField]
private float xMax;
private Transform target;
void Start () {
target = GameObject.Find("Player").transform;
}
void LateUpdate () {
Vector3 targetPos = new Vector3 (
Mathf.Clamp(target.position.x, xMin, xMax),
Mathf.Clamp(target.position.y, yMin, yMax),
-10
);
transform.position = Vector3.Lerp(transform.position, targetPos, 0.02f);
if (Input.GetKeyDown(KeyCode.Escape)){
Application.Quit ();
}
}
}
答案 0 :(得分:0)
好吧我只是想通知我应该将相机y位置分配给yMin。
Update(){
yMin = GetComponent<Camera>().transform.position.y;
}