在Unity中缩放游戏对象

6
如何在Unity中增加/减小对象的大小?
示例:
public GameObject sprite;
public  float scale = 2.0f;

void ScaleResolution()
{
    sprite = sprite*scale; //epic string!
}

它们不需要是公共的。使用[ SerializeField ]。 - user652038
@Jessy:Unity文档实际上建议将它们保持为public。 - BlueRaja - Danny Pflughoeft
我没有看到推荐。 - user652038
@Jessy 第一句话是“你几乎永远不需要这个”... - BlueRaja - Danny Pflughoeft
那个说法是不正确的;从技术上讲,你永远不需要SerializeField属性,就像你永远不需要私有字段一样。然而,这种序列化行为是为Unity的“JavaScript”设计的,其中字段的默认访问权限是public,并且没有属性。如果你使用C#,属性可以轻松避免通过将所有序列化字段公开来牺牲代码质量。 - user652038
2个回答

22

这是“transform”组件的一个属性

sprite.transform.localScale = new Vector3(2.0f, 2.0f, 2.0f);

2

位置、旋转和缩放是变换的属性,因此您需要按照以下方式进行修改:

public GameObject sprite;

public float scale = 2.0f;

void ScaleResolution()

{

sprite.transform.localScale = new Vector3(scale, scale, scale);
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接