国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Unity Addressables學習筆記(3)---加載遠程場景Scenes

這篇具有很好參考價值的文章主要介紹了Unity Addressables學習筆記(3)---加載遠程場景Scenes。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言

Unity Addressables學習筆記—匯總

正文

1.創(chuàng)建一個新場景

我是創(chuàng)建在Resources/Scenes目錄下,如圖:
加載遠程addressable資源,Unity,unity,學習,筆記

2.為場景創(chuàng)建一個Addressables的Group

Game1Group就是我新創(chuàng)建的一個Group用來存放場景1的所有資源,分組的配置跟Remote一樣,都是遠程的,加載地址是我本地啟動的web服務器地址,URL里WebGL那個目錄也不是必須的,根據(jù)自己實際的來。
加載遠程addressable資源,Unity,unity,學習,筆記

3.把新場景和場景里用到的資源全部拖入到Game1Group里

上邊的圖就是拖完的狀態(tài)。

4.在初始化的場景里添加代碼,用Addressables的方式加載新的場景Game1.

我是在最開始的場景里圖片1那個開始按鈕上加了個點擊事件去觸發(fā)加載Game1這個場景的

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AddressableAssets;
using UnityEngine.ResourceManagement.AsyncOperations;
using UnityEngine.UI;

public class GameController : MonoBehaviour
{
    private Sprite sprite;
    public Button btn;
    public List<string> list;
    void Start()
    {
        //Addressables.Instantiate("Play Button").Result.transform.position = new Vector3(2f, 2f);
        foreach (string name in list)
        {
            Addressables.LoadAssetAsync<GameObject>(name).Completed += SpriteLoadedObj;
        }
        //PlayerPrefs.DeleteKey(Addressables.kAddressablesRuntimeDataPath);
        Addressables.LoadAssetAsync<Sprite>("Play Button Img").Completed += SpriteLoaded;
    }



    private void SpriteLoaded(AsyncOperationHandle<Sprite> obj)
    {
        switch (obj.Status)
        {
            case AsyncOperationStatus.Succeeded:
                sprite = obj.Result;
                Debug.Log(sprite);
                btn.image.sprite = sprite;
                break;
            case AsyncOperationStatus.Failed:
                Debug.LogError("Sprite load failed.");
                break;
            default:
                //case AsyncOperationStatus.None:
                break;
        }
    }

    private void SpriteLoadedObj(AsyncOperationHandle<GameObject> obj)
    {
        switch (obj.Status)
        {
            case AsyncOperationStatus.Succeeded:
                GameObject a = Instantiate(obj.Result);
                a.transform.position = new Vector2(2f, 2f);
                break;
            case AsyncOperationStatus.Failed:
                Debug.LogError("Sprite load failed.");
                break;
            default:
                //case AsyncOperationStatus.None:
                break;
        }
    }


    // Update is called once per frame
    void Update()
    {

    }
    public void onClick()
    {
        Addressables.LoadSceneAsync("Game1");
    }
}

5.場景1:用Addressables創(chuàng)建一個對象,在Hierarchy里拖進去一個對象,一共2個對象

下邊是場景1拖進去的一個對象
加載遠程addressable資源,Unity,unity,學習,筆記
下邊是GameObject上隨便綁定一個C#腳本再去創(chuàng)建一個對象

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AddressableAssets;
using UnityEngine.ResourceManagement.AsyncOperations;

public class Game1Controller : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        Addressables.LoadAssetAsync<GameObject>("Layer 10").Completed += SpriteLoadedObj;
    }

    // Update is called once per frame
    private void SpriteLoadedObj(AsyncOperationHandle<GameObject> obj)
    {
        switch (obj.Status)
        {
            case AsyncOperationStatus.Succeeded:
                GameObject a = Instantiate(obj.Result);
                a.transform.position = new Vector2(2f, 2f);
                break;
            case AsyncOperationStatus.Failed:
                Debug.LogError("Sprite load failed.");
                break;
            default:
                //case AsyncOperationStatus.None:
                break;
        }
    }
}

6.重點:是用Addressables加載遠程場景,所以這個場景不要在build的時候一起打包進去,下圖只有一個初始場景沒有Game1場景。

加載遠程addressable資源,Unity,unity,學習,筆記

7.用Addressables打包,然后把ServerData下的文件都拷貝到Web服務器上,不知道說什么看前2個筆記。然后直接Unity Build And Run,效果圖:

進入初始化場景:

加載遠程addressable資源,Unity,unity,學習,筆記

點擊小綠按鈕,進入場景2(例子里的場景名:Game1),2個對象一個是Game1場景里拖到Hierarchy里的預制體,一個是用C#代碼通過Addressables創(chuàng)建的對象,都出來了!

加載遠程addressable資源,Unity,unity,學習,筆記文章來源地址http://www.zghlxwxcb.cn/news/detail-823021.html

