我做了一个UI画布预置,它有一个空的游戏对象,并附加了以下脚本:
float remainderAngle;
Image rotAngleWedge;
Image remAngleWedge;
public Image rotateWedgePrefab;
float zRotation = 0f;
public void PieGraph (float ringRotateAngle, Transform parentTransform) {
remainderAngle = 360f - ringRotateAngle;
rotAngleWedge = Instantiate (rotateWedgePrefab) as Image;
rotAngleWedge.transform.position = parentTransform.position;
rotAngleWedge.transform.SetParent (transform, false);
rotAngleWedge.color = Color.yellow;
rotAngleWedge.fillAmount = ringRotateAngle / 360f;
zRotation = Quaternion.Euler (parentTransform.eulerAngles).z - 45.0f;
rotAngleWedge.transform.rotation = Quaternion.Euler (new Vector3 (0, 0, zRotation));
zRotation -= rotAngleWedge.fillAmount * 360f;
remAngleWedge = Instantiate (rotateWedgePrefab) as Image;
remAngleWedge.transform.position = parentTransform.position;
remAngleWedge.transform.SetParent (transform, false);
remAngleWedge.color = Color.white;
remAngleWedge.fillAmount = remainderAngle / 360f;
remAngleWedge.transform.rotation = Quaternion.Euler (new Vector3 (0, 0, zRotation));
}然后,在创建预置后,我调用父游戏对象脚本中的PieGraph方法。我似乎无法将UI画布定位在与其父对象相同的位置。请查看下面画布及其子对象的检查器设置的图像。我如何才能将它们放在同一位置?
UI Canvas预置检查器设置

UI Canvas预设子游戏对象检查器设置

发布于 2017-10-26 18:18:13
可以尝试将RenderMode指定给世界空间。
https://stackoverflow.com/questions/46951625
复制相似问题