五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

unity教程:加載場景時(shí)過場界面實(shí)現(xiàn)

2023-07-20 12:28 作者:塵風(fēng)一枚  | 我要投稿

using System;

using System.Collections;

using System.Collections.Generic;

using UnityEngine;

using UnityEngine.SceneManagement;


public class UIManager : MonoBehaviour

{

public CanvasGroup UI;


private void Awake()

{

UI = FindObjectOfType<CanvasGroup>();

}


private void OnEnable()

{

SceneSwitchEventHandler.SwitchScenes += OnSwitchScenes;

}


private void OnDisable()

{

SceneSwitchEventHandler.SwitchScenes += OnSwitchScenes;

}


/// <summary>

/// 訂閱(場景切換)

/// </summary>

/// <param name="targetScene">目標(biāo)場景</param>

private void OnSwitchScenes(string targetScene)

{

StartCoroutine(SwitchScenes(targetScene));

}


/// <summary>

/// 切換場景方法

/// </summary>

/// <param name="targetScene">目標(biāo)場景</param>

private IEnumerator SwitchScenes(string targetScene)

{

//將加載顯示UI界面優(yōu)先級調(diào)高于其他場景的UI界面

UI.GetComponentInParent<Canvas>().sortingOrder = 1;

//調(diào)用方法 將加載顯示UI界面的透明度逐漸調(diào)高至完全不透明

yield return Fade(1);

//關(guān)閉當(dāng)前激活的場景 (異步)

yield return SceneManager.UnloadSceneAsync(SceneManager.GetActiveScene());

//加載需要的場景并設(shè)置為激活

yield return LoadSceneSetActive(targetScene);

//調(diào)用方法 將加載顯示UI界面的透明度逐漸調(diào)低至完全透明

yield return Fade(0);

//恢復(fù)加載顯示UI界面的優(yōu)先級

UI.GetComponentInParent<Canvas>().sortingOrder = -1;

}


/// <summary>

/// 加載場景并設(shè)置為激活

/// </summary>

/// <param name="sceneName">場景名</param>

/// <returns></returns>

private IEnumerator LoadSceneSetActive(string sceneName)

{

yield return SceneManager.LoadSceneAsync(sceneName, LoadSceneMode.Additive);


Scene newScene = SceneManager.GetSceneAt(SceneManager.sceneCount - 1);


SceneManager.SetActiveScene(newScene);

}


/// <summary>

/// 逐漸修改UI界面的透明度

/// </summary>

/// <param name="targetAlpha">修改值</param>

/// <returns></returns>

private IEnumerator Fade(float targetAlpha)

{

UI.blocksRaycasts = true;


float speed = Mathf.Abs(UI.alpha - targetAlpha) / 1.5f;


while (!Mathf.Approximately(UI.alpha, targetAlpha))

{

UI.alpha = Mathf.MoveTowards(UI.alpha, targetAlpha, speed * Time.deltaTime);

yield return null;

}


UI.blocksRaycasts = false;

}

}


using UnityEngine;


public class LoadScene : MonoBehaviour

{

/// <summary>

/// 加載場景

/// </summary>

/// <param name="sceneName">加載場景名字</param>

public void SwitchScene(string sceneName)

{

SceneSwitchEventHandler.CallSwitchScenes(sceneName);

}

}


using System;


public static class SceneSwitchEventHandler

{

/// <summary>

/// 事件(切換場景時(shí)調(diào)用)

/// </summary>

public static Action<string> SwitchScenes;

/// <summary>

/// 調(diào)用事件

/// </summary>

/// <param name="targetScene">目標(biāo)場景</param>

public static void CallSwitchScenes(string targetScene)

{

SwitchScenes?.Invoke(targetScene);

}

}

unity教程:加載場景時(shí)過場界面實(shí)現(xiàn)的評論 (共 條)

分享到微博請遵守國家法律
华阴市| 兴海县| 永和县| 敖汉旗| 兰西县| 时尚| 弥勒县| 旌德县| 鄂州市| 渭源县| 毕节市| 淮阳县| 金山区| 光泽县| 修武县| 吉安市| 临沂市| 栾城县| 曲靖市| 南召县| 太仆寺旗| 汽车| 正阳县| 奈曼旗| 五大连池市| 句容市| 舒兰市| 开阳县| 溧阳市| 肃南| 漳浦县| 高碑店市| 县级市| 大宁县| 江北区| 武宣县| 石城县| 无锡市| 房产| 永清县| 辰溪县|