我正在尝试制作一个空气曲棍球游戏,我需要将 AI 夹在一个特定区域,同时它在半边时跟随冰球在棋盘周围。我认为下面的代码会起作用,但是我从桨中得到了一些奇怪的行为,它要么 a) 在关卡开始时卡在 y=minY 上,要么 b) 它似乎会连续在 minY 和 maxY 之间切换。
public float speed = 0.075f;
public float minX = -3.7f, minY = 6.7f, maxX = 3.7f, maxY = 0.5f;
void Update () {
transform.position = new Vector3(Mathf.Clamp(Mathf.Lerp(transform.position.x, _puck.transform.position.x, speed), minX, maxX),
Mathf.Clamp(Mathf.Lerp(transform.position.y, _puck.transform.position.y, speed), minY, maxY),
transform.position.z);
}
谢谢你的帮助。
编辑 我应该补充一点,如果我只在 y 上使用夹子,它会按预期工作,但是如果我也不夹住它,它可能会随着时间的推移从 x 中夹出。