Home / Unity / 快樂豐收演示:了解最新的 2D 技術

快樂豐收演示:了解最新的 2D 技術

https://blog.unity.com/games/happy-harvest-demo-latest-2d-techniques

2023年7 月 6 日

來自 Unity 的快樂收穫演示代表圖像

當今 2D 遊戲的創新程度是無限的。憑藉如此多的創意可能性以及 Unity 2D 渲染和工具的發展,我們將為您提供在 Unity 中製作 2D 遊戲的最新最佳實踐。

Happy Harvest現已在 Unity Asset Store 上架,它向開發人員展示瞭如何利用Unity 2022 LTS中的通用渲染管道 (URP) 的最新功能來創建 2D 燈光、陰影和特效。它融合了任何 2D 創建者都可以使用的最佳實踐,包括不將陰影烘焙到精靈中、保持精靈平坦、將陰影和體積信息移動到輔助紋理、高級 Tilemap 功能等等。

勤勞農民的自上而下視圖

《豐收》中的主角和他的豬

《豐收》中的主角和他的豬

《快樂收穫》是一款帶有歡快卡通藝術的自上而下的演示。該示例將帶您了解勤勞農民的一天生活。他走出農舍,沿著燈籠照亮的鵝卵石小路前行。他負責種植小麥、胡蘿蔔和玉米作物,採摘蘋果,並餵養豬和牛。他的農莊點綴著池塘,後面有一個穀倉,周圍都是青翠的松樹。

自上而下的視角帶來了挑戰,例如如何投影角色、管理重疊的對像以及以富有想像力的方式創建陰影。這些是通過使用 Unity 2022 LTS 中包含的陰影、精靈庫和 Tilemap 2D 功能來處理的。

所有這些資產都可以免費在您的個人或商業項目中使用,您也可以根據自己的想法修改演示。立即下載,開始探索這個田園風光及其許多細節。

探索演示中使用的技術

用於控制晝夜週期的插值器腳本

用於控制晝夜週期的插值器腳

該演示附有一系列指導文章。這些技術演練將幫助您了解如何創建燈光、陰影、環境和動畫,以便您可以在自己的 2D 項目中使用相同的步驟。

該演示提供以下頁面:

您可以在 Unity Asset Store 頁面的說明和演示的編輯器內教程窗口中找到這些文章。

讓我們簡要了解一下您將從每一頁中學到的內容。

創建深度錯覺、陰影和晝夜循環

不同資源類型的製作方式及其法線貼圖和遮罩貼圖,從左到右:骨骼動畫角色、可平鋪精靈和道具

不同資源類型的製作方式及其法線貼圖和遮罩貼圖,從左到右:骨骼動畫角色、可平鋪精靈和道具

《豐收》中有很多可愛的細節,從成熟的玉米田和金色的小麥,到輕輕搖曳的燈籠和紅木瓦農舍。但燈光和陰影是這個舒適世界中最令人身臨其境的部分,具有全身的光芒和午後的陰影。

通過將光和陰影信息移動到單獨的紋理(這在藝術創作過程中確實需要一些額外的步驟),您可以創建優化的實時 2D 光和陰影。

閱讀文章“使用通用渲染管道的 2D 光影技術”,了解如何:

  • 創建並使用法線貼圖和蒙版貼圖(輔助紋理)以添加豐富的細節,例如主角、桶、燈柱和其他道具上的邊緣照明。
  • 使用環境光和聚光燈通過模仿太陽全天運動的色調和效果來設置氣氛。
  • 通過在燈光上啟用法線貼圖來創建體積的錯覺,就像在灌木叢上使用的效果一樣。
  • 使用斑點陰影和陰影投射器的無限陰影為一天中的任何形狀和時間創建陰影。
  • 通過晝夜腳本控制時間的移動和光線的變化。
  • 根據 Unity 團隊的提示優化您的 2D 燈光。

使用 2D Tilemap 設計大型景觀環境

設置規則圖塊後,繪製連續路徑會更容易且更高效。

設置規則圖塊後,繪製連續路徑會更容易且更高效

鵝卵石小路、池塘、草地和背景森林有什麼共同點?它們都是用 Unity 的 Tilemap 系統製作的,該系統提供了一種用圖塊(放置在網格上的小精靈)創建遊戲世界的方法。您無需將關卡設計為一個大圖像,而是可以將其分割成在整個關卡中重複的磚塊狀塊。

圖塊地圖可以幫助節省藝術創作時間以及內存和 CPU 功率。這是因為圖塊可以由專用渲染器渲染,並且可以禁用屏幕上不可見的圖塊。畫筆工具可以高效地在網格上繪製圖塊,並且可以編寫腳本以使用繪製規則。它們還具有自動碰撞生成功能,可以更有效地進行測試和編輯。此外,您還可以放置 GameObjects 或使用 API 來實現遊戲邏輯。

您可以在“使用 Unity 中的 2D Tilemaps 創建藝術和遊戲”一文中找到有關使用 Tilemap 系統的提示,包括如何:

  • 對圖塊貼圖使用輔助紋理:示例中的每個圖塊貼圖都有稱為法線貼圖和遮罩貼圖紋理的對應紋理,它們共享相同的尺寸和佈局,但繪製用於顯示照明。
  • 使用規則圖塊功能,該功能是 2D Tilemap Extras 包的一部分。該軟件包包含可重複使用的 2D 和 Tilemap 編輯器腳本,您可以在自己的項目中使用並作為自定義畫筆和圖塊的基礎。
  • 在項目層次結構中組織圖塊:
    • 在示例中,圖塊全部包含在一個名為Grid的 GameObject 中。
    • 我們在網格內創建了盡可能少的圖塊地圖,以 防止像素重疊並有助於保持較低的過度繪製。
  • 根據示例中的使用方式使用 Tilemap API。

