【问题标题】:Unity2D - uniform positioning of transforms with different sizesUnity2D - 不同尺寸变换的统一定位
【发布时间】:2017-01-20 04:27:40
【问题描述】:

我有一个矩形(精灵),我需要在该矩形内放置不同的游戏对象(精灵),但它们的底部都“对齐”。

在我的一生中,我无法让它在 Unity 中工作。

假设我的盒子的高度为 5。

我想放置不同大小的对象,使它们都“静止”在盒子内的 2.5 y 轴上。

由于 transform.position 从游戏对象的中心测量,有谁知道我该怎么做?

谢谢!

【问题讨论】:

  • 我认为您应该为您想要实现的目标提供更多详细信息,例如您尝试实现的目标的屏幕截图。
  • 你的矩形是四边形?
  • 大家好,感谢您的回复...基本上我想将一个对象堆叠在另一个对象之上。下面的对象保持相同的大小,堆叠在它上面的对象可以是任何大小。我发现我做错了什么......我在下面的对象上使用了 transform.position 并减去了 renderer.bounds.y。我发现我使用了两种不同的工具进行测量,因此结果不准确。我现在使用 renderer.center.y 并减去 renderer.bounds.y,这给了我表面的确切 y 位置。再次感谢您的回复!!!

标签: unity3d unity5 unity3d-2dtools


【解决方案1】:

不要使用 transform.position,使用 RectTransform 属性,因为它们会考虑锚点。特别是你需要在 prebab/inspector 中为 sprite 设置anchor position,然后使用RectTransform.anchoredPosition 来定位它。

【讨论】:

    猜你喜欢
    • 2016-11-10
    • 2016-04-06
    • 2020-12-26
    • 1970-01-01
    • 2019-06-02
    • 1970-01-01
    • 2017-04-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多