您的位置:首页 > 其它

判断物体位于什么位置,用于添加方向指针

2016-09-21 17:23 274 查看
using UnityEngine;

using System.Collections;

public class TargetPoingt : MonoBehaviour

{

    public Shiyepanduan shiye;

    public GameObject left;

    public GameObject right; //指针物体

    public Transform targetTF; //目标物体,就是判断该物体位于自身的哪个方位,被判断物体,将此脚本挂在中心物体上,以他为中心判断目标物体的位置。

    void Start()

    {

    }

    void Update()

    {

       

        checkTargetDirForMe(targetTF);

    }

        

    void checkTargetDirForMe(Transform target)

    {

       

        Vector3 dir = target.position - transform.position;

        Vector3 cross = Vector3.Cross(transform.right, dir.normalized);

        float dot = Vector3.Dot(transform.right, dir.normalized);
            if (cross.y >0)      

// cross.y是判断位于左侧还是右侧

//dot>0用于判断位于上下两侧。如果要判断前后两侧,只需修改   Vector3 cross = Vector3.Cross(transform.right, dir.normalized)里面的tranform.right,改成tranform.forword 或者tranform.up.

            {

                

                right.SetActive(true);

                left.SetActive(false);

            }

           if (cross.y < 0) 

            {

                

                    left.SetActive(true);

                   right.SetActive(false);

            }

        }   

    }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