标签:style blog color 使用 for strong sp div on
public GameObject myPrefab;
GameObject newObject = Instantiate(myPrefab) as GameObject;
注意Instantiate()后面的as也要是GameObject。
又比如我们的prefab类型是我们自定义的UserObject,
public UserObject prefab;
那么在使用Instantiate()时我们需要写成:
UserObject newObject = Instantiate(myPrefab) as UserObject;
比较容易犯的一个错误是我们声明的类型是:
public GameObject myPrefab;
在Instantiate()返回值却想要用Transform,如下:
Transform newObject = Instantiate(myPrefab) as Transform;
这个时候就会出现newObject为null的问题。
这个问题看起来很诡异,也曾经给我带来了一些麻烦,后来经过搜索和自己的实验证明了以上的结论,希望看到这篇文章的朋友可以避免这个问题。
导致这个问题的具体原因还不是很清楚,也许和C#语言的某些特性有关,自己也是刚接触C#没多久,如果之后搞明白会在这篇文章的下面补充。
Unity中Instantiate一个prefab时需要注意的问题
标签:style blog color 使用 for strong sp div on
原文地址:http://www.cnblogs.com/flyFreeZn/p/4026026.html