如何簡單製作遊戲的基本UI按鈕,暫停播放 發佈日期: 2023-01-302023-01-19 作者: yijun 文、查理 打電動打到一半臨時有人打電話過來,或者是尿急,這時候就需要遊戲暫停按鈕,那要如何製作一個遊戲暫停的按鈕呢?首先,是要製作一個按鈕物件,第二個部分就是要讓這個按鈕,產生遊戲暫停的效果。 那要如何製作一個遊戲暫停的按鈕在畫面的角落? 在選單列,按下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函式,這樣按下播放按鈕,遊戲就會恢復正常速度。 加入菜鳥救星官方Line並回覆「我想看文章」,不定期獲得更多知識吧! 不同頻道,不同知識! Facebook Instagram Youtube 分享此文:分享到 Twitter(在新視窗中開啟)按一下以分享至 Facebook(在新視窗中開啟)按一下以分享到 Telegram(在新視窗中開啟)按一下即可以電子郵件傳送連結給朋友(在新視窗中開啟)請按讚:喜歡 正在載入... 相關