为了账号安全,请及时绑定邮箱和手机立即绑定

Unity 3D基础之变体Transform

难度初级
时长 1小时10分
学习人数
综合评分9.60
8人评价 查看评价
9.8 内容实用
10.0 简洁易懂
9.0 逻辑清晰
  •  transform.localScale += new Vector3(-0.01f, -0.01f, -0.01f);

    查看全部
    0 采集 收起 来源:缩放

    2021-05-29

  • 移动

    查看全部
  • 独立游戏开发环境Unity:控件transform 1.创建元素2.编辑元素脚本3.控件界面管理
    查看全部
  • transfer
    世界坐标
    相对父对象的坐标


    查看全部
  • Debug.DrawRay(坐标,长度,颜色);

    //画射线

    Transform.TransDirection(向量);

    //Transform沿用方向

    查看全部
  • target.position - trans.position 点到目标的向量 赋值给 up(Y轴)

    查看全部
  • Transform.Rotate(Vector3,Space);

    Transform.RotateAround(点Vector3,轴向y,速度);

    Transform.LookAt(Transform);

    查看全部
  • Transform.rotation = Quaternion.Euler(0,0,0);//固定度数

    Transform.rotation *= Quaternion.Euler(0,0,0);//旋转不能用deltaTime

    transform.rotation = Quaternion.Euler(transform.eulerAngles.x + Time.deltaTime * speed,transform.eulerAngles.y,transform.eulerAngles.z);

    //每一帧会增加x轴的speed度Time.deltaTime * speed可以加到任何轴向

    Transform.eulerAngles += Time.deltaTime * speed * Vector.forward;

    //这个角度 = 角度  * 每桢时间 * 速度 * 轴向(X轴)每秒移动speed度

    查看全部

  • Transform.Translate(Vector3,Space)
    //Space==World&&Self如Space.World
    查看全部
  • Transform组件

    1.position位置-Position LocalPosition

    Transform.rotation;

    旋转角度函数,使用的是四元数,

    如果想使用欧拉角来旋转,需要转换成四元数

    Transform trans;

    trans.rotation = Quaternion.Eular(x,y,z);//相对世界坐标

    trans.localRotation = Quaternion.Eular(x,y,z);//相对父物体坐标




    旋转:函数方法

    Transform trans;

    1. //Rotate沿着z轴每秒旋转speed度(自身旋转)

            trans.Rotate(Vector3.forward * Time.deltaTime * speed);

       2.//围绕旋转RotateAround();

            trans.RotateAround(Vector3(x,y,z),target.up,Time.deltaTime * speed);



    当物体间没有父子关系是,世界坐标就是本地坐标,显示的是世界坐标

    当物体被当成子物体时,显示的是相对于父物体的本地坐标

    2.角度-eulerAngles localEulerAngles(欧拉角)rotatetion localRotatetion(四元数旋转角度)

    transform组件中的Rotatetion是欧拉角 欧拉角与四元数的转换

    3.scale缩放 localScale lossyScale 与Position一样

    localScale相对于父级物体

    lossyScale相对于世界

    查看全部

  •     private void OnGUI()
        {
            GUILayout.Label(string.Format("Transform's position :{0}", transform.position));
            GUILayout.Label(string.Format("Transform's position :{0}", transform.localPosition));
        }

    显示当前位置

    GUILayout.Label为查询

    查看全部
    1. DetachChildren();

      将所有子物体分离出来

    2. Find(childName);

      根据子节点的名字获取子物体

    3. GetChild(childIndex);

      根据索引值来获取子物体

    4. child.IsChildOf(trans);

      判断trans是否是子物体


    查看全部
  • 缩放函数

    localScale;

    trans.localScale += (缩放方向) * Time.deltaTime * speed;

    查看全部
    0 采集 收起 来源:缩放

    2019-03-21

  • 直接改变物体的朝向(任意轴)

    Transform target1,target2;

    1. 获得target1指向target2的向量

      Vector3 dir = target1.position - target2.position;

    2. //让target1指向target2

      target1.up = dir;

    3. //y轴指向target2,z轴target1.forward,x轴:target1.right

    查看全部
  • 旋转:函数方法

    Transform trans;

    1. //Rotate沿着z轴每秒旋转speed度(自身旋转)

            trans.Rotate(Vector3.forward * Time.deltaTime * speed);

       2.//围绕旋转RotateAround();

            trans.RotateAround(Vector3(x,y,z),target.up,Time.deltaTime * speed);

    //参数1:围绕的点,参数2:绕哪个轴旋转,参数3:旋转速度

        3.//LookAt()看向某物体(z轴指向某物体);

        trans.LootAt(target);


    查看全部
  • Transform.rotation;

    旋转角度函数,使用的是四元数,

    如果想使用欧拉角来旋转,需要转换成四元数

    Transform trans;

    trans.rotation = Quaternion.Eular(x,y,z);//相对世界坐标

    trans.localRotation = Quaternion.Eular(x,y,z);//相对父物体坐标

    查看全部

举报

0/150
提交
取消
课程须知
1、了解 Unity3D引擎基本操作 2、了解基本 C#语法
老师告诉你能学到什么?
1、Transform 常用的变量与属性 2、利用 Transform 控制游戏对象移动,旋转,缩放 3、Transform 的子父物体关系的介绍与控制 4、Transform 的坐标系转换

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!