真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

關于Unity異步加載場景WebGl端需注意的-創(chuàng)新互聯(lián)

win10
unity2018.2.6

創(chuàng)新互聯(lián)建站成立于2013年,是專業(yè)互聯(lián)網(wǎng)技術服務公司,擁有項目做網(wǎng)站、成都做網(wǎng)站網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元冊亨做網(wǎng)站,已為上家服務,為冊亨各地企業(yè)和個人服務,聯(lián)系電話:13518219792

加載場景現(xiàn)在習慣用異步加載

AsyncOperation ao = SceneManager.LoadSceneAsync(string SceneName);

寫在協(xié)程里,而從ao中可以獲得加載進度

float progress = ao.progress;

這樣可以控制加載進度條,或者文字顯示百分比

按照網(wǎng)上很多事例的同樣用法,一般是先把自動加載場景關掉

ao.allowSceneActivation = false;

也就是說,加載完成,也不跳轉(zhuǎn)場景,需要手動控制
當然這里有個小抗就是這個false要在加載進度在90%以下
如果到了90%以后,再設置為true,也不會跳轉(zhuǎn)

我原先的做法就是在協(xié)程里設while循環(huán),里面判斷是否到了90%,到了則跳出循環(huán)并設置為true,然后就自動加載了。

while(ao.progress<0.9f)
{
  //……
}
ao.allowSceneActivation = true;

從表現(xiàn)上來看,沒有任何問題

但是這里有個小坑,尤其是webgl端要注意的是如果一開始設置

ao.allowSceneActivation = false;

則加載新場景會大量的占用內(nèi)存,對于webgl端所運行的瀏覽器來說,如果場景大,那根本是直接奔潰。

所以,正確做法就是一開始就設置為true

ao.allowSceneActivation = true;

反正是異步的,加載動畫什么的也不會卡,關鍵是不會莫名其妙的占用大量內(nèi)存,當然這么說是因為加載場景時采用這兩種不同策略,為什么內(nèi)存的占用會差距如此之大,這個機制不太了解。
其實不論發(fā)布什么平臺,都是這樣,但是pc端內(nèi)存大了也抗的住,而webgl端就太脆弱了,一定要注意。

剛剛想到另一點,就是如果把場景打成ab包進行加載,也是會巨量占用內(nèi)存,之前做的webgl項目,場景比較大,這樣加載瀏覽器根本無法承受(除非是非常小的場景)

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。


網(wǎng)站名稱:關于Unity異步加載場景WebGl端需注意的-創(chuàng)新互聯(lián)
本文鏈接:http://weahome.cn/article/cdcdoj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部