Unity3D Script Keynote

Unity3D Script Keynote

 1、创建GameObject

 

 1     if(GUILayout.Button("创建立方体",GUILayout.Height(50)))
 2     {
 3         //设置该模型默认为立方体
 4         var objCube = GameObject.CreatePrimitive(PrimitiveType.Cube);
 5         //给此对象添加一个刚体用于整理感应
 6         objCube.AddComponent(Rigidbody);
 7         //设置这个游戏对象的名称
 8         objCube.name="Cube";
 9         //设置此模型材质的颜色
10         objCube.renderer.material.color = Color.blue;
11         //设置此模型在坐标
12         objCube.transform.position = new Vector3(0.0f,10.0f,0.0f);
13     }
View Code

 2、通过GameObject.Find可以获取实例引用:

1     //获取游戏对象
2     objCube = GameObject.Find("Cube");
3     objSphere = GameObject.Find("Object/Sphere");
View Code

 3、通过GameObject.FindWithTag()可以获取标签对象,此方法只能获取第一个添加了些标签的对象。

 4、FindGameObjectsWithTag()可以获取某一标签下的所有对象。对象标签可以动态修改:

1      //得到包含MyTag标签的游戏对象数组
2     var objs = GameObject.FindGameObjectsWithTag ("MyTag");
3     //将5号元素的标签修名称修改为TestTag
4     objs[5].tag = "TestTag";
View Code

 5、发送消息 

 

 6、代码中使用Instantiate()方法克隆游戏对象。

1         //克隆一个obj的实例
2         var clone :GameObject = Instantiate(obj, obj.transform.position, obj.transform.rotation);
3         //5秒后销毁该实例,
4         Destroy (clone, 5);
View Code

   7、添加/删除脚本组件。

 1     if(GUILayout.Button("给立方体添加脚本组件",GUILayout.Height(50))){
 2         //添加cube_script脚本
 3         if(obj)
 4         obj.AddComponent("cube_script");
 5     }
 6     
 7     if(GUILayout.Button("删除立方体脚本组件",GUILayout.Height(50))){
 8         //删除cube_script脚本
 9         if(obj)
10         Destroy (obj.GetComponent ("cube_script"));
11     }
View Code

   8、模型的旋转。

 9、C#代码中类名必须与文件名一致,否则编译错误。

 10、使用Time类:

1     void OnGUI()
2     {
3         GUILayout.Label("当前游戏时间:" + Time.time);
4         GUILayout.Label("上一帧所消耗的时间:" + Time.deltaTime);
5         GUILayout.Label("固定增量时间:" + Time.fixedTime);
6         GUILayout.Label("上一帧所消耗固定时间:" + Time.fixedDeltaTime);
7     }
View Code

   11、获取随机数:

1         int a  = Random.Range(0,100); 
2         float  b = Random.Range(0.0f,10.0f); 
3         
4         Debug.Log("获取一个0-100之间的整形随机数" + a);
5         Debug.Log("获取一个0.0f-10.0f之间的浮点型随机数" + b);
View Code
原文地址:https://www.cnblogs.com/tekkaman/p/3537248.html