Unity实例化Prefab in C#

1. 首先Expose一个属性到外部(方便拖拉Prefab到脚本上)

public class createPrefabTest : MonoBehaviour {
public GameObject target;
}

2. 在需要的位置实例化Prefab

void Start () {
	GameObject.Instantiate(target,new Vector3(1,1,0),Quaternion.identity);}

Instantiate(目标prefab,位置,旋转)

注1: Resources方式也可以创建Prefab,但是由于是用字符串硬编码prefab名称,难以维护,所以不推荐使用

注2:旋转的参数类型是Quaternion,四元数,非vector3或欧拉角;四元数比欧拉角有诸多优点,不再赘述,详情可参《3D数学基础》一书

如果需要使用欧拉角,可以Quaternion.Euler(new Vector3(x,y,z))

注3:实例化在部分设备上会消耗相当的内存与计算量,故在移动设备上应慎用,以免影响用户体验。可以使用pool等相关方法来进行优化

你可能感兴趣的:(优化,vector,C#,脚本,Class,resources)