首页 > 解决方案 > 变换位置未返回正确值

问题描述

我有这个简单的代码:

GameObject newObj = Instantiate(loadAsset, transform);
newObj.transform.localScale = new Vector3(assetScale, assetScale, assetScale);
_container = newObj.transform;
_tooltip = _container.GetChild(1);

PositionCanvas();
Controls = true;

Debug.Log(newObj.transform.Find("Tooltip").rotation.eulerAngles);
Debug.Log(newObj.transform.Find("Tooltip").position);

根据检查员 mi 位置值是这样的:

在此处输入图像描述

但是控制台返回给我这个:

在此处输入图像描述

谁能解释我做错了什么或为什么我收到(0、1、0)而不是(0、100、0)?

标签: unity3d

解决方案


在检查器中,您正在查看本地位置并且它是相对于父级的。控制台呈现世界位置。我的猜测是你的父对象要么有不同的位置向量然后(0,0,0),要么在 Y 轴上的比例为 0.01。


推荐阅读