Unity GetComponent <类型>返回值

时间:2018-07-26 16:37:51

标签: c# unity3d game-engine gameobject

调用中返回了Type类型的哪个游戏对象

GetComponent<Type>();

主叫游戏对象是否附加了一个以上类型的对象?

此函数的文档仅说如果存在游戏对象,则返回该游戏对象,否则返回null。

我有一个包含多个Collider2D的游戏对象,想知道将返回哪个对象,以及它是否一致。

1 个答案:

答案 0 :(得分:5)

如果连接的个以上组件与指定的Type相匹配,则Unity将返回 first 一个。但是,不要依赖于此,因为哪个是“第一个”可能不受您的控制。这将是确定性的,但由于Unity在内部维护,序列化和存储数据的方式而可能会发生意外更改。

这就是为什么通常不建议您将多个相同类型的组件(例如对撞机)附加到同一游戏对象上的原因。如果您需要多个,请带孩子。