如何使用触发器作为边界?

时间:2015-09-07 12:40:37

标签: c# unity3d

如果用户尝试使用盒式对撞机和触发器尝试退出游戏边界,则此代码会重置我的相机(角色)位置。当进入/退出触发器而不是重置其位置时,是否有任何方法可以停止相机或稍微反弹相机?谢谢

using UnityEngine;
using System.Collections;

public class BoundaryTrigger : MonoBehaviour {

    public float hoverForce = 12f;
    public Vector3 startPos;

    void Start()
    {
        startPos = transform.position;
    }

    void OnTriggerEnter(Collider other) {

    }

    void OnTriggerStay(Collider other)
    {

    }

    void OnTriggerExit(Collider other)
    {
     transform.position = startPos;
    }
}

1 个答案:

答案 0 :(得分:0)

我会做这样的事情:

Vector3 m_LastValidPosition = null;
void OnTriggerStay(Collider other)
{
    m_LastValidPosition = transform.position;
}

void OnTriggerExit(Collider other)
{
    transform.position = m_LastValidPosition;
}
相关问题