【发布时间】:2014-12-28 05:09:58
【问题描述】:
我正在制作一款 2D 太空射击手游。我正在尝试设置边界,这样船就不会离开屏幕。您可以通过倾斜手机来移动船。我有一个 shipController.cs 附加到我的船对象。这是我的 FixedUpdate 函数:
public float xMin, xMax, yMin, yMax;
void FixedUpdate()
{
//tilt to move ship
transform.Translate(Input.acceleration.x * speed, Input.acceleration.y * speed, 0);
//create boundries
rigidbody2D.position = new Vector2(
Mathf.Clamp(rigidbody2D.position.x, xMin, xMax),
Mathf.Clamp(rigidbody2D.position.y, yMin, yMax)
);
}
最小值和最大值在统一检查器中定义。 如果您在 pc 上进行测试,此代码效果很好。但是当导出到手机时,动作非常紧张和毛刺。船将到达边界并开始跳跃。倾斜时的运动也不是很顺畅。有没有其他方法可以让这更顺畅?
【问题讨论】: