用虛幻引擎復刻節奏天國!


3樓貓 發佈時間:2024-07-09 00:32:34 作者:Natsu233 Language

雖說是復刻,但確實還是在細節處理上還很拙劣,遠沒有原版那麼精緻。目前只有Windows平臺的版本,最低系統Windowns10。
遊戲的下載鏈接注意遊戲需要操作的按鈕只有空格鍵,雖然UI提示的是A鍵,但這個A是Xbox手柄的A鍵,如果用鍵盤的話,按空格鍵就可以了。而且默認是全屏的,按alt+Enter可以變為窗口模式。
其實本打算7月前做好這個節奏天國裝配零件這一關的,但是在月底突然安排了一場香港澳門的旅行,所以拖了一個多星期~
1 / 5
除了漲了下見識外,我才知道原來大陸的語句要繁化,不是簡單把文字繁體化就OK了,很多詞也是要替換的,比如大陸的“謝謝”,繁體化的話,應該寫成“多謝”,粵語裡好像是沒有“謝謝”這個詞的。所以我的遊戲做本地化繁化時要更上心了。
我本是個平平無奇的Java程序員,但卻愛好3D建模和一些視頻製作相關的東西,為了想做一些實景合成的MMD視頻還買了Nuke授權,然後一直沒用大概快過期了(悲)。
不過免費的Blender倒是一直沒放下,一開始是跟著阿三老師的入門教程學的,還是做出了不錯的結果。
跟著阿三老師的小飛機教程做的飛機動畫

跟著阿三老師的小飛機教程做的飛機動畫

之後又跟著小藍車的教程再鞏固了一便Blender的操作,抱歉,我都是看的B站搬運視頻,不是老師的原視頻。沒有用甜甜圈做入門教程是因為我不想做甜甜圈,雖然很好吃。
Blender就是快捷鍵需要適應,我每次從虛幻引擎切換回Blender都要適應幾秒,一開始總要按錯幾下。適應了他的快捷鍵後還是挺好用的,他的渲染器也很容易出來不錯的結果。
Blender的渲染效果沒得說

Blender的渲染效果沒得說

但雖然偶爾學學用用,但也只是個愛好,沒啥結果,直到有一天我知道了MMD,原來自己能通過Blender來做MMD,又能修改美少女的模型,又能做跳舞的動畫,這多棒啊,於是開始用Blender來做MMD,覺得Blender的離線渲染還是有點慢了,雖然有EEVEE這個實時渲染器,但此時我也發現了虛幻引擎這個強大工具。想要更多瞭解使用下虛幻,於是決定用Blender做動作,然後導入到虛幻引擎中做渲染輸出這麼個工作流程。
採用這個流程做出的第一個MMD視頻我還挺滿意的:
如果對這個MMD的製作感興趣,可以看看之前站內的文章,不過現在看製作過程寫的有些太簡略了:
站內鏈接:用虛幻來做MMD!
但這之後,我就誤入歧途,因為想增加播放量就嘗試把視頻往擦邊方向靠,這時期的視頻是這樣的(B站上還有):
1 / 3
我自己覺得還好吧,因為看其他MMD還有更厲害的,但是我的視頻叔叔不喜歡,我這個階段的視頻基本全被限流,於是我就放棄做視頻了,也就偶爾看看Blender和虛幻的教程打發時間而已了。
從來沒想過要自己做一個遊戲,我也不知道為什麼,明明玩過不少遊戲,Unity,Unreal,Godot 都學了,Unity和Unreal是想做視頻學的,Godot就只是出於興趣。
一切的轉機是今年初,也算是一個電商大廠,總部是上海那邊的,那SB領導把我裁了,裁員倒也正常,但是他把一些組裡最近的過失都強行算在我頭上,不想在這裡釋放過多負面的內容,結果就是我離開了,工作不好找了是一方面,另一方面是想要開始靠自己了,不再給其他人打工了,要給自己打工,所以就突然想到我不是最喜歡Blender和Unreal了嗎,於是就有了要自己做遊戲的念頭。
在想自己做遊戲以後,就立刻想要做個節奏遊戲,因為覺得節奏遊戲比較好理解,而且我覺得想要隨著節奏一起律動是人的天性。但是我樂感較差,不太能吃準節奏,所以想做個判定簡單的節奏遊戲。
有了這個想法後,腦中立刻有了三個簡單的節奏遊戲的初步想法:
第一個是,一個類似節奏建造的遊戲,村民被惡魔侵蝕無法動彈,這是勇者出現,勇者按節奏打出音樂的節拍,村民聽到節拍後會不由自主的跳起來開始建造神聖雕像,雕像完成後會開始神魔大戰,就這樣一個個村落的往復,最後收復所有的村莊城鎮。
這是虛幻提供的一個例子工程,我要做節奏建造遊戲的話,也是這樣俯視角這樣的藝術風格

