前言:
從這一篇章開始,我將會通過游戲實例來講解如何使用unity制作一個標准的游戲,介紹的內容較多,需要整理的東西也多可能中途會有一兩天的咕咕咕,預計想要完成兩個游戲,一個射擊類一個塔防類,從射擊類開始。
素材來源於網絡、資料附贈、自行制作以及unity商店購買使用等等,整個游戲完成后會放上可用的素材包。思考了下,語言改成英文,涉及到的英文盡量翻譯出來放在文章開頭或結尾,這次的翻譯就放到下篇文章了。
射擊類游戲實例
作為第一個用來發布講解的游戲,我立馬就想到了射擊類游戲,當然不是第一人稱射擊的那種,是打小飛機累計得分的那種類型,方便魔改參數以及自行制作一些敵人的模型。
游戲相關設定:
1.在游戲中,我們將操作戰艦擊墜敵人的飛船,游戲開始后戰艦會向前推進,消滅敵人取得分數,戰艦被擊落游戲才會結束。
2.戰艦擁有固定裝甲(血量),敵人有多種並擁有獨特的飛行軌跡與裝甲
3.屏幕上會顯示血量、得分等內容
4.待添加
資源導入
右鍵【Assets】—【Import new Asset】—選擇素材所在文件夾
或者直接將文件拖入窗口
Project(項目)窗口是一個瀏覽器窗口,主要負責資源管理,它與系統硬盤上當前游戲工程的Assets文件夾是對應的。也就是說可以在項目窗口進行文件操作。
場景創建
游戲背景為太空,是一顆巨大的星球與浩瀚的星空(雖然做出來可能有點糊),下面介紹如何創建材質球並為星空完成UV動畫。
1.菜單欄【File】—【New Scene】創建一個新場景
2.【File】—【Save Scene As】,將當前場景存放至Assets文件夾下並命名
3.菜單欄【GameObject】—【3D Object】—【Plane】,創建一個平面體作為地圖背景
4.右鍵【Project】—【Create】—【Material】,創建一個材質球並命名為Background,選擇貼圖為背景圖片mars(Albedo左邊有個按鈕)
5.選中之前創建的背景模型,在Inspector窗口中【Materials】一欄下有Element0,指定Background材質球
6.這時候會發現貼圖周圍有多出的邊框,選擇材質球,將Rendering Mode設為Cutout就能顯示出透明效果
7.創建另一個平面體,放大一些,置於上一個貼圖下方作為星球的背景,為其創建材質球【Unlit】—【Texture】,指定對應星空圖片為背景
星空背景不需要接受光線,直接更換個材質就行,Shader類似於模板,選擇不同Shader有不同的質感表現
8.選中星空模型,右鍵【Project】—【create0】—【Animator Controller】,創建一個動畫控制器,拖動動畫控制器至Inspector窗口空白處,將動畫控制器組件指定給星空背景模型
這操作會給星空模型添加一個Animator動畫組件,並自動與當前的動畫控制器關聯
9.【Window】—【Animation】—【Animation】打開動畫窗口,Create一個動畫文件保存在Assets文件夾下
10.【Add Property】—【Material_Main_Tex_ST】,前進30幀,將w值改為-1,星空背景就能進行循環移動了
當前完成效果:
總結:
相關的攝像機和燈光強度之類將會放到之后演示,后續會把詳細的動畫講解放到一起,上邊演示了創建一個貼圖星球和會移動的星空背景,使用了現成的素材,之后會替換掉(這個看上去小違和),很多方面只說了如何操作並沒有詳細講解,之后的實例內容應該會更簡略,具體版塊功能使用方法什么的在后續學習后會另開個分類講解。一個人去完成策划、程序設計、美術制作、項目管理、文章編寫屬實需要時間,現在越發崇拜個人完成制作的游戲,比如我最喜歡的《我的世界》。