有没有办法限制游戏对象在x轴上的变换?我使用GUI Textures作为按钮来左右滑动游戏对象,但我不希望它滑动到屏幕视图之外。任何建议都表示赞赏。
public float moveSpeed = 0.5f;
void Update () {
float horiz = Input.GetAxis ("Horizontal");
transform.Translate(new Vector3(horiz * moveSpeed,0,0));
}
答案 0 :(得分:1)
您可以使用Mathf.clamp()
方法。
示例:
float xPos = Mathf.clamp(xPos, minX, maxX);
这可确保如果xPos
低于minX
,则会将其设置为minX
,如果高于maxX
,则会将其设置为maxX
意味着xPos
永远不会高于maxX
或低于minX
。
答案 1 :(得分:1)
一种简单的方法是将游戏对象(例如立方体)作为屏幕的边界。这样,你就无法将你的游戏对象移到屏幕之外,因为它会与边界碰撞并停止在屏幕之外。