实例化 GameObject 的正确方法?

Right way to instantiate GameObject?

所以我对在 Unity c# 中实例化预制 gameObject 的正确方法感到进退两难。

这是 2 个示例代码

示例 1:

public Transform musicPrefab;
GameObject mManager = (GameObject)Instantiate(musicPrefab,transform.position, Quaternion.identity); 

示例 2:

public Transform musicPrefab;
Object mManager = Instantiate(musicPrefab,transform.position, Quaternion.identity);

但是实例化为 Object 也可以,所以哪种方法是正确的?

类型 object 太笼统了。它实际上没有多大意义,因为在 Unity3D 中您将无法使用 object 做任何有意义的事情。当你实例化一个预制件时,你通常期望创建一个GameObject(有没有你实际上没有获得GameObject的情况??我个人从未遇到过这种情况......),所以应该是正确的方式。 GameObject 有许多您可以使用的属性和方法。无论哪种方式,您都必须在稍后将结果转换为 GameObject...