急速遊戲開發(第一卷)【飛機大戰】

急速遊戲開發(第一卷)【飛機大戰】

來自專欄遊戲開發急速挑戰6 人贊了文章

我的專欄目錄:

小IVan:急速遊戲開發綜述及目錄?

zhuanlan.zhihu.com圖標

挑戰所用時間: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分鐘左右,有興趣的朋友可以挑戰一下,有沒有更快的。下面是工程鏈接:

文件分享?

share.weiyun.com

Enjoy it !!!

推薦閱讀:

【支線一:遊戲團隊No.1】That Game Company
利用Unity自帶物理引擎實現小球碰撞無損反彈
遊戲中基於運動學的運動演算法
從零開始學虛幻4遊戲開發系列21
【Unity 教程】用SVN做Unity項目的版本控制(實現多人協作開發) (1) 什麼是版本控制?

TAG:遊戲開發 | 遊戲編程 | 虛幻引擎 |