美文网首页Unity教程合集unity3D技术分享
NGUI,世界坐标,屏幕坐标转换

NGUI,世界坐标,屏幕坐标转换

作者: 周joe | 来源:发表于2016-12-25 21:12 被阅读0次

    其实这个网上教程已经很多,但是我还是需要发布这篇博文以作沉淀之用
    1.世界坐标转屏幕坐标
    假定世界有一点坐标为pos,其转换为屏幕坐标为:
    Camera.main.WorldToScreenPoint(pos);
    2.屏幕坐标转世界坐标
    假定屏幕有一点坐标为pos,其转换为世界坐标为:
    Camera.main.ScreenToWorldPoint(pos);
    3.屏幕坐标转NGUI坐标
    假定屏幕有一点坐标为pos,其转换为NGUI坐标为:
    UICamera.currentCamera.ScreenToWorldPoint(pos);
    这个需要注意的是,得到的坐标为全球坐标,而不是本地坐标,所以NGUI的组件设置位置需要设置position而不是localPosition,我当时就是被这个坑过(┬_┬)
    4.NGUI坐标转屏幕坐标
    假定NGUI有一点坐标为pos,其转换为NGUI坐标为:
    UICamera.currentCamera.WorldToScreenPoint(pos);
    5.世界坐标转NGUI坐标
    假定屏幕有一点世界为pos,其转换为NGUI坐标为:
    需要先把世界坐标转为屏幕坐标
    Vector3 screenPos=Camera.main.WorldToScreenPoint(pos);

    相关文章

      网友评论

        本文标题:NGUI,世界坐标,屏幕坐标转换

        本文链接:https://www.haomeiwen.com/subject/jzedvttx.html