Unity 创建游戏物体的常用方法

一、创建空的游戏物体

  • 创建一个空的游戏物体
1     void Start()
2     {
3         new GameObject();
4     }

  • 创建一个空的游戏物体,并命名
1     void Start()
2     {
3         new GameObject("Table");
4     }

  • 创建一个空的游戏物体,命名并用 go 接受对象(代码内操作其他属性)
1     void Start()
2     {
3         GameObject go = new GameObject("Table");
4         print(go.name);
5     }

二、创建原始对象 Cube、Sphere、Capsule 等

1     void Start()
2     {
3         GameObject.CreatePrimitive(PrimitiveType.Cube); //正方体
4         GameObject.CreatePrimitive(PrimitiveType.Sphere); //球体
5         GameObject.CreatePrimitive(PrimitiveType.Capsule); //胶囊
6         GameObject.CreatePrimitive(PrimitiveType.Cylinder); //圆柱体
7         GameObject.CreatePrimitive(PrimitiveType.Plane); //平面,占用内存大
8         GameObject.CreatePrimitive(PrimitiveType.Quad); //平面,占用内存小
9     }

三、通过预制体创建对象

方法大致有五个:

  • GameObject.Instantiate(Object original); 

  指定参数只有一个,预制体(也就是实例化对象)

  • GameObject.Instantiate(Object original, Transform parent); 

  参数分别为:预制体(实例化对象)和指定创建对象的父类

  • GameObject.Instantiate(Object original, Transform parent, bool instantiateInWorldSpace); 

  最后一个参数是-分配父类的时候是否保持原始的世界位置,false不保留,true保留

  • GameObject.Instantiate(Object original, Vector3 position, Quaternion rotation); 

  参数分别为:实例化对象(预制体),实例化的位置,实例化的角度

  • GameObject.Instantiate(Object original, Vector3 position, Quaternion rotation, Transform parent); 

  参数分别为:实例化对象(预制体),实例化的位置,实例化的角度,指定父类

 1     public GameObject prefab;
 2 
 3     void Start()
 4     {
 5         // 这里创建一个空的游戏物体作为父类
 6         GameObject go = new GameObject("table");
 7 
 8         GameObject.Instantiate(prefab); //实例化对象
 9         GameObject.Instantiate(prefab, go.transform); //创建的时候指定父类(go.transform)
10         GameObject.Instantiate(prefab, go.transform, false); //分配父类的时候是否保持原始的世界位置,false不保留,true保留
11         GameObject.Instantiate(prefab, go.transform.position, Quaternion.identity); //Quaternion.identity -对象与世界轴或父轴完美对齐(无旋转)
12         GameObject.Instantiate(prefab, go.transform.position, Quaternion.identity, go.transform); //创建对象的同时指定父类
13     }

*** |  以上内容仅为学习参考、学习笔记使用  | ***

原文地址:https://www.cnblogs.com/ChenZiRong1999/p/13320876.html