這是虛幻提供的一個例子工程,我要做節奏建造遊戲的話,也是這樣俯視角這樣的藝術風格

第二個,節奏空戰,和第一個玩法類似,但是換皮到霓虹風格,被節奏控制的是戰機,第一階段控制戰機在地表通過節拍發射激光建造建築,然後二階段飛向太空通過節拍來躲避和攻擊敵人。
簡單的Demo,左下角是玩家戰機,方塊代表其他建築,圓環是要建造建築的地基

簡單的Demo,左下角是玩家戰機,方塊代表其他建築,圓環是要建造建築的地基

第三個,是最難做的,是個武俠遊戲,打鬥為主,但是玩家不直接控制角色,而是像音遊一樣在合適的節拍下按下按鍵,按對了主角就會有動作快速出招,要是按錯了就會被砍。
第一個節奏建造遊戲,考慮了下按我的想法來,惡魔和神都是人型的,要有至少十幾個吧,還要做人物的動作,雖然也可以買資產,但對我來說,工作量還是太大了,第一個遊戲想簡單一點。第二個霓虹風格的節奏遊戲,我做了個簡單Demo,能按照節拍射出激光,然後激光構成建築,之後飛向太空,節拍如果不對,激光射不出來。我自己試玩Demo後總覺得,這是一件非常沒有樂趣的事情。所以也放棄了,至於第三個,聽起來就不是我現在能做的遊戲,動作製作的要求很高,我能力不行。
所以就卡住了,不知道做啥,過了不知道多久才想起來現在市面上還有挺多類節奏天國遊戲,比如節奏醫生,褪黑素,我就想,我是不是也能做一個?
節奏醫生

節奏醫生

但之前只用虛幻渲染視頻,遊戲開發是不懂的,於是就想著抄一遍節奏天國裡裝配零件這一關,因為這一關節拍我能看得懂,場景也好做,看看會用到什麼功能,缺什麼學什麼,驗證下自己能不能做出來,就這樣,立項了。
節奏天國裝配零件

節奏天國裝配零件

我學習主要通過B站,雖然之前沒做過遊戲,我也知道虛幻可以通過純藍圖做出遊戲,但畢竟程序員也做了好多年,不寫點代碼還是渾身難受,所以學了下虛幻C++,在B站上找了好多視頻來學,然後虛幻中國社區經理大釗的知乎也非常有幫助:
知乎鏈接:InsideUE5
就這樣,用連連看,連出一個遊戲出來也是可能的

就這樣,用連連看,連出一個遊戲出來也是可能的

就這樣一點點學,最終我的代碼結構也是很通常的,一些比較複雜且底層的邏輯用C++實現,然後暴露給藍圖使用,藍圖是解釋執行,執行效率不如C++,一些偏邏輯和業務性的操作用藍圖腳本來寫,這樣又兼具了代碼潔癖不用把複雜的底層實現寫在藍圖層,又具備了藍圖寫邏輯拖拖拽拽帶來的便利性。
基礎的功能用C++來封裝

基礎的功能用C++來封裝

說到藍圖腳本,Epic CEO 蒂姆·斯維尼 說,虛幻6將會正式包含Verse這個全新的編程腳本,這個新的編程語言不是用來取代C++和藍圖,而是用來讓開發變得更便捷。
在底層的功能比如節拍控制和播放功能做好後,就開始製作場景了,我自己是覺得3D的場景比2D的好做,因為2D的話,少了一個軸,限制了一些發揮空間,需要更紮實的基本功,最重要的,我不會畫畫。所以我打算用3D的方式來實現關卡,3D的話,那我一定就用Blender來製作了,場景裡的內容基本都是用Blender做好導入到虛幻的。
用Blender做遊戲資產

用Blender做遊戲資產

對於節奏遊戲的判定實現,我稍微查了些其他人做的分享:
音遊判定原理詳解——從觸摸屏幕到判定音符【Project SEKAI攻略】
“音樂作為關卡設計” UE & Wwise 實踐案例
節奏動作遊戲《完美音浪》創作靈感
【生肉】用Godot製作簡易的音樂遊戲吧!
實現方式多種多樣,有些人使用定時器來產生節拍然後在點擊時判定,有些通過第三方庫來實現,我自己想了個判定方式(或許其他人的分享有提到只是我沒讀出來),首先準備個樂譜,樂譜上編排好音符,在需要點擊的音符上做標記,遊戲開始時播放樂譜,當用戶的點擊到來時,判斷用戶點擊的時間有沒有落入需要點擊的那個音符的時間區間內,如果在,這次就是成功的點擊可以計分,否則這次是失敗的點擊,判定為MISS,圖示的話:
非常簡單的圖示,紅圈是需要點擊的音符,向下指的箭頭是用戶點擊

