五月天青色头像情侣网名,国产亚洲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)的評論 (共 條)

分享到微博請遵守國家法律
丰台区| 榆树市| 咸丰县| 南召县| 南京市| 库车县| 沙坪坝区| 定陶县| 乌拉特中旗| 嘉峪关市| 彰武县| 高碑店市| 三门县| 桓仁| 二连浩特市| 富蕴县| 隆尧县| 鹿泉市| 五台县| 柞水县| 玉门市| 堆龙德庆县| 揭东县| 金乡县| 三明市| 松溪县| 沭阳县| 卓资县| 广宗县| 收藏| 澄江县| 武穴市| 徐汇区| 图片| 丹凤县| 丹寨县| 临漳县| 顺平县| 荣昌县| 饶河县| 姚安县|