到了這里,關于Unity Addressables學習筆記(3)---加載遠程場景Scenes的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Unity 筆記——Addressables的使用

    Unity 筆記——Addressables的使用

    Addressables是Unity官方出的代替舊版的一個新工具: 首先是功能,對比舊版的AB包工具,不再只有打包這一基本功能了。除打包之外,還有內存分析,本地加載AB資源,資源服務器加載資源,并且提供了下載工具可以直接下載到本地,資源加密,生成更新包等等功能。。。 首先

    2023年04月13日
    瀏覽(31)
  • GameFrameWork框架(Unity3D)使用筆記(八) 實現(xiàn)場景加載進度條

    GameFrameWork框架(Unity3D)使用筆記(八) 實現(xiàn)場景加載進度條

    ? ? ? ? 游戲在轉換場景的時候,需要花費時間來加載相關的資源。而這個過程往往因為游戲場景的規(guī)模和復雜度以及玩家電腦配置的原因花費一小段時間(雖然這個項目里用不到)。 ? ? ? ? 所以,如果這一小段時間,畫面就卡在這里,啥也做不了,玩家也不知道啥時候能

    2024年02月02日
    瀏覽(25)
  • Unity | HDRP高清渲染管線學習筆記:示例場景解析

    Unity | HDRP高清渲染管線學習筆記:示例場景解析

    目錄 一、HDRP入門 1.HDRP設置 ?1.1 HDRP配置文件中的全部設置項 ????????1.1.1?Rendering下的Lit Shader Mode ????????1.1.2 Lighting 下的Volumetrics(體積光)和Screen Space Reflection(屏幕空間反射) 2.離線渲染VS實時渲染 3.Volume組件 3.1Sky and Fog Volume 天空霧效 4.光照貼圖烘焙 5.HDRP材質和

    2024年02月08日
    瀏覽(22)
  • Unity 場景加載和資源加載

    Unity 場景加載和資源加載

    一個游戲往往都是由很多場景組成的,例如會有主界面場景、戰(zhàn)斗場景…等,不同的場景也是由若干的資源組合而成,在游戲的制作過程中,場景和資源的加載是不可或缺的。不管是場景還是資源都會涉及到加載的問題,在什么時候進行場景或資源的加載?場景的加載和資源

    2024年02月04日
    瀏覽(23)
  • Addressables(1) 從安裝到加載單個/多個資源

    Addressables(1) 從安裝到加載單個/多個資源

    不想再配改那些狗屎路徑,準備研究一下Adressable,據(jù)說可以用key加載指定的資源 剛安裝下來,隨便搞了個資源勾選了一下addressable的框框,多了好多東西啊 概念鋪天蓋地而來,ok 沒事的 慢慢來! Package Manager安裝 Resources加載 AssetBundle加載 Unity 2021.3.34 插件版本 1.21.17 如果跟我

    2024年01月21日
    瀏覽(50)
  • Unity --- 場景/場景管理類 與 異步場景加載法

    Unity --- 場景/場景管理類 與 異步場景加載法

    1.一個游戲是由很多的場景組成的,比如游戲的開始頁面,戰(zhàn)斗場景,商店頁面...等等,這些都是一個個游戲場景 或者比如說:一進入游戲,你一開始來到的是新手村這個場景,出了新手村后來到的就是荒野場景,過來荒野場景后來到的就是大城市場景..... ?一個游戲是由很

    2024年02月04日
    瀏覽(30)
  • Unity 多場景/大場景加載解決方法

    Unity 多場景/大場景加載解決方法

    記錄一下最近學習的新的知識,關于解決多場景加載的問題,方便下次及時的鞏固復習。 此次使用的是 Unity的異步加載 來實現(xiàn)功能。 將一個大場景的地圖分成好幾個場景,利用玩家的距離來判斷加載哪個場景和卸載哪個場景。 利用玩家的自身距離和預加載場景的距離判斷

    2024年02月04日
    瀏覽(19)
  • Unity實現(xiàn)異步加載場景

    Unity實現(xiàn)異步加載場景

    一:創(chuàng)建UGUI 首先我們在LoginCanvas登入面板下面創(chuàng)建一個Panel,取名為LoadScreen,再在loadScreen下面創(chuàng)建一個Image組件,放置背景圖片,然后我們再在lpadScreen下面繼續(xù)創(chuàng)建一個Slider,這個是用來加載進度條的,我們改名為LoadSlider。我們?yōu)槭裁葱枰拿郑瑸榱艘娒?,不至于過段時

    2024年02月12日
    瀏覽(24)
  • Unity基礎 異步加載場景

    異步加載場景的基本概念 在Unity中,異步加載場景是指在游戲運行時,將場景中的資源分批次加載到內存中,以便提高游戲的加載速度和性能。通常情況下,加載場景的過程會在主線程中執(zhí)行,而異步加載場景可以在后臺線程中執(zhí)行,從而不會阻塞主線程。 要使用異步加載首

    2024年02月12日
    瀏覽(22)
  • Unity場景進度條加載

    Unity場景進度條加載

    首先,創(chuàng)建Canvas,在Canvas中創(chuàng)建一個Button和一個Panel Button:點擊之后進入場景加載 Panel:場景加載面板 ?其次,在panel當中,我們在創(chuàng)建slider和Text Text:用來描述進度條的百分比,所以text可有可無,看自己意愿 ? slider :就是我們的進度條了 Panel建好后,將SetActive設置為false,

    2023年04月09日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包