【Unity3D Script Keynote】
1、通过GameObject.CreatePrimitive()来创建对象。AddComponent()用于给对象添加一个组件。
2、GameObject.Find()方法中传入对象的在Hierarchy中的路径名,即可获取该对象。
3、通过Destroy()方法可以销毁对象。
4、发送消息。
需要注意,SendMessageUpwards()函数首先会将消息发送给自己,然后才会发送给父类。
5、旋转分为以下2种,Rotate绕自己旋转,RotateAround绕其它对象旋转:
6、C#中,类名必须与文件名一致。类必须继承自MonoBehaviour类。
7、js与c#的互调。首先,获取对象,然后调用对象的方法。
8、使用WaitForSecond()生成对象,可让线程等待。
9、通过Random.Range()获取一个随机数。
10、Mathf是数学类
11、摄像头投影类型切换:
12、添加新菜单:
13、添加组件菜单:
14、摄像机切换:
15、Physics.Raycast可以绘制射线,hit返回世界坐标。
16、控制音频:
1 using UnityEngine; 2 using System.Collections; 3 4 public class Script_09_01 : MonoBehaviour 5 { 6 7 //音乐文件 8 public AudioSource music; 9 //音量 10 public float musicVolume; 11 12 void Start() 13 { 14 //设置默认音量 15 musicVolume = 0.5F; 16 } 17 void OnGUI() 18 { 19 20 //播放音乐按钮 21 if (GUI.Button(new Rect(10, 10, 100, 50), "播放音乐")) 22 { 23 24 //没有播放中 25 if (!music.isPlaying) 26 { 27 //播放音乐 28 music.Play(); 29 } 30 31 } 32 33 //关闭音乐按钮 34 if (GUI.Button(new Rect(10, 60, 100, 50), "停止音乐")) 35 { 36 37 if (music.isPlaying) 38 { 39 //关闭音乐 40 music.Stop(); 41 } 42 } 43 //暂停音乐 44 if (GUI.Button(new Rect(10, 110, 100, 50), "暂停音乐")) 45 { 46 if (music.isPlaying) 47 { 48 //暂停音乐 49 //这里说一下音乐暂停以后 50 //点击播放音乐为继续播放 51 //而停止以后在点击播放音乐 52 //则为从新播放 53 //这就是暂停与停止的区别 54 music.Pause(); 55 } 56 } 57 58 //创建一个横向滑动条用于动态修改音乐音量 59 //第一个参数 滑动条范围 60 //第二个参数 初始滑块位置 61 //第三个参数 起点 62 //第四个参数 终点 63 musicVolume = GUI.HorizontalSlider (new Rect(160, 10, 100, 50), musicVolume, 0.0F, 1.0F); 64 65 //将音量的百分比显示出来 66 GUI.Label(new Rect(160, 50, 300, 20), "游戏音量" + (int)(musicVolume * 100) + "%"); 67 68 if (music.isPlaying) 69 { 70 //音乐播放中设置音乐音量 取值范围 0.0F到 1.0 71 music.volume = musicVolume; 72 } 73 } 74 }
17、通过将render.material.texture指向为movieTexture,即可播放影片。
1 public class Script_09_02 : MonoBehaviour { 2 3 //电影纹理 4 public MovieTexture movTexture; 5 6 void Start() 7 { 8 //设置当前对象的主纹理为电影纹理 9 renderer.material.mainTexture = movTexture; 10 //设置电影纹理播放模式为循环 11 movTexture.loop = true; 12 } 13 14 void OnGUI() 15 { 16 if(GUILayout.Button("播放/继续")) 17 { 18 //播放/继续播放视频 19 if(!movTexture.isPlaying) 20 { 21 movTexture.Play(); 22 } 23 24 } 25 26 if(GUILayout.Button("暂停播放")) 27 { 28 //暂停播放 29 movTexture.Pause(); 30 } 31 32 if(GUILayout.Button("停止播放")) 33 { 34 //停止播放 35 movTexture.Stop(); 36 } 37 } 38 }