【发布时间】:2014-06-05 19:19:53
【问题描述】:
我想在 Unity 的 C# 脚本中访问精灵的像素到单位属性。
如果我获得 localScale 或 lossyScale 属性,则需要将它们除以该数字,以便根据其他对象的 Pixels To Units 属性可能具有不同值进行缩放。
在这种情况下如何正确获取该属性的值或缩放?
【问题讨论】:
我想在 Unity 的 C# 脚本中访问精灵的像素到单位属性。
如果我获得 localScale 或 lossyScale 属性,则需要将它们除以该数字,以便根据其他对象的 Pixels To Units 属性可能具有不同值进行缩放。
在这种情况下如何正确获取该属性的值或缩放?
【问题讨论】:
您无法通过脚本访问该属性,但您可以自己计算因子。
Sprite mySprite;
float pixel2units = mySprite.rect.width / mySprite.bounds.size.x;
【讨论】:
他们一定是最近添加的 http://docs.unity3d.com/ScriptReference/Sprite-pixelsPerUnit.html
例子:
(myGameObject).GetComponent<SpriteRenderer>.sprite.pixelsPerUnit;
【讨论】:
(myGameObject).GetComponent<SpriteRenderer>.sprite.pixelsPerUnit; 不知道为什么这被否决了。