Unity 黑暗之光 笔记 第一章
第一章 设计游戏开始进入场景
1.设置相机视野同步
选中要调整的相机
GameObject - Align With View(快捷键 Ctrl + Shift + F)
2.添加光
Directional Light光
Color决定光的颜色
Intensity决定光照强度
3.设置游戏鼠标指针图片
File - Build Settings(快捷键 Ctrl + Shift + B)
然后右边就可以选择你要的指针图片了
4.添加水面
资源面板右键
Import Packge - Water(Basic) - Import
导入之后的水资源位于
Standard Assets - Water(Basic)
DayLight Simple Water是白天的水面
Nighttime Simple Water是晚上的水面
5.添加天空盒
Skybox组件
资源面板右键
Import Packge - Skyboxes - Import
导入之后的天空资源位于
Standard Assets - Skyboxes
DawnDusk Skybox 黄昏的天空
Eerie Skybox 诡异的天空
MoonShine Skybox 月光的天空
Overcast Skybox 阴沉的天空
StarryNight Skybox 夜晚的天空
Sunny Skybox 晴朗的天空
6.实现镜头缓慢拉近
1 public float speed = 10f;//移动速度 2 private float endZ = -20;//移动的最终坐标 3 void Update () 4 { 5 //通过Z轴坐标判断是否移动 6 if (transform.position.z < endZ) 7 { 8 //未达到目标位置需要移动 9 transform.Translate(Vector3.forward * speed * Time.deltaTime); 10 } 11 }
7.添加雾
-
Edit - Render Settings
-
Window - Rendering - Lighting Settings - other Settings
-
Window - Lighting - Settings - other Settings
不同版本有不同的存储位置
勾选上Fog
Color决定雾的颜色
Mode雾效的模式,一共有三种
-
Linear
参数Start和End两个距离,雾效从Start开始越接近End越浓,到达End时达到最大浓度,End之后也为最大浓度
-
Exponential
-
Exponential Squared
Density决定雾的浓度,取值范围0~1,数值越大雾效浓度越高。
8.添加NGUI
添加赋值白色底图
右键添加Alpha动画
From 开始
To 结束
Play Style
Once 一次
Loop 循环播放
ping pong 来回播放
设置延迟时间 2s
Duration 持续时间
Start Delay 开始延迟
9.设计开始动画
使用NGUI图集设计界面布局
10.添加任何按键点击事件
1 private bool isAnyKeyDown = false;//表示是否有任何按键按下 2 private GameObject ButtonContainer;//获取ButtonContainer 3 void Start() 4 { 5 ButtonContainer = this.transform.parent.Find("ButtonContainer").gameObject; 6 } 7 void Update () 8 { 9 if (isAnyKeyDown == false) 10 { 11 //任何按键 12 if (Input.anyKey) 13 { 14 //点击后执行的方法 15 ShowButton(); 16 } 17 } 18 } 19 /// <summary> 20 /// 开始按钮和读取按钮切换的方法 21 /// </summary> 22 void ShowButton() 23 { 24 ButtonContainer.SetActive(true);//选择按钮出现 25 this.gameObject.SetActive(false);//自身画面隐藏 26 isAnyKeyDown = true; 27 }
开始按钮和读取按钮的点击事件
1 /// <summary> 2 /// 开始新游戏 3 /// </summary> 4 public void OnNewGame() 5 { 6 PlayerPrefs.SetInt("DataFormSave", 0);//DataFormSave表示数据来自保存 7 //加载选择角色的场景2 8 } 9 /// <summary> 10 /// 读取旧游戏 11 /// </summary> 12 public void OnLoadGame() 13 { 14 PlayerPrefs.SetInt("DataFormSave",1);//DataFormSave表示数据来自保存 15 //加载play场景3 16 }
赋值On Click点击方法
11.添加背景音乐
主相机添加Audio Source组件
勾选Loop循环播放
Volume调节游戏音量
NGUI按钮添加点击声音
添加Play Sound组件
Trigger为触发器(在什么时候触发)