unity入門—五分鐘製作一個理論上的遊戲
unity入門
前言:這可不是標題黨,雖然都是基礎的操作,不過含括了基本的流程,比起腦海中的五花八門的畫面,入門還是這個現實一點。
這裡插兩句,unity國外官網下載會推薦你看一個簡短的視訊,國內官網下載沒有不過可以另外找到,推薦看一下,相當的好,當初的我剛看完就激動的不行,準備做個驚世之作時,被自己的基礎不足問題潑冷水。
任務:使用unity完成一個Hello World程式,建立一個標準的Windows可執行程式。
1.外部工具設定
下載VS(我用的vs2017,用自帶的也行,為了方便之後學習建議VS,挺好用的),下載VS(Visual Studio)中的unity元件,安裝完成後,在unity編輯器的選單欄中選擇【Edit】-【首選項】開啟設定視窗-【外部工具】
將外部指令碼編輯器設定為VS(軟體安裝下載就不截圖了,如果有什麼問題的可以留言或者聯絡我,定盡力幫忙)
2.編寫指令碼
啟動unity,建立一個新工程,在Project視窗選擇Assets,右擊並選擇【建立】-【C#指令碼】建立一個新的C#指令碼,將指令碼命名為HelloWorld.cs
雙擊開啟HelloWorld,新增程式碼
using System.Collections; using System.Collections.Generic; using UnityEngine; public class HelloWorld : MonoBehaviour { // Start is called before the first frame update //在這裡初始化 void Start() { } // Update is called once per frame //在這裡更新邏輯(每幀) void Update() { } private void OnGUI() { //改變字元大小 GUI.skin.label.fontSize = 100; //輸出文字、如果文字是中文,指令碼文字編碼必須儲存為UTF-8 GUI.Label(new Rect(10, 10, Screen.width, Screen.height),"Hello World"); } }
這裡一定要注意指令碼的類名與檔名一致,就是public class後面那一串,我第一次建立名稱為Hello World,就是兩單詞間有個空格,但是進入之後預設程式碼是沒有空格的就導致了錯誤,一定要注意類名與指令碼名。
HelloWorld.cs是一個unity的指令碼檔案,HelloWorld是類的名稱,它繼承自Unity的基類MonoBehaviour。注意,Unity沒有Main函式程式入口,Unity指令碼必須作為元件依附於Game Object(遊戲體)執行,因此不能使用new建立Unity指令碼例項,建構函式的功能也受到限制。
3.Main Camera
回到編輯器,在層級視窗中選擇【Main Camera】,選中攝像機,在選單欄中選擇【Component】-【Scripts】-【HelloWorld】,將指令碼指定給攝像機,也可以直接拖動指令碼到main camera上
4.運行遊戲
程式是搞定了,不過東西還沒個譜呢,接著往下。
5.編譯輸出
【檔案】-【save】-【檔案】-【另存為】,儲存前記得先退出播放模式,就是把那個播放鍵再點一下就行,將當前關卡儲存在Assets目錄,這是一個字尾名為.unity的場景檔案。下面也是顯示兩個檔案,一個指令碼檔案,一個關卡檔案。
在確保關卡開啟狀態下,【檔案】-【Build Settings】,開啟視窗,點選【新增已開啟場景】,也可將關卡檔案直接拖入,在【玩家設定】中把產品名稱改為Hello World。
然後就是大家熟悉的build and run ,建議單獨開個資料夾存放,至此,一個理論上的遊戲就完成了,開啟畫面就不截圖留給各位剛入門的同學自己去欣賞了。雖然簡陋不過基本流程齊全,最開始的我開啟自己寫的Hello World程式,就被開頭那個固定的Made With Unity畫面驚豔到了,雖然內容貧乏還沒有退出功能,不過第一個程式的誕生也點燃了遊戲製作的心,希望之後有一天也能製作出許多人認可的好遊戲。
下一篇文章就會講解unity編輯器中的一些基礎知識,類似於指令碼基礎,內建函式含義,程式除錯等。
2020-12-09