奧推網

選單
遊戲

Steam上好評如潮的《Skul: The Hero Slayer》背後的製作故事

Unity的2D Pixel Perfect讓2D創作者更容易製作各種尺寸和比例的清晰銳利的畫素藝術,並在一系列裝置上進行流暢的演示。當SouthPAW Games的團隊著手開發他們的第一款畫素藝術遊戲《Skul: The Hero Slayer》時,他們使用了許多Unity2D工具來幫助他們建立這個神奇的2D遊戲。

SouthPAW Games使用了Unity的2D Tilemaps,2DPixel Perfect和Sprite Atlas來製作這個備受期待的rogue-lite。

將Skul

活靈活現的展現出來

《Skul: The Hero Slayer》(下文簡稱Skul)是一個2D rogue-lite型別的遊戲(遊戲每局都有變化),以一個名叫Skul的小骷髏守衛為主角,他開始了與敵人冒險者和帝國軍對抗並營救他的惡魔之王的旅程。

SouthPAW Games現在是一個由八人組成的團隊,由韓國川南國立大學的前gamedev俱樂部成員於2017年建立。自從他們開始用Unity3。0建立遊戲以來,Unity一直是首選工具。Skul是他們的第一個畫素遊戲專案。

SouthPAW Games還推出過如《Kirby》、《Mega Man》系列的2D畫素遊戲,玩家透過吃掉敵人或使用Boss的特殊武器獲得能力。這些影響體現在Skul之中,在那裡你可以享受不同角色的快節奏戰鬥,每個角色都有一套獨特的屬性和技能。

遊戲導演兼動畫師樸相佑(又名PAW)與四名程式設計師、兩名背景藝術家和一名角色藝術家合作。

Skul的美國團隊正在為2021年上半年的正式釋出而努力。遊戲正在不斷更新中並且在Steam上好評如潮。已經有約70萬人預約了這款遊戲。

2D

Pixel Perfect

,創造視覺效果

SouthPAW Games使用長期支援版本以及用於圖形的通用渲染管道(URP) 8。10——Unity2019。4 LTS——來開發Skul。

2D Pixel Perfect包包含在URP包的2D渲染器中,也可透過包管理器下載安裝獲得,它具有Pixel Perfect Camera元件,可確保使用者的畫素藝術在不同解析度下保持清晰,並可使物件的運動、旋轉和縮放遵循畫素網格模式。它會根據解析度的變化自動進行縮放視口所需的所有計算。

當使用Pixel art時,保持整個遊戲中所有資產的解析度一致是很重要的,正如團隊在開發之初所意識到的那樣。“試生產期間的參考解析度對我們的需求來說太高了,我們最終得到了過於詳細的圖形資源。因此,我們不得不重建所有視覺資源。”PAW說到。

團隊最終確定了適用於整個遊戲的32畫素PPU(每單位畫素),Tilemap網格為32 x 32畫素每格,其中一格等於遊戲內一個單位的距離。

遊戲中Pixel Perfect相機元件和Sprite Renderer的設定

他們的參考解析度是640 x 360畫素,他們將400畫素設定為背景的最大高度。為了確保圖形在所有解析度下都保持清晰,團隊使用遊戲檢視來檢查顯示,並在不同規格的電腦上測試遊戲。

Pixel Perfect相機透過將解析度乘以整數來提高參考解析度,因此即使是復古風格在現代螢幕上也很好看。為了填滿整個螢幕,遊戲會在執行畫面中顯示黑條,或根據使用者的偏好擴充套件檢視埠。

為了使過程儘可能無縫,團隊在參考比例中製作了一個粗略的版本,以獲得形狀和顏色的感覺。接下來,他們分享和討論概念藝術階段的想法。當角色被確認後,他們會計劃動畫並繪製關鍵幀,如中所示。

然後他們製作原型來檢查運動和尺寸才可以開始程式設計人物的能力和技巧。最後,為了製作動畫,他們使用動畫匯入器外掛將他們的Aseprite資產匯入到Unity中。

遊戲中的許多其他元素有助於提升視覺和感受,比如劈砍動作效果,以及當敵人被殺死時,盔甲或武器等物體是如何彈飛的。Physics 2D讓它們變得更家真實。

導演兼動畫師樸相佑(PAW)解釋道。“我們稱這些物體為‘部分’每個部分的位置與精靈中顯示的相同,這使得它看起來像是從敵人身上掉下來的。玩家也可以敲擊部件進行回擊。每個部分都有自己的重量和旋轉力,就像在現實世界中一樣。“

