Unity正确的精灵/纹理宽度高度

时间:2017-05-23 19:44:51

标签: unity3d textures sprite projection

我发现了一些关于Unity Sprite和纹理(Texture2D)的有趣内容。我创建了一个50x50 .png并通过附加到GameObject并使用SpriteRenderer在Unity中呈现它。

我意识到,每当我调用Unity相关方法(sprite.texture.widthsprite.rect.widthsprite.textureRect.width等)时,它总是返回50.但是,图像的实际大小根据屏幕上的分辨率变成24x24或12x12。

当然,这不是什么大惊喜,因为在Unity渲染屏幕上的东西之前应用投影等;然而,有趣的部分我无法找到任何方法或简单的方法来获得投影后Sprite的大小。

我仍然可以自己做出相应的尺寸;但是,我想知道是否有更简单的方法来获取这些信息。

谢谢!

1 个答案:

答案 0 :(得分:0)

@ Draco18s提到的方式似乎是解决这个问题的唯一方法。

所以,我创建了包含PrefabGameObject的{​​{1}} RectTransform,并获得了如下宽度和高度:

SpriteRenderer