首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >把我的相机从我的角色切换到另一个物体

把我的相机从我的角色切换到另一个物体
EN

Stack Overflow用户
提问于 2018-07-25 15:08:56
回答 1查看 883关注 0票数 1

我的相机里有一个脚本跟在我的主角后面,这是剧本:

代码语言:javascript
复制
public class CameraFollow : MonoBehaviour {

    public Transform target; // this is my player

    public float smoothing;

    Vector3 offset;
    float lowy;

    // Use this for initialization
    void Start () {
        offset = transform.position - target.position;
        lowy = transform.position.y;
    }

    // Update is called once per frame
    void FixedUpdate () {
        Vector3 targetcampos = target.position + offset;
        transform.position = Vector3.Lerp(transform.position, targetcampos, smoothing * Time.deltaTime);

    }
}

我想知道我的相机是如何跟随脚本暂时切换到一个对象(我的对象是滚石)。我计划在对象(rock)进入对象的另一个collider2d并在几秒钟后将以下行为返回给我的角色时,就会发生这种情况。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-25 15:28:39

总结:当岩石进入对撞机时,对撞机将摄像机目标设置为另一个变换。

空触发器对撞机上的脚本

代码语言:javascript
复制
CameraFollow m_MainCamera;

void Start()
{
    m_MainCamera = Camera.main.GetComponent<CameraFollow>();    
}

OnTriggerEnter(collider coll)
{
    if(coll.gameObject.tag == "rock")
    {
        m_MainCamera.SwapTargetTo(coll.transform);
    }       
}

注意:记得给石头贴个标签!

现在更新您的相机脚本如下:

代码语言:javascript
复制
public Transform player;
public Transform target;

void Start()
{
    target = player;
}

void SwapTargetTo(Transform newTarget)
{
    target = newTarget;
}

当你进入另一个空对撞机时,你可以让目标交换,做同样的事情,或者做一个协同线来检查时间,这取决于你!

编辑:如果你想要花哨的东西,试试CameraMachine!:D。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51522270

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档