• unity局部坐标和世界坐标角度介绍


    Unity中,局部坐标(Local Coordinates)和世界坐标(World Coordinates)是描述物体位置的两种不同方式:

    1. 局部坐标(Local Coordinates)

      • 局部坐标是相对于物体自身的坐标系来描述物体上的点的位置。
      • 对于一个物体而言,它的局部坐标原点通常位于物体的中心,坐标轴则沿着物体的局部方向。
      • 例如,一个立方体的局部坐标原点可能位于立方体的中心,坐标轴分别沿着立方体的长、宽、高方向。
    2. 世界坐标(World Coordinates)

      • 世界坐标是相对于整个场景的坐标系来描述物体的位置。
      • 在场景中,每个物体都有一个唯一的世界坐标,这个坐标是相对于场景的全局坐标系来确定的。
      • 例如,一个立方体在场景中的世界坐标描述了它在整个场景中的位置和方向。

    在Unity中,你可以通过物体的transform组件来访问和操作它们的局部坐标和世界坐标。例如,transform.localPosition表示物体的局部坐标,transform.position表示物体的世界坐标。

    当然,请看下面这些示例代码,它们展示了如何在Unity中获取和使用物体的局部坐标和世界坐标:

    1. 获取和设置物体的局部坐标:

    1. // 获取物体的局部坐标
    2. Vector3 localPosition = transform.localPosition;
    3. // 设置物体的局部坐标
    4. transform.localPosition = new Vector3(1.0f, 0.0f, 0.0f);
    1. 获取和设置物体的世界坐标:

    1. // 获取物体的世界坐标
    2. Vector3 worldPosition = transform.position;
    3. // 设置物体的世界坐标
    4. transform.position = new Vector3(10.0f, 0.0f, 5.0f);

    在Unity中,角度变化通常涉及到物体的旋转。在这里,我将为你介绍如何在Unity中操作物体的旋转角度。

    1. 获取和设置物体的局部旋转角度(Euler角度)

      • Unity中的旋转可以用欧拉角(Euler Angles)来表示,即绕物体的局部坐标轴(X轴、Y轴、Z轴)旋转的角度。
      • 获取物体的局部旋转角度:
        Vector3 localRotation = transform.localEulerAngles;
        
      • 设置物体的局部旋转角度:
        transform.localEulerAngles = new Vector3(0.0f, 90.0f, 0.0f); // 绕Y轴旋转90
    2. 获取和设置物体的世界旋转角度(Quaternion)

      • Unity中的世界旋转角度通常使用四元数(Quaternion)来表示,这是一种更复杂但更有效表示旋转的方式。
      • 获取物体的世界旋转角度:
        Quaternion worldRotation = transform.rotation;
        
      • 设置物体的世界旋转角度:
        transform.rotation = Quaternion.Euler(0.0f, 90.0f, 0.0f); // 绕世界Y轴旋转90
  • 相关阅读:
    canvas 绘制折线图及思考
    【数据结构Note5】-二叉排序树 BST和平衡二叉树AVL
    计算机毕业设计之java+javaweb的面向社区健康服务的医疗平台
    第五章:指令集
    暴力递归转动态规划(十七)
    【Leetcode】667. 优美的排列 II
    【VR】Network Manager HUD
    CentOS7和CentOS8 Asterisk 20.0.0 简单图形化界面5--libss7驱动7号信令
    小程序蓝牙连接ESP32通信(可直接拿来用)
    分类预测 | MATLAB实现KOA-CNN-BiLSTM开普勒算法优化卷积双向长短期记忆神经网络数据分类预测
  • 原文地址:https://blog.csdn.net/sunyao1314/article/details/140441863