<ul id="qxxfc"><fieldset id="qxxfc"><tr id="qxxfc"></tr></fieldset></ul>


      如果已經(jīng)看過(guò)本章節(jié):目錄傳送門:這是目錄鴨~ <https://www.cnblogs.com/Miku-CEB-Bug/p/11509708.html>

      1.場(chǎng)景搭建:

      首先我們?nèi)ssetStore逛淘寶~~~



      我淘到的是這個(gè)資源,其他好看的場(chǎng)景(消耗不高的都行)。

      然后我們導(dǎo)入了這個(gè)資源后,把資源根文件夾的名字改為Select,把Demo場(chǎng)景文件的名字改為Selection,我這樣修改的emmm...



      然后打開(kāi)那個(gè)Demo場(chǎng)景,走到LightningSetting關(guān)閉霧效果(這個(gè)消耗有點(diǎn)大,關(guān)一下,你開(kāi)心也可以不關(guān)的~):



      然后我們就在場(chǎng)景里移動(dòng)Main Camera到你喜歡的好看的位置~

      順便創(chuàng)建個(gè)Reflection Probe(反射效果的):



      前面是沒(méi)加的,后面是加了的,區(qū)別有點(diǎn)小,仔細(xì)看右邊的更漂亮誒~~~




      然后我們?cè)趫?chǎng)景中創(chuàng)建空對(duì)象,重新命名為你喜歡的名字,用于展示英雄的角色坐標(biāo)的定位,我在里面放了個(gè)阿離并把相對(duì)坐標(biāo)設(shè)置為零來(lái)測(cè)試站的位置是否準(zhǔn)確(我這里面還有個(gè)光照是因?yàn)槟槻勘容^暗,你可以自己調(diào)整光照的,對(duì)~說(shuō)的就是你o(*^▽^*)o):



      到此為止~我們的場(chǎng)景就搭建完畢了親親~

      2.英雄資源的打包相關(guān)(重要?。。。?


      命名規(guī)則:我們可以看到,農(nóng)藥的AssetBundle命名結(jié)構(gòu)是:英雄ID+皮膚編號(hào)(沒(méi)有空格,比如說(shuō)阿離的ID是199,這個(gè)花間舞是第二個(gè)皮膚,所以ID為1992,第一個(gè)默認(rèn)皮膚不需要輸入皮膚ID就199就好了)_英雄拼音_資源類型.assetbbundle。(下面可以看到廉頗ID是105,這個(gè)設(shè)定使得我們提資源十分方便~良心TX~):



      然后我們也打算用這種規(guī)則來(lái)命名~

      下面部分含有代碼~

      創(chuàng)建幾個(gè)新文件夾在根工程目錄下,路徑是 ActorManager/Scripts,然后再在里面創(chuàng)建一個(gè)Csharp(即C#),名為ActorManager:
      /* * 編輯者:Miku醬 * 版本:1 * 首次編寫日期:2019/09/15 13:53 * 修改日期:2019/09/15 13:53 *
      強(qiáng)行加一行~~~*/ using System.Collections; using System.Collections.Generic; using
      UnityEngine;using LuoHao.AssetBundleManager; namespace LuoHao.Actor { public
      class ActorManager : MonoBehaviour { /// <summary> /// 角色信息文件的列表 /// </summary>
      [TextArea]public List<string> actorFileList = new List<string>(); /// <summary>
      /// 全部的角色信息 /// </summary> public static Dictionary<int, ActorInfoData>
      allActor =new Dictionary<int, ActorInfoData>(); private void Awake() {
      LoadAllActor();//加載 DontDestroyOnLoad(this.gameObject);//切換場(chǎng)景不銷毀這個(gè)物體 //
      Debug.Log(allActor[100].actorName);//測(cè)試 } /// <summary> /// 加載角色信息 ///
      </summary> public bool LoadAllActor() { for(int i = 0; i < actorFileList.Count;
      i++) { //取得文件 PackageForAssetBundle pfa=
      AssetBundleManager.AssetBundleManager.GetAssetBundle(actorFileList[i]);//加載資源
      GameObject[] gms = pfa.GetAssetBundle().LoadAllAssets<GameObject>();
      ActorInfo[] ai= gms[0].GetComponents<ActorInfo>(); if (ai.Length == 0)//
      數(shù)組長(zhǎng)度為0則返回錯(cuò)誤 { Debug.LogError("加載角色信息文件失敗!\n錯(cuò)誤文件位置:"+actorFileList[i]); return
      false; } else { for (int i1 = 0; i1 < ai.Length; i1++)
      allActor.Add(ai[i1]._actorInfoData.actorID, ai[i1]._actorInfoData);//信息載入字典....
      } pfa.UnLoadAssetBundle(true);//卸載ab包 } return true; } } /// <summary> ///
      儲(chǔ)存單個(gè)角色信息的類/// </summary> [System.Serializable]//序列化,注意要用System命名空間下面的 public
      class ActorInfoData { /// <summary> /// 角色名字 /// </summary> public string
      actorName ="英雄名字"; /// <summary> /// 角色拼音 /// </summary> public string
      actorPinYin ="PinYin"; /// <summary> /// 角色I(xiàn)D /// </summary> public int actorID
      =100; /// <summary> /// 屏蔽英雄 /// </summary> public bool banActor = false; ///
      <summary> /// 角色背景 /// </summary> [TextArea]//這個(gè)是文本框,顯示在編輯器的 public string
      actorBG ="背景故事"; /// <summary> /// 皮膚列表(第一個(gè)就是原皮,必填) /// </summary> public
      List<ActorSkin> actorSkins =new List<ActorSkin>(); } /// <summary> /// 儲(chǔ)存單個(gè)皮膚的
      /// </summary> [System.Serializable]//序列化 public class ActorSkin { /// <summary>
      /// 皮膚名字 /// </summary> public string skinName = "皮膚名字"; /// <summary> ///
      皮膚展示模型資源路徑/// </summary> [TextArea]//這個(gè)是文本框,顯示在編輯器的 public string
      skinShowModelPath ="皮膚展示模型資源路徑"; /// <summary> /// 皮膚對(duì)戰(zhàn)模型資源路徑 /// </summary>
      [TextArea]//這個(gè)是文本框,顯示在編輯器的 public string skinBattleModelPath = "皮膚對(duì)戰(zhàn)模型資源路徑"; ///
      <summary> /// 皮膚展示特效資源路徑 /// </summary> [TextArea]//這個(gè)是文本框,顯示在編輯器的 public string
      skinShowEffectPath ="皮膚展示特效資源"; /// <summary> /// 皮膚對(duì)戰(zhàn)特效資源路徑 /// </summary>
      [TextArea]//這個(gè)是文本框,顯示在編輯器的 public string skinBattleEffectPath = "皮膚對(duì)戰(zhàn)特效資源"; } }
      腳本ActorInfo(承載信息的載體):
      1 /* 2 * 編輯者:Miku醬 3 * 版本:1 4 * 首次編寫日期:2019/09/15 13:53 5 *
      修改日期:2019/09/15 13:53 6 * 強(qiáng)行加一行~~~ 7 */ 8 9 using System.Collections; 10
      using System.Collections.Generic; 11 using UnityEngine; 12 13 namespace
      LuoHao.Actor {14 public class ActorInfo : MonoBehaviour 15 { 16 [Header("角色信息"
      )]17 public ActorInfoData _actorInfoData; 18 } 19 }
      ?

      ?

      創(chuàng)建角色信息數(shù)據(jù)庫(kù):

      新建一個(gè)物體,并掛上腳本ActorInfo,修改信息(你開(kāi)心就好隨便想改啥就改啥~),然后制作成預(yù)制體并且設(shè)置標(biāo)簽:




      然后在點(diǎn)擊工具欄的打包AssetBundle的按鈕,打包這個(gè)預(yù)制體,最后我們?cè)趫?chǎng)景中隨便找個(gè)物體掛上ActorManager,并增加一個(gè)路徑(就是你預(yù)制體標(biāo)簽的名字加后綴,標(biāo)簽?zāi)J(rèn)是全部小寫,我們?cè)O(shè)置的時(shí)候大小寫不影響文件讀?。?br>


      如果運(yùn)行后Unity編輯器毫無(wú)波瀾甚至有點(diǎn)想笑的話那就說(shuō)明這步OK啦~

      施工了一個(gè)中午emmm~頭發(fā)又少了幾根,下一部分再見(jiàn)咯~

      如果已經(jīng)看過(guò)本章節(jié):目錄傳送門:這是目錄鴨~ <https://www.cnblogs.com/Miku-CEB-Bug/p/11509708.html>

      ?

      友情鏈接
      ioDraw流程圖
      API參考文檔
      OK工具箱
      云服務(wù)器優(yōu)惠
      阿里云優(yōu)惠券
      騰訊云優(yōu)惠券
      京東云優(yōu)惠券
      站點(diǎn)信息
      問(wèn)題反饋
      郵箱:[email protected]
      QQ群:637538335
      關(guān)注微信

        <ul id="qxxfc"><fieldset id="qxxfc"><tr id="qxxfc"></tr></fieldset></ul>
          两男一女日起舒服 | 日韩人妻色欲精品专区蜜桃 | 天天日天天干天天插 | 翔田千里在线视频 | 亚洲 欧美 国产 日韩 动漫第一页 | 无人区一区二区区别是什么红桃 | 久爱视频在线观看 | 国产插到喷水 | 亚洲第一色在线观看 | 91久久国产 |