急速遊戲開發(第一卷)【飛機大戰】
來自專欄遊戲開發急速挑戰6 人贊了文章
我的專欄目錄:
小IVan:急速遊戲開發綜述及目錄
挑戰所用時間:40分鐘
效果預覽:
使用工具:
(1)UnrealEngine4
(2)3DMax2017
開發步驟:
(1)資源準備:
瞎做兩個模型,一個是玩家自己一個是敵人,瞎做得連UV都不分了
然後給模型準備材質
新建一個GameMode類
並在項目設置中指認
在GameMode中指認我們的player類
然後在worldsetting里指認GameMode類
新建一個Pawn類取名為BP_SRBasicCharacter
新建三個組件,分別是膠囊體,staticmeshcomponent,還有個FloatingPawnMovement移動組件
然後新建兩個變數,一個bDie用來判斷角色是否死亡,一個LiveValue,角色的血量
新建兩個CustomEvent,分別取名叫MoveForward和MoveRight,然後調用移動命令
然後新建一個customEvent,命名為Die
同理製作一個受傷函數
在做這步之前需要在資源瀏覽器中新建一個派生自這個類的BP_Player類,這樣才能Cast哈
然後對BP_SRBasicCharacter的膠囊體組件做如下設置:
對模型Plane組件做如下設置:
然後來到我們剛才說的,派生自BP_SRBasicCharacter的角色類BP_Plater中
我們新家一個SceneComponent然後把它移動到合適位置,作為我們發射子彈的點
然後來到項目設置裡面,綁定按鍵
然和再回到BP_PLayer腳本中,用按鍵綁定父類我們實現的移動函數
我們新建一個相機指針變數
注意把它設置為public
然後在場景里拖一個攝像機然和指認關係
在BP_Player的BeginPlay做如下設置
然後在後面繼續做一些邏輯,設置碰撞更新組件
做完這些之後,我們新建一個敵人類,第人類派生自BP_SRBasicCharacter
下面是第敵類的移動邏輯:
然後是第人類的摧毀邏輯
然和是第人類的攻擊邏輯
我們新建一個Actor類,命名為BP_BasicBulet
然後做如下設置
這就是我們的子彈了
然後是我們的UI
新建一個UMG命名為BP_GameUI
雙擊點開新建一個百分比控制項
在這裡創建一個綁定函數
然和新建兩個float變數,並且初始值都是100
然和到BP_Player實例化它,在BeginPlay後面接上如下邏輯,新建了一個CustomEvent負責UI更新
至此我們的UI完成了。
然和是關卡搭建
紅筆圈的是KillingVolume
藍筆是BlockVolume
黑筆是PostProccess
呼呼呼,我們的遊戲終於完成了,我總共花了40分鐘左右,有興趣的朋友可以挑戰一下,有沒有更快的。下面是工程鏈接:
文件分享Enjoy it !!!
推薦閱讀:
※【支線一:遊戲團隊No.1】That Game Company
※利用Unity自帶物理引擎實現小球碰撞無損反彈
※遊戲中基於運動學的運動演算法
※從零開始學虛幻4遊戲開發系列21
※【Unity 教程】用SVN做Unity項目的版本控制(實現多人協作開發) (1) 什麼是版本控制?