Unity:如何获得游戏对象精灵的支点?

时间:2017-03-04 20:43:17

标签: c# unity3d

在团结中,我试图获得我的游戏对象使用的精灵的轴心点。

当我在游戏中放置游戏对象(让我们称之为A)时,我改变了精灵的枢轴点以使其变得容易。现在,当我尝试在A的转换中产生另一个对象时,新的游戏对象,我知道它应该做的很热,它会在A的左上方产生。我需要以某种方式计算精灵A在世界坐标中使用的中心。

我试过了:

Debug.Log(tempGameObj.GetComponent<SpriteRenderer>().sprite.pivot);

但是这会产生一个结果为(-80,0,400)而枢轴点为(-0.25,1.25)。

如何计算中心?

1 个答案:

答案 0 :(得分:3)

您正在寻找的是ScreenToWorldPoint方法

Vector3 center = Camera.main.ScreenToWorldPoint(tempGameObj.GetComponent<SpriteRenderer>().sprite.pivot);

以下是您需要的文档 https://docs.unity3d.com/ScriptReference/Camera.ScreenToWorldPoint.html