nav分隔線 nav分隔線

如何簡單製作遊戲的基本UI按鈕,暫停播放

icon_fb icon_twitter icon_google
如何簡單製作遊戲的基本UI按鈕,暫停播放

文、查理

 

 

打電動打到一半臨時有人打電話過來,或者是尿急,這時候就需要遊戲暫停按鈕,那要如何製作一個遊戲暫停的按鈕呢?

首先,是要製作一個按鈕物件,第二個部分就是要讓這個按鈕,產生遊戲暫停的效果。

 

 

那要如何製作一個遊戲暫停的按鈕在畫面的角落?

 

 

 

在選單列,按下Component(物件功能)能找到UI(圖文項目),再點選Button(按鈕),那在Hierarchy(物件清單)欄位裡面,就會增加一個Button,同時你會看到一個Canvas(圖文管理員,管理所有的按鈕圖片文字設定),跟一個Event System(互動物件系統,圖片按鈕文字的所有互動設定)

 

 

 

 

 

要如何更換按鈕的圖片?

 

將準備好的圖片,拖曳到Project(素材庫)裡,再將按鈕的圖片更換

1. 將暫停按鈕圖片,拖曳到Source Image欄位

2. Width:180(按鈕寬度),Height:180(按鈕高度),Pos X:-90(與右方的間距),Pos Y:-90(與上方的間距)

3. Anchor Preset設定為對齊右上角

4. 把按鈕的子物件Text關閉或刪除(暫時用不到文字)

我們還需要一個遊戲控制器的物件,來存放按下按鈕後,所要執行的內容程式碼,在物件清單裡,增加一個空物件,名稱更改為GameControl

 

 

那第二個部分就是設定遊戲暫停的程式碼的部分

 

在Project李新增一個C# Scipt,命名為Button

打開程式碼後,在程式碼裡面另外撰寫一個自訂的函式

 

Public void ButtonPause(){

Time.timeScale = 0;

}

 

Public:讓這個函式可以顯示在面板上的選單列裡,讓我們可以選擇使用

ButtonPause:是我們自訂的名稱,函式的第一個英文字母請使用大寫字母,目的是跟小寫開頭的變數名稱做個區別。

 

變數名稱通常用小寫開頭:button

函式名稱通常用大寫開頭:ButtonPause

 

之後的英文單字的第一個字母,也請使用大寫字母,方便我們辯識的每一個英文單字,方便瞭解名稱的意義。

 

Time:指的是時間

timeScale:指的是時間的播放速度

0:播放速度為0倍,也就是遊戲暫停

1:正常播放速度

2:兩倍速度播放

0.5:0.5倍慢動作播放

-1:時光倒流

-2:回到未來

 

timeScale的數值,只能從0到100。

程式設定好之後,我們就可以把這個程式碼套用到遊戲控制器GameControl上面。

 

 

 

點選按鈕物件,可以在Inspector屬性欄位裡,看到OnClick欄位,按右下方加號,增加一個新的項目,從把遊戲控制器物件GameControl拖曳到GameObject物件欄位裡,右邊的選單就會出現遊戲控制器所擁有的程式碼,選擇按鈕程式碼,再點選ButtonPause函式。

 

 

既然有暫停按鈕,也要有播放按鈕

 

我們可以把現在的暫停按鈕複製成一個新的播放按鈕,再把播放按鈕的圖片內容換成播放的圖片。

 

我們可以在按鈕的程式碼裡面再新增一個函式

Public void ButtonPlay(){

Time.timeScale = 1;

 

一樣在播放按鈕的Inspector屬性欄位裡,找到OnClick欄位,按右下方加號,增加一個新的項目,從把遊戲控制器物件GameControl拖曳到GameObject物件欄位裡,右邊的選單就會出現遊戲控制器所擁有的程式碼,選擇按鈕程式碼,再點選ButtonPlay函式,這樣按下播放按鈕,遊戲就會恢復正常速度。

 

🔺 成為UI設計師,掌握美觀、簡單、便利的使用者介面設計,開啟成功之路!

 

 

 

 

FB粉絲團:https://www.facebook.com/lccnetzone
YouTube頻道:https://www.youtube.com/user/LccnetTaiwan

痞客邦Blog:http://lccnetvip.pixnet.net/blog

本網站使用相關網站技術以確保使用者獲得最佳體驗,通過使用我們的網站,您確認並同意本網站的隱私權政策。欲了解詳情,請參閱 隱私權政策