[英]Unity: Scale a GameObject in world space
您可以取消其父级,缩放它,然后再使其重新父级化,或者可以创建将两个对象分开保存的游戏对象,以便它们都具有自己的缩放比例。
void Rescale(Transform obj, Vector3 newScale)
{
if(obj.root != obj)
{
Transform parent = obj.parent;
obj.SetParent(null);
obj.localScale = newScale;
obj.SetParent(parent, true);
}
}
您可以使用以下功能将比例(Vector3)从世界空间转换为局部空间:
transform.parent.InverseTransformVector(worldScale)
要将正确的比例应用于多维数据集,您可以执行以下操作:
cube.transform.localScale = cube.transform.parent.InverseTransformVector(worldScale);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.