2D 資源生成:AI 賦能遊戲開發 #4

釋出於 2023 年 1 月 26 日
在 GitHub 上更新

歡迎來到 AI 賦能遊戲開發系列! 在本系列中,我們將使用 AI 工具在短短 5 天內建立一款功能齊全的農場遊戲。在本系列結束時,你將學會如何將各種 AI 工具融入到你的遊戲開發工作流中。我將向你展示如何使用 AI 工具來處理:

  1. 美術風格
  2. 遊戲設計
  3. 3D 資源
  4. 2D 資源
  5. 故事情節

想要看快速影片版嗎?你可以在這裡觀看。如果想了解技術細節,請繼續閱讀!

注意:本教程適用於熟悉 Unity 開發和 C# 的讀者。如果你是這些技術的新手,請在繼續之前檢視 Unity 初學者系列

第 4 天:2D 資源

在本教程系列的第 3 部分中,我們討論了文生 3D 技術尚未完全成熟。然而,對於 2D 來說,情況則大不相同。

在這一部分,我們將討論如何使用 AI 生成 2D 資源。

前言

本教程描述了一種生成 2D 資源的協作流程,其中將 Stable Diffusion 作為工具整合到傳統的 2D 工作流中。本教程面向具備一定影像編輯和 2D 資源建立知識的讀者,但也可能對初學者和專家同樣有所幫助。

要求

  • 你偏好的影像編輯軟體,例如 PhotoshopGIMP(免費)。
  • Stable Diffusion。關於設定 Stable Diffusion 的說明,請參考第 1 部分

圖生圖 (Image2Image)

像 Stable Diffusion 這樣的擴散模型透過在文字引導下從噪聲中重建影像來工作。圖生圖 (Image2Image) 使用相同的過程,但以真實影像而非噪聲作為輸入。這意味著輸出在某種程度上會與輸入影像相似。

圖生圖中的一個重要引數是去噪強度 (denoising strength)。它控制模型改變輸入的程度。去噪強度為 0 將完全復現輸入影像,而為 1 則會生成一個非常不同的影像。另一種理解去噪強度的方式是將其視為創造力。下圖展示了以一個圓圈影像作為輸入,並使用提示詞“月亮”,在不同去噪強度下的圖生圖效果。

Denoising Strength Example

圖生圖允許將 Stable Diffusion 用作一個工具,而不是替代傳統藝術工作流程。也就是說,你可以將自己手繪的資源傳遞給圖生圖,再手動對結果進行迭代,如此反覆。讓我們以農場遊戲為例。

示例:玉米

在本節中,我將逐步介紹如何為農場遊戲生成一個玉米圖示。首先,我畫了一個非常粗糙的玉米圖示草圖,旨在佈局影像的構圖。

Corn 1

接下來,我使用圖生圖並輸入以下提示詞來生成一些圖示:

corn, james gilleard, atey ghailan, pixar concept artists, stardew valley, animal crossing (玉米、詹姆斯·吉勒德、阿泰·蓋蘭、皮克斯概念藝術家、星露穀物語、動物森友會)

我使用了 0.8 的去噪強度,以鼓勵模型更具創造性。在生成幾次後,我找到了一個我喜歡的結果。

Corn 2

影像不必完美,只要朝著你想要的方向發展即可,因為我們會繼續迭代。就我而言,我喜歡它產生的風格,但覺得莖部有點太複雜了。所以,我在 Photoshop 中做了一些修改。

Corn 3

請注意,我粗略地塗抹了我想要更改的部分,讓 Stable Diffusion 來填充細節。我把我修改後的圖片重新放回圖生圖,這次使用了較低的去噪強度 0.6,因為我不想偏離輸入太遠。這產生了一個我幾乎滿意的圖示。

Corn 4

玉米稈的底部對我來說有點太有繪畫感了,而且頂部還長出了一根新芽。所以,我在 Photoshop 中塗抹了這些部分,再用 Stable Diffusion 處理一次,並移除了背景。

Corn 5

瞧,一個可在遊戲中使用的玉米圖示在不到 10 分鐘內就完成了。當然,你也可以花更多時間來獲得更好的結果。我推薦觀看這個影片,它更詳細地演練了如何製作更精細的資源。

示例:鐮刀

在很多情況下,你可能需要與 Stable Diffusion “鬥爭”一番才能得到你想要的結果。對我來說,鐮刀圖示的情況就是如此,它需要大量的迭代才能達到我想要的方向。

Scythe

問題可能在於,網上關於鐮刀作為武器的圖片遠多於作為農具的圖片。一種解決方法是進行提示詞工程 (prompt engineering),也就是調整提示詞以試圖將其推向正確的方向,例如在提示詞中寫下鐮刀, 農用鐮刀 (scythe, scythe tool),或在負面提示詞中寫下武器 (weapon)。然而,這並非唯一的解決方案。

DreamboothTextual InversionLoRA 是用於定製擴散模型的技術,使它們能夠產生更符合你特定需求的結果。這些內容超出了本教程的範圍,但值得一提,因為它們在 2D 資源生成領域正變得越來越重要。

layer.aiscenario.gg 這樣的生成式服務專門針對遊戲資源生成,它們很可能使用了 Dreambooth 和 Textual Inversion 等技術,讓遊戲開發者能夠生成風格一致的資源。然而,在新興的生成式遊戲開發工具包中,哪種方法會脫穎而出,還有待觀察。

如果你有興趣深入研究這些高階工作流程,請檢視這篇關於 Dreambooth 訓練的博文空間 (Space)

點選此處閱讀第 5 部分,我們將在其中使用 AI 進行故事情節創作

社群

註冊登入 以發表評論

© . This site is unofficial and not affiliated with Hugging Face, Inc.