如何使用触发器作为边界

本文关键字:边界 触发器 何使用 | 更新日期: 2023-09-27 18:11:28

如果用户试图通过使用盒子碰撞器和触发器退出游戏边界,这段代码将重置我的摄像机(角色)位置。当相机进入/退出触发器而不是重置其位置时,是否有任何方法可以停止相机或稍微反弹相机?谢谢你

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;
    }
}

如何使用触发器作为边界

我会这样做:

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