当前位置: 首页 > news >正文

Unity 关于SetParent方法的使用情况

在设置子物体的父物体时,我们使用SetParent再常见不过了。

  • 但是通常我们只是使用其中一个语法:
public void SetParent(Transform parent);

使用改方法子对象会保持原来位置,跟使用以下方法效果一样:

public Transform tran;
gameObject.transform.parent = tran;
  • 其实它还有一个语法:
public void SetParent(Transform parent, bool worldPositionStays);

这里多了一个布尔值参数worldPositionStays,作用是指定子级对象在设置父级后是否保持其在世界坐标系中的位置,为true时,子对象保持原来位置,为false时,子对象的位置、旋转和缩放转换为相对于新的父级对象的局部坐标系。

如这里有3个对象:

tran、tran1、tran2,它们坐标分别为:

分别使用以下方法,把tran1、tran2移动到tran下面

    public Transform tran;public Transform tran1;public Transform tran2;void Start(){tran1.SetParent(tran);tran2.SetParent(tran, false);}

它们的坐标变化如下:

我们发现使用 tran1.SetParent(tran)方法,tran1局部坐标改变了,使用tran2.SetParent(tran, false),tran2的局部坐标没有改变。

这在实际的效果就是tran1的位置没有改变,tran2的位置会因父物体的坐标而产生变化。

http://www.lryc.cn/news/255727.html

相关文章:

  • Linux系统上RabbitMQ安装教程
  • ES通过抽样agg聚合性能提升3-5倍
  • c++详解栈
  • Zabbix结合Grafana打造高逼格监控系统
  • Linux设备树
  • 计算机方向的一些重要缩写和简介
  • ardupilot开发 --- git 篇
  • Linux基础命令练习2
  • Vue阶段笔记(有js包)
  • 执行npm run dev报Error: error:0308010C:digital envelope routines::unsupported问题
  • 解决微信小程序中 ‘nbsp;‘ 空格不生效的问题
  • vue el-select封装及使用
  • 了解linux计划任务
  • 等待和通知
  • vscode 如何将正则匹配到的字符前批量加字符
  • 上个月暴涨34.6%后,SoundHound AI股票现在还能买入吗?
  • Termux+Hexo结合内网穿透轻松实现安卓手机搭建博客网站发布公网访问
  • 程序员的养生指南(生命诚可贵,一人永流传!珍惜生命,从你我做起)
  • FP独立站怎么搭建?看这一篇就够了!强烈建议收藏!
  • 【华为OD题库-068】找出经过特定点的路径长度-java
  • 高性能队列框架-Disruptor使用、Netty结合Disruptor大幅提高数据处理性能
  • Linux学习笔记3 xshell(lnmp)
  • 分享几个可以免费使用GPT工具
  • 一篇文章带你快速入门 Nuxt.js 服务端渲染
  • 导入JDBC元数据到Apache Atlas
  • 大数据项目——基于Django/协同过滤算法的房源可视化分析推荐系统的设计与实现
  • [网鼎杯 2020 朱雀组]phpweb1
  • 深度学习之注意力机制
  • WordPress:解决xmlrpc.php被扫描爆破的风险
  • Fiddler抓包模拟器(雷电模拟器)