給遊戲關卡設計的建議,如何用好引擎工具
遊戲關卡設計師是遊戲開發中的重要角色,扮演著故事講述者、建築大師、指令碼設計師等多種角色。該職位實際上負責的是對整個遊戲世界的設計,玩家們在遊戲世界中的每一步成長,都與之息息相關。
因此,一個成熟的關卡設計師,不僅要學會與美術設計師合作,打造出風格迥異的遊戲世界;還要了解如何使用技術來建立高質量的關卡原型。本文,Unity 以“搭建遊戲的關卡”和“學習用 ProBuilder 搭建臨時關卡”為例,為關卡設計師提供些許建議。
搭建遊戲的關卡
白盒(也稱灰盒)是指建立並擺放簡單 3D 形狀,由此找出最適合關卡設計和目標風格的佈局。使用簡單的白盒,可以使使用者無需調整美術、光照和其他細節即可能控制關卡布局,從而加快迭代過程。
有些關卡設計師喜歡跳過紙面設計,直接使用白盒,因為他們更喜歡在 3D 空間裡工作,也更習慣遊戲引擎的工作流。使用哪種方式,可以由關卡設計師自己決定。
給積木塊資產起描述性的名字
用於白盒設計的 3D 形狀就好似場景中的積木,給每塊積木資產起描述性的名字來分辨它的用處,能幫助環境美術師在替換實際的遊戲資產時理解每個物件的用途。
比如,這一塊是不是牆壁?如果是,它需要多少的最低高度來阻擋玩家的視線?像這樣的資產可以叫做“wall_interior_w2_h4_l6”。這樣命名,標明瞭物件是什麼,它的位置和尺寸,這些細節對後邊的美術設計師來說很重要。保持命名格式一致也能讓同事們更好地理解這些名稱的意義。
為了方便獲取資訊,關卡設計師也可以選擇用 3D 空間裡的浮動文字來表明自己的意圖,讓同事無需開啟編輯器就能執行遊戲、看到設計方案。
最後,用這種方式命名標註資產不僅可以幫助他人檢視場景,還可以幫設計師自己快速定位工作內容。
為積木塊資產新增材質來視覺化設計意圖
除了給資產起描述性的名字,關卡設計師也可以給積木加上材質來表明意圖。這種方法能很方便地區分可互動和靜態的物件,可遊玩和不可遊玩的空間,可破壞與不可破壞等等。
避免製作過於精細的美術資產
白盒法的作用在於測試想法並迭代,為了避免在未敲定的資產上浪費時間,團隊直到設計被批准前都不應建立正式的 3D 資產。
當關卡設計師得到了其他相關團隊成員的支援,且對關卡的設計感到滿意時,美術設計師就可以開始製作,用正式的 3D 資產替換掉白盒子。
向概念美術設計師尋求幫助
團隊成員在用白盒視覺化最終場景時可能會遇到困難。這時,一名概念美術設計師可以幫忙畫出所有白盒,呈現出團隊所想。這只是一張關卡的 2D 示意圖,不需要建立 3D 資產。一般來說,這些手繪圖以關卡截圖為參考,可以展示出某種風格或氛圍。
團隊成員可以與一名概念美術設計師分享實際的場景。如果有個文件記錄了每一塊所代表的東西,那麼美術設計師就能更輕鬆地還原整體的想法。
現成資產也能幫上忙
另一種強化白盒場景的有效方法是放入現成資產。
Unity 資源商店帶有許多馬上能用的資產來視覺化關卡設計師的想法。比如,來自 Synty Studios 的 POLYGON Pack 可以幫助設計師 “用附帶的註釋和標記與團隊溝通設計決策”。
學習用ProBuilder臨時搭建關卡
ProBuilder 能讓使用者直接在 Unity 裡開展關卡的設計、灰盒搭建、原型製作和遊戲測試,無需使用 3D 建模軟體或依靠專業 3D 建模師。它提供了許多 3D 物件的創作與控制工具,包括平滑、伸展、翻轉、映象、凸起、切分、著色及紋理貼圖。
在安裝 ProBuilder 包時,一定要匯入通用渲染管線(URP)或高畫質渲染管線(HDRP)對應的支援檔案(材質),否則物件可能無法渲染。使用內建渲染管線時則無需安裝。
請選擇頂部選單的 GameObject > ProBuilder > Cube(為例)來建立一個 ProBuilder 原始形狀。ProBuilder 包含的幾種原始形狀很適合快速製作原型。這些形狀都帶有 Mesh Collider 物理元件,可以新增到 Scene 檢視中。
ProBuilder 模型網格的行為很像普通的 GameObject。關卡設計師可以修改 Transform 數值,新增元件、物理效果和指令碼,並製作動畫。不過,標準Unity 模型網格與 ProBuilder 不同:它們只有在轉換成 ProBuilder 物件後才可用 ProBuilder 編輯。
儘管 ProBuilder 經常用於建立和編輯 ProBuilder 模型網格,它也能用於修改現有資產。比如,關卡設計師可以匯入 Unity 資源商店的資產,再用 ProBuilder 修改。
平滑組
平滑組的作用是在面之間做出尖銳或柔和的邊緣。當相鄰的多邊形不在一個共同的平滑組裡,形狀之間便會產生尖銳的邊緣。試想有幾個幾何形組成了一輛車的前擋風玻璃:玻璃將屬於一個平滑組,而引擎蓋的幾何形則屬於另一組。如果擋風玻璃和引擎蓋同屬一塊模型網格,兩者都會被分開平整,但不會被視作一塊表面。
在 ProBuilder 裡,新形狀的所有表面預設都會被平滑。要詳細控制平滑組,請取消勾選 Smooth 選項(如上圖所示)。
Smooth Group Editor Window 提供的選項可幫使用者建立或預先視覺化不同的平滑組。
使用 Preview 選項,關卡設計師可以根據組別來調整表面顏色的透明度,並利用畫素抖動效果將其混合起來,設計師也能預先視覺化頂點的法線。
前一個例子在 Game 檢視裡看起來像這樣:
UV Editor
關卡設計師可以用 UV Editor 在特定模型網格上修改紋理對映,我們來看看編輯器的主要工作領域。
1. 這個工具欄與 Scene 檢視的相同,其中的選項有拖動、旋轉,縮放頂點、邊緣或面。
2. 這些按鈕能讓關卡設計師在 UV 啟用時直接到 Scene 場景裡、操縱 UV 對映座標。帶顏色表示啟用,灰色則為未啟用。
3. 選擇 UV 來編輯著色器的 UV 對映。選擇 UV2(只讀)來重新生成烘焙或實時光照貼圖。
4. 物件上的 UV 貼圖有兩種編輯方式:
5. 關卡設計師可以仔細地排布元素,使之匹配著色器紋理。上圖中,選中的面以藍色高亮顯示。
技巧:用色彩程式碼加快關卡設計
用盒子搭建關卡期間,色彩程式碼法能幫關卡設計師更清晰地傳達意圖和想法,比如,關卡設計師可以將元素塗成紅色,來告訴團隊它們是可破壞的。
點選 Vertex Colors 功能的“加”圖示能新建一塊色板,關卡設計師可以在色板裡自定義需要出現在場景中的顏色(及顏色數量)。
要給物件上色,請在 Scene 檢視選中物件並點選 Apply。關卡設計師也能為單個面上色,然後與團隊分享儲存好的調色盤,統一每個人的色彩程式碼標準。
技巧:啟用 ProBuilder的Dimensions Overlay
在 Tools > Probuilder > Dimensions Overlay 下,關卡設計師可以啟用浮動標籤在場景中顯示當前選中物件的尺寸。
與環境美術設計師分享 ProBuilder 關卡
關卡設計師可以用 Probuilder 的 Export 功能或安裝 FBX Exporter 包來匯出原型關卡資產,以正確的尺寸將資產帶到 DCC 應用裡,交給美術設計師來打磨和精煉。
安裝了 FBX Exporter 包後,在 GameObject > Export To FBX 下,關卡設計師將有幾種匯出選項來與美術設計師分享。
與團隊一起敲定清楚的工作計劃能保證設計過程流暢、高效,美術設計師能以正確的 3D 物件尺寸和形狀無縫地開展工作。
關卡設計師也能用 ProBuilder 或 Unity 資源商店的工具來“kitbash”(元件套用),用不同的資產創造出原創的新鮮事物。這個概念源自塑膠模型愛好者,他們喜歡摻雜火車或飛機的模型套件來打造自己的專案。
來源:Unity官方平臺
原文:https://mp.weixin.qq.com/s/U3iycfNhbfxhMcdN4ZifEA
因此,一個成熟的關卡設計師,不僅要學會與美術設計師合作,打造出風格迥異的遊戲世界;還要了解如何使用技術來建立高質量的關卡原型。本文,Unity 以“搭建遊戲的關卡”和“學習用 ProBuilder 搭建臨時關卡”為例,為關卡設計師提供些許建議。
搭建遊戲的關卡
白盒(也稱灰盒)是指建立並擺放簡單 3D 形狀,由此找出最適合關卡設計和目標風格的佈局。使用簡單的白盒,可以使使用者無需調整美術、光照和其他細節即可能控制關卡布局,從而加快迭代過程。
有些關卡設計師喜歡跳過紙面設計,直接使用白盒,因為他們更喜歡在 3D 空間裡工作,也更習慣遊戲引擎的工作流。使用哪種方式,可以由關卡設計師自己決定。
使用 ProBuilder 的搭建關卡示例,由名為 niv-vada 的使用者在 Reddit 上釋出
給積木塊資產起描述性的名字
用於白盒設計的 3D 形狀就好似場景中的積木,給每塊積木資產起描述性的名字來分辨它的用處,能幫助環境美術師在替換實際的遊戲資產時理解每個物件的用途。
比如,這一塊是不是牆壁?如果是,它需要多少的最低高度來阻擋玩家的視線?像這樣的資產可以叫做“wall_interior_w2_h4_l6”。這樣命名,標明瞭物件是什麼,它的位置和尺寸,這些細節對後邊的美術設計師來說很重要。保持命名格式一致也能讓同事們更好地理解這些名稱的意義。
這個場景的資產都帶有輔助性的名稱,比如“P_GenericWall_200x300cm”——字首P表明它是個預設體,隨後是資產的用處(牆),再是它的尺寸。
為了方便獲取資訊,關卡設計師也可以選擇用 3D 空間裡的浮動文字來表明自己的意圖,讓同事無需開啟編輯器就能執行遊戲、看到設計方案。
最後,用這種方式命名標註資產不僅可以幫助他人檢視場景,還可以幫設計師自己快速定位工作內容。
為積木塊資產新增材質來視覺化設計意圖
除了給資產起描述性的名字,關卡設計師也可以給積木加上材質來表明意圖。這種方法能很方便地區分可互動和靜態的物件,可遊玩和不可遊玩的空間,可破壞與不可破壞等等。
避免製作過於精細的美術資產
白盒法的作用在於測試想法並迭代,為了避免在未敲定的資產上浪費時間,團隊直到設計被批准前都不應建立正式的 3D 資產。
當關卡設計師得到了其他相關團隊成員的支援,且對關卡的設計感到滿意時,美術設計師就可以開始製作,用正式的 3D 資產替換掉白盒子。
向概念美術設計師尋求幫助
團隊成員在用白盒視覺化最終場景時可能會遇到困難。這時,一名概念美術設計師可以幫忙畫出所有白盒,呈現出團隊所想。這只是一張關卡的 2D 示意圖,不需要建立 3D 資產。一般來說,這些手繪圖以關卡截圖為參考,可以展示出某種風格或氛圍。
團隊成員可以與一名概念美術設計師分享實際的場景。如果有個文件記錄了每一塊所代表的東西,那麼美術設計師就能更輕鬆地還原整體的想法。
手繪前的臨時搭建關卡。本圖源自 FMPONE 和 Volcano 的遊戲《Crown》的開發過程,曾公佈於 Radiator Blog。
和上一個場景相同,現在進行手繪。本圖源自 FMPONE 和 Volcano 的遊戲《Crown》的開發過程,曾公佈於 Radiator Blog。
現成資產也能幫上忙
另一種強化白盒場景的有效方法是放入現成資產。
Unity 資源商店帶有許多馬上能用的資產來視覺化關卡設計師的想法。比如,來自 Synty Studios 的 POLYGON Pack 可以幫助設計師 “用附帶的註釋和標記與團隊溝通設計決策”。
Synty Studios 的 POLYGON Prototype Pack,可在 Unity 資源商店購買。
學習用ProBuilder臨時搭建關卡
ProBuilder 製作的物件可從 Unity 匯出到 DCC 軟體,讓 3D 建模師能用自己順手的創作工具開展工作。
ProBuilder 能讓使用者直接在 Unity 裡開展關卡的設計、灰盒搭建、原型製作和遊戲測試,無需使用 3D 建模軟體或依靠專業 3D 建模師。它提供了許多 3D 物件的創作與控制工具,包括平滑、伸展、翻轉、映象、凸起、切分、著色及紋理貼圖。
如果專案使用了 URP 或 HDRP,請別忘了安裝對應的支援檔案。
在安裝 ProBuilder 包時,一定要匯入通用渲染管線(URP)或高畫質渲染管線(HDRP)對應的支援檔案(材質),否則物件可能無法渲染。使用內建渲染管線時則無需安裝。
Unity 2022 LTS 中的 URP 新專案,這是在安裝支援檔案之前和之後建立的同一段階梯
請選擇頂部選單的 GameObject > ProBuilder > Cube(為例)來建立一個 ProBuilder 原始形狀。ProBuilder 包含的幾種原始形狀很適合快速製作原型。這些形狀都帶有 Mesh Collider 物理元件,可以新增到 Scene 檢視中。
ProBuilder 模型網格的行為很像普通的 GameObject。關卡設計師可以修改 Transform 數值,新增元件、物理效果和指令碼,並製作動畫。不過,標準Unity 模型網格與 ProBuilder 不同:它們只有在轉換成 ProBuilder 物件後才可用 ProBuilder 編輯。
一個立方體 GameObject 用 ProBuilderize 操作轉換成 ProBuilder 模型網格前後對比
儘管 ProBuilder 經常用於建立和編輯 ProBuilder 模型網格,它也能用於修改現有資產。比如,關卡設計師可以匯入 Unity 資源商店的資產,再用 ProBuilder 修改。
從 Unity 資源商店匯入的 Tower 資源,在用 ProBuilderize 操作轉換之後它就能像 ProBuilder 模型網格那樣修改了。
平滑組
平滑組的作用是在面之間做出尖銳或柔和的邊緣。當相鄰的多邊形不在一個共同的平滑組裡,形狀之間便會產生尖銳的邊緣。試想有幾個幾何形組成了一輛車的前擋風玻璃:玻璃將屬於一個平滑組,而引擎蓋的幾何形則屬於另一組。如果擋風玻璃和引擎蓋同屬一塊模型網格,兩者都會被分開平整,但不會被視作一塊表面。
第二個球體禁用了 Smooth 選項,關卡設計師可以選中物件並在 Inspector 檢視中修改該設定。
在 ProBuilder 裡,新形狀的所有表面預設都會被平滑。要詳細控制平滑組,請取消勾選 Smooth 選項(如上圖所示)。
Smooth Group Editor Window 提供的選項可幫使用者建立或預先視覺化不同的平滑組。
Smooth Group Editor 視窗開啟時,模型網格會按不同顏色展示各個組。
使用 Preview 選項,關卡設計師可以根據組別來調整表面顏色的透明度,並利用畫素抖動效果將其混合起來,設計師也能預先視覺化頂點的法線。
前一個例子在 Game 檢視裡看起來像這樣:
注意圓柱體的頂部和下半部分沒有進行任何平滑處理,因此面的邊緣清晰可見。上半部分和下半部分都進行了平滑處理,但中間的接縫清晰可見。這是由於兩部分屬於不同的平滑組,因此被視為不同的曲面。
UV Editor
這個 UV Editor 視窗裡是一個圓柱體物件及其預設的 UV 對映。
關卡設計師可以用 UV Editor 在特定模型網格上修改紋理對映,我們來看看編輯器的主要工作領域。
1. 這個工具欄與 Scene 檢視的相同,其中的選項有拖動、旋轉,縮放頂點、邊緣或面。
2. 這些按鈕能讓關卡設計師在 UV 啟用時直接到 Scene 場景裡、操縱 UV 對映座標。帶顏色表示啟用,灰色則為未啟用。
- 箭頭按鈕可鎖定 Scene 檢視中的 Transform 工具,以操作 Scene 檢視中選定元素(邊、頂點、面或物件)的 UV 而不是 Transform。
- “磚塊”按鈕會從座標(0,0)起預覽著色器傳來的紋理。
- 攝像機按鈕會輸出鋪有多邊形線框的紋理,用於在 DCC 軟體裡作參考。預設時,它會將檔案儲存到專案的 Assets 資料夾內。
3. 選擇 UV 來編輯著色器的 UV 對映。選擇 UV2(只讀)來重新生成烘焙或實時光照貼圖。
4. 物件上的 UV 貼圖有兩種編輯方式:
- Auto:ProBuilder 根據 Actions 皮膚裡的設定來管理紋理貼圖,即便使用者重新調整了模型網格的大小。這個預設選項可以應付大多數關卡設計工作,特別是製作原型時的重複形狀。
- Manual:這種方法可以精確地展開和編輯 UV、渲染 UV 等。建議根據細節圖定位 UV 元素。使用者可以觀看這段步驟式教程,逐步瞭解手動製作高階 UV 紋理的方法。
5. 關卡設計師可以仔細地排布元素,使之匹配著色器紋理。上圖中,選中的面以藍色高亮顯示。
技巧:用色彩程式碼加快關卡設計
用盒子搭建關卡期間,色彩程式碼法能幫關卡設計師更清晰地傳達意圖和想法,比如,關卡設計師可以將元素塗成紅色,來告訴團隊它們是可破壞的。
點選 Vertex Colors 功能的“加”圖示能新建一塊色板,關卡設計師可以在色板裡自定義需要出現在場景中的顏色(及顏色數量)。
要給物件上色,請在 Scene 檢視選中物件並點選 Apply。關卡設計師也能為單個面上色,然後與團隊分享儲存好的調色盤,統一每個人的色彩程式碼標準。
用色彩程式碼標出的灰盒場景
技巧:啟用 ProBuilder的Dimensions Overlay
在 Tools > Probuilder > Dimensions Overlay 下,關卡設計師可以啟用浮動標籤在場景中顯示當前選中物件的尺寸。
視覺化選中物件的高度、寬度和深度
與環境美術設計師分享 ProBuilder 關卡
關卡設計師可以用 Probuilder 的 Export 功能或安裝 FBX Exporter 包來匯出原型關卡資產,以正確的尺寸將資產帶到 DCC 應用裡,交給美術設計師來打磨和精煉。
安裝了 FBX Exporter 包後,在 GameObject > Export To FBX 下,關卡設計師將有幾種匯出選項來與美術設計師分享。
與團隊一起敲定清楚的工作計劃能保證設計過程流暢、高效,美術設計師能以正確的 3D 物件尺寸和形狀無縫地開展工作。
關卡設計師也能用 ProBuilder 或 Unity 資源商店的工具來“kitbash”(元件套用),用不同的資產創造出原創的新鮮事物。這個概念源自塑膠模型愛好者,他們喜歡摻雜火車或飛機的模型套件來打造自己的專案。
來源:Unity官方平臺
原文:https://mp.weixin.qq.com/s/U3iycfNhbfxhMcdN4ZifEA
相關文章
- 遊戲關卡設計:淺談如何評價一個遊戲的關卡設計水平遊戲
- 建築師解構遊戲關卡——引數化關卡設計的思考遊戲
- 給遊戲引擎開發者的 64 個建議(1):客戶端遊戲引擎客戶端
- 如何為平臺遊戲設計關卡?遊戲設計
- 關於設計自身遊戲作品的5點建議遊戲
- 遊戲關卡設計文件遊戲
- 戰神系列戰鬥設計師:給遊戲設計師的 50 條建議遊戲設計師
- 【乾貨】如何設計一個Arkane遊戲的關卡遊戲
- 關於遊戲內建商店的4個設計建議遊戲
- 遊戲關卡設計如何入門和練習?遊戲
- 遊戲新手如何搭建“關卡設計”知識框架?遊戲框架
- 遊戲關卡設計之<遭遇戰設計>遊戲
- 我給所有新手程式設計師的建議程式設計師
- 給未來精英程式設計師的建議程式設計師
- 雷軍給程式設計師的五點建議程式設計師
- 寫給未來程式設計師的建議程式設計師
- 給新程式設計師的10條建議程式設計師
- 給新人程式設計師的 10 點建議程式設計師
- 給新手程式設計師的幾點建議程式設計師
- 建築師解構遊戲關卡:型別擴充探討吃雞關卡設計遊戲型別
- 如何提升你的能力?給年輕程式設計師的幾條建議程式設計師
- 城市設計對遊戲關卡的啟示遊戲
- 給程式設計師“菜鳥”的6條建議程式設計師
- 給Android程式設計師的六個建議Android程式設計師
- 給年輕程式設計師的7個建議程式設計師
- 給程式設計師新手的一些建議程式設計師
- 基於關卡設計維度的戰棋遊戲系統與關卡設計用例遊戲
- 給獨立遊戲製作人的進階建議遊戲
- MMO/FPS遊戲副本關卡的設計思路遊戲
- 建築師解構遊戲關卡——引數化關卡設計探討佔領據點地圖遊戲地圖
- 跨界造物:有趣!遊戲關卡設計中的建築學思維與方法遊戲
- 關於 iOS 64位程式設計的建議iOS程式設計
- 遊戲設計集 · 詳解關卡設計的平面佈局(Layout)遊戲設計
- 如何用好谷歌等搜尋引擎?谷歌
- 建築師解構遊戲關卡——射擊遊戲關卡的區域性佈局方案遊戲
- 給各位PHP程式設計師十點未來的建議PHP程式設計師
- #給java程式設計師的10條建議,吐血推薦!Java程式設計師
- 陳皓:給程式設計師新手的一些建議程式設計師