對於旋轉物件,有時團隊直接在Unity中旋轉一個子畫面。在其他情況下,他們透過為每個旋轉角度建立一個子畫面來產生一個序列動畫。

“為每個旋轉角度建立一個子畫面來提供預期的視覺效果肯定會給我們帶來質量,但成本也會更高。每當我們有一個子畫面要旋轉時,我們都會仔細考慮像視覺和角色這樣的方面,以決定應用哪種方法。”

使用2D

平鋪貼圖

編輯器設計關卡

Skul的製作團隊將遊戲中的平鋪貼圖劃分為地形、地形立足點和平臺。玩家不能透過地形與地形立腳點,但是一個玩家可以踩上去;例如,玩家可以從一個較低的點向上跳或者從該點向下跳來侵入平臺。此外團隊還建立了一個指令碼,透過繼承平鋪貼圖類別來為平鋪貼圖分類和設定型別。

根據PAW的說法,“我們使用圖塊調色盤來生成圖塊,期間使用了圖塊調色盤提供的許多功能。我們還優化了Collider,將平鋪貼圖Collider 2D繫結到一個多邊形Collider 2D。”

圖塊調色盤允許團隊直觀地建立貼圖,同時保持對應用程式設計介面的完全控制。

2D Tilemap

透過使用2D Tilemap遊戲的效能得到了大幅提升。透過將同一張貼圖中的子畫面打包在一起,團隊有效減少了對畫面的繪製次數。

最初,SouthPAW Games團隊專注於最佳化繪圖呼叫和記憶體,但很快,他們意識到這樣做並沒有辦法提升1或2 fps(每秒幀數),於是他們將注意力轉移到讓遊戲更有趣上。他們花費了大量時間在確保專案結構上,以確保它足夠方便。

“作為一款2D遊戲,它沒有很高的系統要求。一旦我們將遊戲效能最佳化到一定水平,遊戲就可以很容易地在智慧手機上執行,”PAW說。

視覺效果是由animation sprites周圍的空白空間填充的,樞軸點在中心,所以更容易讓每個幀處於動畫的正確位置。

Physics 2D

Physics 2D在遊戲之中被用於靜態和動態物體之間的碰撞。對於用於視覺效果(如碎片效果)的動態碰撞,Physics 2D精度設定可以降低,而不會直接影響遊戲性。對於那些需要高精度物理學元素,如玩家的移動,團隊使用了2D Raycast和Collider casting等功能來計算一些遊戲邏輯。

其他技巧

SouthPAW Games擴充套件了Unity的編輯器,這幫助團隊在不修改程式碼的情況下編輯和使用大多數Unity的功能。Unity Profiler在識別CPU瓶頸方面發揮了重要作用,框架偵錯程式檢查了繪圖,因此團隊可以根據從這些工具中學到的資訊不斷改進遊戲。

在為節省資源所做的額外工作中,團隊做了以下工作:

l 將視覺效果分成更小的部分,然後為了不同的輸出目的混合不同的部分

l 更改了大小、角度和顏色等屬性,使它們看起來像新效果

l 使用了URP和2D渲染器中的預設著色器,但刪除了專案中未使用的功能

其他2D工具和自定義擴充套件

幾個2D工具公司在專案開始後釋出。雖然團隊不能利用他們,他們仍對2D Sprite Shape,2D Lights和Sprite Tools充滿期望。

“這些工具對我們來說太複雜了不好使用,同時也很難最佳化。沒有我們可以完全依賴的第三方工具。我們聽說有些工具使用Job System,並且經過了很好的最佳化。我們希望能夠獲得像這樣有用的官方工具。”

作為2D遊戲的粉絲,SouthPAW Games團隊對Unity釋出和更新的2D tools感到滿意。

團隊還使用了2D tools附帶的許多應用程式設計介面,並進行擴充套件,使藝術家們能夠迭代遊戲,而無需更改程式碼。

另一個方便的工具是事先調整系統,允許使用者為匯入的資產載入預定義的設定。它有助於以一致的方式建立遊戲專案和角色。

團隊透過建立專案資料夾的快捷方式來節省時間。他們建立了他們的武器系統,可以選擇建立包含相關資訊的新預設,以及在玩家位置放置物品的系統。

總結

SouthPAW Games釋出的Skul首次參加全球獨立遊戲開發大賽並獲得了一等獎。Unity Korea派了一個團隊去光州參加會議,這也為開發團隊提供了足夠的反饋資訊。

對於SouthPAW Games,官方釋出的Skul 只是旅途中的另一個關卡。他們打算繼續聽取玩家的意見並更新遊戲,直到遊戲達到他們的滿意。