小屋創作

日誌2017-12-29 15:49

【Unity】Loading 畫面

作者:短腿肥貓

隨著擺放的物件增加,切換場景時的載入時間也會變長。
若沒有製作 Loading 畫面,遊玩時畫面會卡住一小段時間,算是體驗上不太好的部分。

這次是初次體驗 StartCoroutine 和 IEnumerator ....所以也不曉得理解上有沒有問題。
基本上是程式碼碰到 StartCoroutine 會去執行 IEnumerator 介面內的程式
碰到 yield return 時會先跳離介面同步執行 StartCoroutine 之後的程式
然後再回去繼續執行 IEnumerator 介面,直到迴圈結束沒遇到 yield return 為止

------------------將江將開始囉-------------------

STEP 1 :準備基本素材

大概就是常見的底圖、讀取條、和設定 UI text
這邊還多放了一隻兔子會跟著進度條往前跑

注意讀取條的 Pivot (軸心) 需設定靠左,這樣透過設定 localScale,可做出讀取條由左跑至右的效果。

STEP 2:編寫腳本

(24行) 背景載入,可以在運行 Loading 畫面的同時,順便加載下一個要切換的場景。
(27行) 若設定為true,系統會自動在加載完畢時切換過去,但這樣不會跑到100%還會有閃爍。
(31行) yield return跳過後面的程式碼,重頭再來一次。null表示沒有回傳任何東西。
(34行) 在allowScreenActivation為false的同時,最多加載到90%,所以前半段跑完,要再手動補到100%。
(37行) 可切換至準備好的場景。
(41.42行) 根據載入情形,縮放讀取條以及替換UI text。

STEP 3 :添加動畫
目前的已能做出載入的效果,但是動態上不好看。
所以新增幾個效果:
(1) %數可以一幀+1疊上去
(2) 兔子會隨著讀取條往前移動。

(19-20行) 兔子的初始位置。須放在StartCoroutine前面。
(36.37.44.45行) 數字累加的效果。
(39.47行) WaitForEndOfFrame 直到下一幀再繼續執行腳本。
(57.58行) 讓兔子根據當前%數,移動距離。(初始位置+總距離*%數)

STEP 4 :驗收效果
嘛。兔子很可愛吧 <3
之後實際上陣的美術圖還會再修改,但至少已經把效果寫好了~
希望畢業製作進度順利阿QQ

-------------------------------------------
> 參考資料:
1. 【Unity】Loading Screen 讀取畫面製作:
https://jerrard-liu.blogspot.tw/2015/06/LoadingScreen.html
2. Unity3D中製作異步Loading進度條所遇到的問題:
http://www.cnblogs.com/clnchanpin/p/7207159.html
3. Unity3D製作計數器「StartCoroutine應用」:
https://home.gamer.com.tw/creationDetail.php?sn=2649394

6

5

LINE 分享

相關創作

【yotoo】240505

【雜記】最近的超多委託圖p7

原神 振晶的應用研究 全獎勵攻略

留言

開啟 APP

face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】