赞
踩
让子物体在父级的位置下保持相对位置
先获得父级和子级的transform.position
这个是在世界坐标下的绝对位置
然后相减获得子级在父级下的相对位置
最后给子级赋值
使用gameobject.transform.localposition这个方法,将前面获得的相对位置赋值进去即可
private GameObject 父级;
private GameObject 子级;
private Vector3 相对位置;
父级= GameObject.Find("父级");
子级= GameObject.Find("子级");
相对位置= 父级.transform.position - 子级".transform.position;
子级.transform.localPosition = 相对位置;
注意,这里中文是为了方便理解,代码中一定要用英文
同天下午更新
这里还需要注意一点
如果这个脚本挂载在很多物体上的话,相对位置需要写死,这个直接在unity的inspecter看子物体的transform的position属性就可以了
如果这个脚本挂在在很多物体上,必须保证你的相对位置不会被其他脚本所影响,否则就会出现相对位置不正确导致的移动出现bug
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。