Unity 游戏光明之光笔记
第一章 欠缺场景
- 导入资地形、地貌资源,新建场景,导入地形、地貌prefab
- 设置相机与视线匹配
选中主摄像机,点选菜单栏中GameObject > Align With View - 增加灯光
Direction light > Intensity 光照强度
- 增加鼠标指针
File > Build Settings > Player Settings - 增加水面
- 实现镜头迟缓拉近的成果
public float speed = 10; //设置速度private float endZ = -20; //设置完结坐标void Start () { void Update () { //判断坐标小于完结坐标 if (transform.position.z < endZ) { //还没有达到目标地位,须要挪动 transform.Translate( Vector3.forward*speed*Time.deltaTime); } }
- 增加雾
Window > Rendering > Lighting Settings > other Settings 应用UGUI和红色背景给场景增加渐显成果
增加UI >image 给image增加Canvas Group 组件
增加一个管制渐显的脚本,在主摄像头中增加办法,其余的动画成果相似这样制作 press的动画成果能够应用timeline制作UIFadeTest.Instance.UIShow();
public float fadeSpeed = 10; //速度 private CanvasGroup canvasGroup; private float alpha = 1.0f; private static UIFadeTest instance; //设置单例 public static UIFadeTest Instance { get { return instance; } } void Start() { instance = this; canvasGroup = this.gameObject.GetComponent<CanvasGroup>(); } // Update is called once per frame void Update() { if (alpha != canvasGroup.alpha) { canvasGroup.alpha = Mathf.Lerp(canvasGroup.alpha, alpha, fadeSpeed * Time.deltaTime); if (Mathf.Abs(canvasGroup.alpha - alpha) < 0.01f) { canvasGroup.alpha = alpha; } } } public void UIShow() { alpha = 0; canvasGroup.blocksRaycasts = false; }}
- 增加鼠标点击事件
在点击Press后显示按钮,先让newgame和loadgame按钮不激活
private bool isAnyKeyDown = false;//示意是否有任何按键按下 private GameObject buttonContainer; void Start() { buttonContainer = this.transform.parent.Find("buttonContainer").gameObject; } // Update is called once per frame void Update() { //断定没有按键按下 if (isAnyKeyDown == false) { //如果按下显示案件 if (Input.anyKey) { { ShowButton(); } } } //开始和加载按钮显示办法 void ShowButton() { buttonContainer.SetActive(true); this.gameObject.SetActive(false); isAnyKeyDown = true; } }
newgame和loadgame按钮鼠标事件
1 游戏数据的保留,和场景之间游戏数据的传递应用 PlayerPrefs
2 场景的分类
2.1 开始场景
2.2 角色抉择界面
2.3 游戏玩家打怪的界面,就是游戏理论的运行场景
//开始新游戏 public void OnNewGame() { PlayerPrefs.SetInt("DataFromSave", 0); // 加载咱们的抉择角色的场景 2 } //加载曾经保留的游戏 public void OnLoadGame() { PlayerPrefs.SetInt("DataFromSave", 1); //DataFromSave示意数据来自保留 //加载咱们的play场景3 }
- 给开始场景增加背景声音和按钮点击的声音
在主摄像机增加BGM音乐
在newgame和loadgame按钮上别离增加playsound脚本