unity3d 使用本地位置www.example.com管理游戏对象Vector3.zero,与父对象的位置不同

xxe27gdn  于 2023-04-12  发布在  其他
关注(0)|答案(1)|浏览(107)

我有以下代码:

relationHint = Instantiate(prefabRelationHint) as GameObject;
relationHint.transform.SetParent(imageObject.transform, false);
relationHint.transform.localPosition = Vector3.zero;

目标是在imageObject(红色笑脸)的相同位置生成relationHint(带文本的白色正方形)。在检查器中一切正常,因为relationHint被创建为imageObject的child并且具有位置0,0,0,但在相机上它没有与imageObject相同的位置。

我做错了什么?

j8ag8udp

j8ag8udp1#

您需要将HitRelation的透视值设置为x:0.5,y:0.5。这是中心值。
当你把它设为(2,2)时,你就说游戏对象的中心在(2,2)点,而当你把localPosition设为(0,0,0)时,这个点就居中了。

相关问题