1.获取和设置父对象

子对象在世界坐标系下的位置是加法运算:子对象在世界坐标系下的位置 = 子对象的位置 + 父对象的位置
子对象在世界坐标系下的缩放是乘法运算:子对象在世界坐标系下的位置 = 子对象的位置 + 父对象的位置

现有:

Lesson9脚本中的代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Lesson9 : MonoBehaviour
{void Start(){//获取父对象//可以通过Transform 获取我自己的父对象是谁print(this.transform.parent.name);//设置父对象//1.断绝父子关系this.transform.parent = null;//2.找个新父亲(需要赋值一个对象的transform)this.transform.parent = GameObject.Find("Father2").transform;//3.通过API来进行父子关系的设置//参数1 父对象的Transform//参数2 是否保留本对象在世界坐标系下的位置、角度、缩放信息//      如果填true,则会保留世界坐标系下的状态和父对象进行计算 得出想对父对象的本地坐标系的信息//      如果填false,则不会进行计算,直接把在世界坐标系下的信息 赋值到在本地坐标系中this.transform.SetParent(GameObject.Find("Father2").transform, true);}
}

运行:

2.抛弃所有子对象

现有:
Lesson9脚本的代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Lesson9 : MonoBehaviour
{void Start(){//与自己的所有子对象 断绝关系this.transform.DetachChildren();}
}

运行:

3.获取子对象

现有:

Lesson9脚本的代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class Lesson9 : MonoBehaviour
{void Start(){//1.按名字查找儿子//  返回一个儿子的transform信息//  只能找儿子,找不了孙子//  transform.Find能找到失活的儿子,而GameObject相关的查找 是找不到失活对象的print(this.transform.Find("Son2").name);//2.得到有多少个儿子(失活的儿子也算,孙子不算)print(this.transform.childCount);//3.通过索引,去得到自己对应的儿子//  返回值是transform,可以得到对应的儿子位置相关信息//  注意 索引越界会报错this.transform.GetChild(0);//4.遍历儿子for (int i = 0; i < this.transform.childCount; i++){print(this.transform.GetChild(i).name);}}
}

运行:

4.儿子的操作

现有:

Lesson9脚本的代码

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Lesson9 : MonoBehaviour
{//要进行以下操作的儿子public Transform son;void Start(){//1.判断传入的这个对象是不是自己父亲if (son.IsChildOf(this.transform)){print("传入的这个对象是我父亲");}//2.得到自己作为儿子的编号print(son.GetSiblingIndex()); //将会打印 0//3.把自己设置成第一个儿子son.SetAsFirstSibling();//4.把自己设置成最后一个儿子son.SetAsLastSibling();//5.把自己设置为指定个儿子//  索引越界也不会报错,而是直接把它设置到最后一个son.SetSiblingIndex(1);}
}

【Unity】Transform—用代码设置父子关系相关推荐

  1. 使用 SetParent 跨进程设置父子窗口时的一些问题(小心卡死)

    在微软的官方文档中,说 SetParent 可以在进程内设置,也可以跨进程设置.当使用跨进程设置窗口的父子关系时,你需要注意本文提到的一些问题,避免踩坑. 本文内容 跨进程设置 `SetParent` ...

  2. Unity学习日志_Unity父子关系与Camera

    Unity学习日志_Unity父子关系与Camera ​ 本次组件简单介绍将不包含monoBehaviour类及其向上回溯的父类. 1. 关于父子物体 ​ 首先需要声明的一点是所有游戏物体的Trans ...

  3. Unity子物体脱离父物体,解除父子关系,子物体不随父物体移动

    在Unity中创建一个手雷,并且需求是扔出手雷时,手雷不能跟随人物移动 这个需要调用 gameObject.transform.DetachChildren方法,将GrenadePosition下的所 ...

  4. Unity:计算两个物体(没有父子关系)的相对坐标

    Unity:计算两个物体(没有父子关系)的相对坐标 问题描述 实现方法 实现原理 参考链接 问题描述 计算Unity场景中物体B在物体A坐标系下的坐标,且两物体没有父子关系 实现方法 计算一个物体A的 ...

  5. Unity代码设置天空盒子skybox 及定时切换

    目录: 一.代码 二.解析 三.核心 前言:并非自创,看的是同行的博文--在此向前人致谢 一.代码 using System.Collections; using System.Collections ...

  6. Unity通过代码设置ParticalSystem参考

    通过代码设置ParticalSystem的写法参考如下: publicclassSetParticlRateSpeed : SetByFloatInterval {[SerializeField]fl ...

  7. Unity开发NGUI代码实现ScrollView(放大视图)

    尊重原创,转载:http://www.cnblogs.com/daxiaxiaohao/p/4745549.html Unity开发NGUI代码实现ScrollView(放大视图) 下载NGUI包 导 ...

  8. 7.QT-Qt对象间的父子关系

    Qt对象之间可以存在父子关系 继承于QObject类或者其子类的对象,都称为Qt对象 当指定Qt对象的父对象时 需要通过setParent()成员函数来设置对象间的父子关系 子对象将会把自己的指针地址 ...

  9. Unity3D分离子物体解除父子关系/也可实现对子物体的删除

    关于解除父子关系首先看下官方给出的讲解代码. using UnityEngine; using System.Collections;public class example : MonoBehavi ...

  10. Unity中使用代码将预制加载到场景

    Unity中使用代码将预制加载到场景 大家知道, 在日常修改预制的时候很方便, 我们将预制从资源文件夹往场景上"一拖", 然后就可以进行修改, 然后应用保存即可. 但是如果某些需求 ...

最新文章

  1. openstack运维实战系列(十)之nova指定compute节点和IP地址
  2. Mybatis报错 TooManyResultsException
  3. 2020 6-7月 每日花语
  4. 数塔(hdoj 2084,动态规划递推)
  5. 利用Javascript的“函数重载”实现自定义Alert样式
  6. Serverless 实战 —— 利用OneIndex-Serverless无成本搭建属于你自己的网盘
  7. codeforces-1201 C Maximum Median
  8. Linux如何安装iperf软件,Linux 下网络性能测试工具 iperf 的安装和使用
  9. 鸿蒙应用开发--事件
  10. AD域环境的搭建 基于Server 2008 R2
  11. C语言-指针的比较/指针加减
  12. DXUT扩展之摄像机
  13. 最近在职场的一些感悟
  14. 原生安卓10怎么打开面部识别_安卓手机运行慢怎么办?只需简单一步立即提速翻倍...
  15. Top Down Operator Precedence - 自顶向下算符优先分析法
  16. MD5加密,受到什么影响,改后缀有用么?
  17. python cmp_to_key
  18. matlab生成的数值为inf,计算值时为Nan / inf
  19. chapter5. Java数据结构与java算法
  20. C++/MFC 面试题(六、逻辑题)

热门文章

  1. 微信开发(微信扫一扫)商品创建
  2. 数字信号处理的典型应用
  3. 字节跳动大裁员,测试工程师差点遭团灭:大厂招人背后的套路,有多可怕?
  4. 转载:图像噪声的成因分类与常见图像去噪算法简介
  5. “自贸云”+“自贸大数据”将加速辽宁自贸区建设与创新
  6. 视频剪辑什么鬼?Python 带你高效进行视频切割
  7. linux mbr转gpt分区,linux将GPT分区转换为MBR、RHEL GPT报错
  8. 【考研】数据库知识点总结
  9. word安全模式解除方法!
  10. 图片文件Exif信息详细说明