freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

從服務(wù)器端獲取資源動態(tài)加載到場景-免費閱讀

2025-08-19 13:42 上一頁面

下一頁面
  

【正文】 dice =() as GameObject。 private GameObject dice。public class NewBehaviourScript : MonoBehaviour { private WWW 。 ) 20. { 21. print(Download pleted)。sh=1amp。 59. } 60. */ 61. } 附上項目下載地址:自己測試的代碼:從服務(wù)器上獲取模型資源動態(tài)加載查看文本copy to clipboard打印?1. using UnityEngine。 35. print(name : + )。 14.15. void Start () 16. { 17. = new WWW()。rt=pramp。 123.124. foreach(Texture2D t in optionalTexture) 125. { 126. b2 = b2 || (t == null)。 99. */ 100. (go, asset, filePath, , )。第二和第三個參數(shù)表示默認(rèn)保存位置和默認(rèn)文件名// 78. savePath = (Save, E:\, , unity3d)。 53. ()。 34. // 就相當(dāng)于提供一個換行,用于格式化控件的 // 35. ()。 3. using UnityEngine。下載完的數(shù)據(jù)都保存在內(nèi)存中,這時候它們都是一個AssetBundle的內(nèi)存鏡像,我們在使用數(shù)據(jù)時,只是從內(nèi)存鏡像里取出數(shù)據(jù),通過Instance方法新實例化出來的一個對象,當(dāng)我們有了這樣一個對象,以后的操作都是針對這樣的一個,而內(nèi)存中保存的那塊鏡像已經(jīng)沒有用處了,我們可以釋放掉:(flase) : 是釋放AssetBundle文件的內(nèi)存鏡像,不包含Load創(chuàng)建的Asset內(nèi)存對象。 27.28. /* 29. // 取回打包在資源內(nèi)部的數(shù)據(jù) 由于我們當(dāng)初放進去的全是Texture2D類型的,所以使用LoadAll的// 30. // 帶類型的重載方法,將Texture2D類型傳入進去,表示我只取出Texture2D類型的數(shù)據(jù)// 31. Object[] opticals = (typeof(Texture2D))。 11.12. private GameObject dice。 3. /// summary 4. /// author : qyxls 5. /// /summary 6. public class Downloader : MonoBehaviour 7. { 8. private string url = ,B,Uamp。細(xì)心的你也一定會發(fā)現(xiàn),多出的那 2 張貼圖,正是剛剛導(dǎo)出的模型上本身的一張漫反射貼圖和一張法線貼圖。amp。amp。 ) 21. { 22. print (Download pleted)。logid=1896966947amp。(本例中我們沒有采用帶參數(shù)的訪問是因為這樣的話,我們還要加一個后臺處理程序,要根據(jù)請求參數(shù)來返回數(shù)據(jù),這樣我們就必須要在本機上安裝服務(wù)器,書寫服務(wù)器代碼等等等等,這樣就得多做很多其它與我們這個話題相去深遠(yuǎn)的工作了。 5. if(!isCompleted amp。logid=1896966947amp。我們來具體看看下載,這里下載要使用到的類是WWW。其實就是怎么將剛剛導(dǎo)出的文件上傳到“百度云”)上傳不說了,這里看看怎么獲取剛剛上傳資源的完整地址。 130. } 131.132. /// summary 133. /// 所有數(shù)據(jù)正確導(dǎo)出后,清除填寫的導(dǎo)出信息,以便導(dǎo)出下一條數(shù)據(jù) 134. /// /summary 135. private void Clear() 136. { 137. exportObject = null。 103. } 104.105. /// summary 106. /// 該方法來產(chǎn)生臨時prefab文件 107. /// /param 108. private Object GetPrefab(GameObject go, string name) 109. { 110. Object result = (Assets/ + name + .prefab)。 80. } 81.82. private void Export(GameObject go, string filePath) 83. { 84. // IsPersistent 判斷傳入的對象是磁盤文件還是場景文件(即是否是Project視圖下的文件,是返回true)// 85. if(!(go)) 86. { 87. GameObject tmp = (go) as GameObject。 56. ()。 38. for(int i=0。 15. } 16.17. private string savePath。//成功導(dǎo)出數(shù)據(jù)后,清除導(dǎo)出信息// 8. } 9. else 10. { 11. //導(dǎo)出信息填寫有誤時,給出提示// 12. (錯誤提示, 導(dǎo)出信息設(shè)置有誤,請返回檢查!, 確定)。 39. } 這里我又新添加了三個方法來具體實現(xiàn)導(dǎo)出并保存的邏輯: 18. /* 19. ():該方法是將提供的對象導(dǎo)出成Unity能識別的二進制文件 20. 第一個參數(shù)是提供一個要導(dǎo)出的對象,第二個參數(shù)是一個Object[]類型,它可以將數(shù)據(jù)附加到第一個 21. ,所以上面的if語句判斷 22. 是否是磁盤文件類型,如果不是,先將其轉(zhuǎn)化為prefab,在Assets下臨時保存一下。到這里這個窗口就基本算是完成了。 27. } 28.29. ()。 4. private Texture2D[] optionalTexture = new Texture2D[0]。 14. } 15.16. void OnGUI() 17. { 18.19. } 20. } 這里要注意的就是將原來的腳本有繼承自MonoBehaviour 修改為繼承自EditorWindow。用例描述:導(dǎo)出場景中的一個模型,并帶著默認(rèn)材質(zhì),如果該模型有多個可替換的貼圖,也把這些貼圖作為該模型的資源一并導(dǎo)出到一個資源包中。Export時,菜單項會調(diào)用靜態(tài)的Execute()方法,即可在Console面板中打印出”Menu is selected”。這里的所有的類都不能在Unity的運行時里使用。所以我們應(yīng)該采取動態(tài)加載的方式,讓玩家在玩游戲的過程中來一點一點從服務(wù)器加載游戲資源。 3. using 。UnityEditor下的類可以很方便的完成這一需求。 2. using UnityEngine。[csharp] view plaincopy 1. private string savePath。 22. for(int i=0。 40. ()。 14. go = GetPrefab(tmp, ) as GameObject。 36. result = (go, result)。這里需要說明的是 (): 該方法是將提供的對象導(dǎo)出成Unity能識別的二進制文件第一個參數(shù)是提供一個要導(dǎo)出的對象,第二個參數(shù)是一個Object[]類型,所以上面的if語句判斷是否是磁盤文件類型,如果不是,先將其轉(zhuǎn)化為prefab,在Assets下臨時保存一下。 15. } 如果用戶全部信息都填寫完整了,該方法會返回true,導(dǎo)出時可以根據(jù)返回值狀態(tài)來做相應(yīng)的響應(yīng)。 2. using UnityEditor。 27. * 如果要限制可接收的對象類型,可以通過第三個參數(shù)來限制類型這里表示直接收GameObject類型 28. * 第四個bool型的參數(shù)標(biāo)志能否接受當(dāng)前scene里的對象,true表示接受 29. * 這個方法返回的是一個Object類型的值,最后要將它轉(zhuǎn)化為需要的類型 30. */ 31. exportObject = (Export Object, exportObject, 32. typeof(GameObject), true) 33. as GameObject。 50. } 51.52. ()。 73. } 74.75. private void ExportAndSave(GameObject go) 76. { 77. //該方法將打開保存對話框,選擇導(dǎo)出文件的保存位置。這個轉(zhuǎn)化就是要 98. 用到 PrefabUtility 類里的方法。 122. bool b2 = false。我真的沒有服務(wù)器,但是我感覺度娘很熱情,估計能幫上我們什么忙。fn=這里我們暫且先這樣用著,在真正的項目開發(fā)中,資源的地址肯定會直接或間接的給出來的,這里不必糾結(jié)。r=709102273amp。 2. void Update () 3. { 4. if( == null) return。 6. } 可以看到,只需將參數(shù)封裝在WWWForm中再去用WWW訪問服務(wù)器就可以了。fn= 。 23. isCompleted = true。 ) 5. { 6. () as GameObject。 ) 5. { 6. () as GameObject。原來,LoadAll()這個方法會將存在于下載過來的這個文件中符合類型的所有資源都取過來的,這也很簡單處理,只要我們把不符合要求的剔除掉就好了。expires=8hamp。 13. private Texture2D tex。 32. foreach(Object o in opticals) 33. { 34. Texture2D tmp = o as Texture2D。(true) : 是釋放那個AssetBundle文件內(nèi)存鏡像和并銷毀所有用Load創(chuàng)建的Asset內(nèi)存對象。 4.5. /// summary 6. /// author : qyxls 7. /// /summary 8. public class ExportTools : EditorWindow
點擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1