非常簡單的圖示,紅圈是需要點擊的音符,向下指的箭頭是用戶點擊

樂譜的編排需要經常改動,所以就用藍圖來做了,我的樂譜總體看起來是這樣:
每一個小塊是一個音符

每一個小塊是一個音符

在最開始處設置播放速度也就是BPM和拍號,我這裡用的就是44拍:
這樣當用戶的點擊到來的時候我就可以判斷用戶期望點擊的是那個節拍,然後判斷點擊是早了晚了還是MISS錯過了:
我真覺得藍圖被連成這樣一團亂麻也是其一大魅力

我真覺得藍圖被連成這樣一團亂麻也是其一大魅力

場景裡的物件的動作,也是用同一個樂譜來驅動的,當播放到特定的時候,觸發音效和場景動畫來讓音頻和視覺同步。
雖然但是,實際遊戲運行起來還是有些動畫延遲問題,還得繼續花時間調。
然後就是遊戲音樂的問題了,我不會作曲,我正在學作曲但是還沒能力做出能聽又符合遊戲調性的音樂,現在只能用虛幻提供的MetaSound來做一點點效果音效
MetaSound的編輯界面,能從0做出一些效果音

MetaSound的編輯界面,能從0做出一些效果音

但讓我用這個做曲子是實在不行,我也在打折時買了點音樂包,不過現在這個遊戲用的的音樂來源有兩個,第一個是AI作曲網站 Suno,第二個是免費音效網站 Zapsplat.com 上面的資源
AI作曲:SUNO
免費音頻資源站:Zapsplat
我的梯子又散架了,不然還能截幾張圖的。GDC也放出了一些免費的遊戲音頻資源,有空也可以去研究下,不過我還是想自己做,自己做音樂還是很酷的吧,等一個Cubase打折。
遊戲現在看起來就是這個樣子了:
這個遊戲有個啟動封面,就是下圖:
啟動封面

啟動封面

封面播放完成後才會進入關卡,但其實封面和正式的關卡之間沒有加載,是在一起的,只是切了下鏡頭:
遊戲還有很多沒處理好的地方,還有些會穿幫的地方,和原版比動畫也不夠多也不夠細緻,還有些延遲的問題,而且打發行包出來後,圖形效果差了很多,望多多包涵。
這個作為我自己能力驗證的遊戲終於告一段落了,我現在要開始做我自己的類節奏天國的節奏遊戲了,我已經想了很多個關卡了:
比如,玩家扮演一個回轉壽司軌道上的一個壽司,壽司在軌道上超高速移動,但是軌道有多條,壽司可以來回移動,玩家就根據節奏移動壽司躲避食客的夾擊,最後壽司的速度會越來越快突破音障震飛所有人。
再有一個卡通粘土風格的世界裡,俯視角,玩家扮演交通燈,指揮交通,隨著節奏控制燈的開關來讓車輛行人過馬路,一旦犯錯行人就會呼嘯而過頂飛車輛。
還有好多好多關卡的創意,希望至少能做進來十幾個關卡吧,希望能在今年做完並上架。
雖然一開始想了3個節奏遊戲的企劃,但是這個做完以後暫時不想再做新的節奏遊戲了。現在有個模擬經營遊戲的初步想法,靈感來源是這個漫畫:
我看的是漫畫

我看的是漫畫

遊戲的背景是一個大叔被卡車穿越到了異世界開始了以鐵匠手藝為生的悠閒異世界生活,玩法模式和潛水員戴夫一樣,有收集材料和經營店鋪兩部分。可能是俯視角的遊戲,玩家需要收集礦石,打鐵,做武器研發武器,然後要經營店鋪裝飾店鋪,擺攤,講價。因為太喜歡上面漫畫裡的貓娘,所以有戀愛系統,可以和大家中的一個談戀愛,有各自的故事,想營造出一個歡快的世界,但是這個世界也存在陰謀,玩家也可能會失去重要的人。
在現在的節奏遊戲做完後就會立刻開始這個模擬經營遊戲的製作。

© 2022 3樓貓 下載APP 站點地圖 廣告合作:asmrly666@gmail.com