Unity-Transform-坐标转换

世界坐标转本地坐标

print(Vector3.forward);

世界坐标系 转本地坐标系 可以帮助我们大概判断一个相对位置

世界坐标系的点 转换 为相对本地坐标系的点

//受到缩放影响

print("转换后的点 " + this.transform.InverseTransformPoint(Vector3.forward));

世界坐标系的方向 转换 为相对本地坐标系的方向

//不受缩放影响

print("转换后的方向" + this.transform.InverseTransformDirection(Vector3.forward));

//受缩放影响

print("转换后的方向(受缩放影响)" +this.transform.InverseTransformVector(Vector3.forward));

本地坐标转世界坐标

本地坐标系的点 转换 为相对世界坐标系的点 受到缩放影响

print("本地 转 世界 点" + this.transform.TransformPoint(Vector3.forward));

本地坐标系的方向 转换 为相对世界坐标系的方向

//不受缩放影响

print("本地 转 世界 方向" + this.transform.TransformDirection(Vector3.forward));

//受缩放影响

print("本地 转 世界 方向" + this.transform.TransformVector(Vector3.forward));

练习

cs 复制代码
public class NewBehaviourScript : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        CreatBoll();
    }

  
    public void Creat()//在自己坐标系下的-1,0,1位置创建一个空物体
    {
        GameObject a = new GameObject("C");    //先转换成世界坐标的位置    
                                               //再在世界坐标的位置创建,下同

        a.transform.position = transform.TransformPoint(new Vector3(-1, 0, 1));

    }

    public void CreatBoll()//在自己坐标系下的3个位置创建三个球
    {

      GameObject a=  GameObject.CreatePrimitive(PrimitiveType.Sphere);
        a.transform.position = transform.TransformPoint(new Vector3(0, 0, 1)); 
        GameObject b = GameObject.CreatePrimitive(PrimitiveType.Sphere);
        b.transform.position = transform.TransformPoint(new Vector3(0, 0, 2));
        GameObject c = GameObject.CreatePrimitive(PrimitiveType.Sphere);
        c.transform.position = transform.TransformPoint(new Vector3(0, 0, 3));
    }
}
相关推荐
Sheffield4 小时前
Alpine是什么,为什么是Docker首选?
linux·docker·容器
Johny_Zhao1 天前
centos7安装部署openclaw
linux·人工智能·信息安全·云计算·yum源·系统运维·openclaw
haibindev1 天前
在 Windows+WSL2 上部署 OpenClaw AI员工的实践与踩坑
linux·wsl2·openclaw
0xDevNull2 天前
Linux切换JDK版本详细教程
linux
进击的丸子2 天前
虹软人脸服务器版SDK(Linux/ARM Pro)多线程调用及性能优化
linux·数据库·后端
Johny_Zhao4 天前
OpenClaw安装部署教程
linux·人工智能·ai·云计算·系统运维·openclaw
chlk1235 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑5 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件5 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux