Unity ——Transform组件

transform组件的变量
transform组件的方法

    Debug.Log("position " + transform.position); //世界坐标的位置

    Debug.Log("localPosition " + transform.localPosition); //相对于父位置的坐标 即把父物体当作自己的中心

    Debug.Log("eulerAngles " + transform.eulerAngles);//世界坐标欧拉⾓度

    Debug.Log("localEulerAngles " + transform.localEulerAngles);//相对于⽗级的变换的旋转欧拉⾓度

    Debug.Log("localScale " + transform.localScale);//相对于父位置的缩放

    Debug.Log("localRotation " + transform.localRotation);//相对于父位置的旋转

    Debug.Log("rotation " + transform.rotation);//世界坐标的旋转
using UnityEngine;
using System.Collections;

public class Test : MonoBehaviour {

    void Start () {
        // 获取当前脚本所挂载的游戏对象身上的 Transform 组件
        // transform

        // 1. 控制游戏对象的位置、旋转、缩放

        // position 属性 - 世界坐标系中的位置
        //Vector3 pos = transform.position;
        //// localPosition 属性 - 局部坐标系中的位置
        ////transform.localPosition;
        //Debug.Log(pos);
        //// 一般不直接修改四元数
        ////transform.rotation;
        ////transform.loacalRotation

        //// localScale - 控制游戏对象的缩放
        //Vector3  sc = transform.localScale;

        // 2. 控制游戏对象间的父子关系
        // 获取/重新制定 当前游戏对象父对象的transform 组件
        //transform.parent;

        // 获取当前游戏对象的根父对象的transform 组件(最外层的父对象)
        //transform.root;

        // 获取当前游戏对象 叫做 Cube 的子对象
        transform.Find("Cube");
        transform.FindChild("Cube");    // 如果有多个Cube 只会默认返回第一个

    }

    void Update () {
        if (Input.GetKeyDown(KeyCode.P))
        {
            //transform.position = new Vector3(0,0,0);
            ////transform.position = Vector3.zero;    // 回到坐标原点
            //transform.localScale = new Vector3(1f,2f,1f); // 缩放

            // 变换当前游戏对象
            //transform.Translate(new Vector3(0, 1, 0));

            // 旋转当前游戏对象
            //transform.Rotate(Vector3.up, 10f);

            // 欧拉角 - 属性
            //transform.eulerAngles = new Vector3(0f, 45f, 0f);

        }
    }
}

“`

猜你喜欢

转载自blog.csdn.net/qq_36561650/article/details/81664314