了解角色裝備、骨骼動畫和精靈交換

面部綁定可以完全控製表情,包括在某些動畫中創建半三維效果。

面部綁定可以完全控製表情,包括在某些動畫中創建半三維效果。

《快樂豐收》中的農民挽起袖子,留著蓬巴杜髮型,準備幹活。為了讓他在場景中移動,我們使用了一些技術,例如操縱他的臉部來創建不同的表情,用於角色變化的精靈庫,以及用於在動畫過程中在附加到同一骨骼的精靈之間切換的精靈交換。

在“豐收快樂中的 2D 角色和動畫”一文中,我們詳細介紹了這些技術以及用於創建動畫的其他技術。您將獲得有關如何執行以下操作的提示:

  • 從不同角度繪製角色並為其製作動畫,以適應自上而下的視角。在《豐收》中,好看的視覺效果是通過四個方向來實現的。
  • 使用2D 動畫PSD 導入器包在 Unity 中處理骨骼動畫。這些使您能夠將角色圖稿直接從 Photoshop 導入到 Unity 中,方法是將所有角色的圖層作為精靈導入,並將它們精確地放置在應用程序中繪製的位置。
  • 在 Sprite Editor 中裝備一個角色。
  • 將精靈連接到骨骼、幾何體和權重。
  • 使用 Sprite 庫編輯器和 Sprite 交換來管理除可通過骨骼旋轉實現的動畫類型之外的動畫類型。這包括角色改變面朝方向時的面部表情。
  • 使用2D 逆運動學(2D IK) 工具,該工具是 2D 動畫包的一部分。它計算旋轉並允許一系列骨骼將它們移動到目標位置。

製造雨水、舒適的火、煙霧和搖曳的樹葉

使用 2D VFX Graph 生成雨粒子

使用 2D VFX Graph 生成雨粒子

農民的莊稼既需要陽光,又需要雨水。幸運的是,晚上帶來了降雨,我們勤勞的農民可以在壁爐裡生著舒適的火的小家裡退休了。

在 Unity 中創建類似 2D 視覺效果的選項有多種。您可以逐幀製作爆炸動畫或生成粒子和雲精靈。使用內置粒子系統在 CPU 上生成粒子。或者,您可以利用 GPU 並使用VFX GraphShader Graph生成數百萬個粒子或使用URP Volumes應用後處理效果。

在“使用 VFX Graph 和 Shader Graph 實現 2D 特效”一文中,您將了解用於在Happy Harvest中創建特效的不同技術,包括:

  • 使用內置粒子系統創建的簡單粒子效果,例如灌木叢中落葉或農民的腳印
  • Flipbook 粒子可在夜間使用內置粒子系統在燈周圍創建飛蛾,或者由 VFX Graph 產生的雨中的水花
  • 常見效果,例如應用於水瓷磚的著色器以使波浪移動、壁爐中的火和煙囪中的煙霧
  • VFX 圖表中製作的雨和雷等天氣效果 – 雨粒子使用 2D Lit 著色器,因此它們與環境完美融合併對燈光做出反應
  • 著色器移動樹木和其他植被以模擬微風
  • 將色調和光暈後期處理效果應用於整個場景,營造出溫暖、歡快的氣氛

在我們的電子書《在 Unity 中創建高級視覺效果的權威指​​南》中了解有關創建視覺效果的更多信息。該電子書全面概述瞭如何使用 Unity 中的視覺效果創作工具來創建高級效果,包括水和液體、煙霧、火、爆炸、天氣、衝擊、魔法、電力等等。

下載、播放並獲取最佳實踐

Happy Harvest是想要在 Unity 中學習新視覺技術的 2D 創作者的遊樂場。擴展示例,在您自己的項目中重用其元素和腳本,並在移動和桌面設備上測試它。此示例及其支持內容旨在為每個人(從初學者到經驗豐富的 2D 開發人員)提供有用的提示。收穫快樂!

Unity 電子書的代表性圖像“藝術家的 2D 遊戲藝術、動畫和燈光”。

如果您還沒有下載這些高級電子書,請務必下載這些電子書,其中涵蓋了 Unity 中的 2D 遊戲開發以及渲染和視覺效果(3D 和 2D):

另外,請查看我們的其他 2D 演示《The Lost Crypt》《Dragon Crashers》

您將在Unity 最佳實踐中心找到更多適合高級程序員、美術師、技術美術師和設計師的資源。

Check Also

激勵視頻廣告展示位置的基礎知識

激勵視頻廣告展示位置的基礎知識

https://blog.un …

【Unity官方文摘】準備好創建自己的遊戲了嗎?這裡有 7 個必須保存的教程

【Unity官方文摘】準備好創建自己的遊戲了嗎?這裡有 7 個必須保存的教程

https://blog.un …

使用 AssetPostprocessor 和 Blender 在 Breachers 中進行快速設計迭代

使用 AssetPostprocessor 和 Blender 在 Breachers 中進行快速設計迭代

https://blog.un …

發佈留言