Unity 本地坐标到世界坐标,世界坐标到本地坐标

Posted 不三周助

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity 本地坐标到世界坐标,世界坐标到本地坐标相关的知识,希望对你有一定的参考价值。

世界=>本地

 

  public GameObject mTarget;
    public GameObject mPar; //这个注意一定要是mTarget的第一父物体。
 // Use this for initialization
 void Start () {
        string tarStr = string.Format("mtarget local:{0},world:{1}", mTarget.transform.localPosition, mTarget.transform.position);
        string parStr = string.Format("mPar local:{0},world:{1}", mPar.transform.localPosition, mPar.transform.position);
        Debug.Log(tarStr);
        Debug.Log(parStr);
        var t = mPar.transform.InverseTransformPoint(mTarget.transform.position);
        Debug.Log(t);
 }

 

 

 

 

注意:世界坐标转本地坐标。需要注意的是世界坐标转本地坐标调用的方法 InverseTransformPoint,需要其父物体的transform.即使拥有父物体的父物体,这里也只用父物体即可。

本地=>世界

worldPos = mPar.TransformPoint(localPos);

 

以上是关于Unity 本地坐标到世界坐标,世界坐标到本地坐标的主要内容,如果未能解决你的问题,请参考以下文章

世界坐标,本地坐标的转换

unity3d世界坐标系和本地坐标系

关于Unity中物体分别在本地和世界坐标系对应方向的移动

Unity3D3D 物体概念 ② ( 空物体概念 | 创建空物体 | 利用空物体管理多个子节点 | 世界坐标系和本地坐标系操作模式 | 切换坐标系操作模式 | 轴心和几何中心模式 )

Unity UI跟随3D物体,世界坐标转UI坐标

ocos2d-x 3.0坐标系详解--透彻篇 ---- convertToWorldSpace:把基于当前节点的本地坐标系下的坐标转换到世界坐标系中。