AI 游戏开发:5 天创建一个农场游戏。第 1 部分
欢迎来到 AI 游戏开发! 在这个系列中,我们将使用 AI 工具在短短 5 天内创建一个功能齐全的农场游戏。在本系列结束时,您将学会如何将各种 AI 工具融入您的游戏开发工作流程。我将向您展示如何使用 AI 工具进行
- 美术风格
- 游戏设计
- 3D 资源
- 2D 资源
- 故事情节
想要快速视频版?你可以在这里观看。否则,如果你想了解技术细节,请继续阅读!
注意: 本教程面向熟悉 Unity 开发和 C# 的读者。如果您对这些技术不熟悉,请在继续之前查看 Unity 初学者系列。
第 1 天:美术风格
我们游戏开发过程的第一步是决定美术风格。为了决定我们农场游戏的美术风格,我们将使用一个名为 Stable Diffusion 的工具。Stable Diffusion 是一个开源模型,可以根据文本描述生成图像。我们将使用这个工具为我们的游戏创建一种视觉风格。
设置 Stable Diffusion
运行 Stable Diffusion 有几种选择:本地或在线。如果您使用的是拥有不错 GPU 的台式机,并且想要功能齐全的工具集,我建议本地运行。否则,您可以运行在线解决方案。
本地
我们将使用 Automatic1111 WebUI 在本地运行 Stable Diffusion。这是一个在本地运行 Stable Diffusion 的流行解决方案,但确实需要一些技术知识才能设置。如果您在 Windows 上,并且拥有一块至少 8GB 显存的 Nvidia GPU,请继续按照以下说明操作。否则,您可以在 GitHub 仓库的 README 中找到其他平台的说明,或者选择在线解决方案。
在 Windows 上安装:
要求:一块至少有 8GB 显存的 Nvidia GPU。
- 安装 Python 3.10.6。请确保在安装过程中勾选“将 Python 添加到 PATH”。
- 安装 git。
- 通过在命令提示符中输入以下内容来克隆仓库
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
- 下载 Stable Diffusion 1.5 权重。将它们放在克隆的仓库的
models
目录中。 - 通过在克隆的仓库中运行
webui-user.bat
来运行 WebUI。 - 导航到
localhost://7860
来使用 WebUI。如果一切正常,它应该看起来像这样

在线
如果您不满足在本地运行 Stable Diffusion 的要求,或者更喜欢更简化的解决方案,有很多方法可以在线运行 Stable Diffusion。
免费解决方案包括 🤗 Hugging Face 上的许多 空间 (Spaces),例如 Stable Diffusion 2.1 演示或 camemduru webui。您可以在这里找到其他在线服务的列表。您甚至可以使用 🤗 Diffusers 来编写自己的免费解决方案!您可以在这里找到一个简单的入门代码示例。
注意: 本系列的部分内容将使用高级功能,如图生图 (image2image),这些功能可能并非在所有在线服务上都可用。
生成概念艺术
让我们来生成一些概念艺术。步骤很简单
- 输入你想要的东西。
- 点击生成。

但是,如何才能得到你真正想要的结果呢?提示词 (Prompting) 本身就是一门艺术,所以如果你生成的第一批图像不怎么样,那也没关系。有很多很棒的资源可以帮助你改进提示词。我做了一个关于这个主题的 20 秒视频。你也可以找到这个更详尽的书面指南。
这些资源的共同重点是使用像 lexica.art 这样的来源,看看其他人用 Stable Diffusion 生成了什么。寻找与你想要的风格相似的图像,并从中获取灵感。这里没有正确或错误的答案,但以下是使用 Stable Diffusion 1.5 生成概念艺术时的一些技巧
- 使用诸如等轴测 (isometric)、简单 (simple)、实心形状 (solid shapes) 等词语来约束输出的形式。这样可以产生更容易在游戏中复现的风格。
- 一些关键词,比如低多边形 (low poly),虽然切题,但往往会产生质量较低的结果。尝试寻找不会降低结果质量的替代关键词。
- 使用特定艺术家的名字是引导模型走向具有更高质量结果的特定风格的有力方法。
我最终选择了这个提示词:isometric render of a farm by a river, simple, solid shapes, james gilleard, atey ghailan (河边农场的等轴测渲染,简单,实心形状,james gilleard,atey ghailan)。这是结果

将其导入 Unity
现在,我们如何将这个概念艺术变成一个游戏?我们将使用流行的游戏引擎 Unity,将我们的游戏变为现实。
- 使用 Unity 2021.9.3f1 和通用渲染管线 (Universal Render Pipeline) 创建一个 Unity 项目。
- 使用基本形状搭建场景。例如,要添加一个立方体,右键 -> 3D 对象 -> 立方体。

- 以概念艺术为参考,设置你的材质 (Materials)。我使用的是基本的内置材质。

- 设置你的光照 (Lighting)。我使用的是一个暖色太阳光 (#FFE08C,强度 1.25) 和柔和的环境光 (#B3AF91)。

- 设置你的相机 (Camera) 使用正交投影以匹配概念艺术的投影方式。

- 添加一些水。我使用的是来自 Unity 资源商店的 程式化水着色器 (Stylized Water Shader)。

- 最后,设置后期处理 (Post-processing)。我使用的是 ACES 色调映射和 +0.2 的曝光。

就是这样!一个简单但吸引人的场景,在不到一天的时间里就完成了!有疑问吗?想更多地参与进来吗?加入 Hugging Face Discord!
点击这里阅读第 2 部分,我们将使用 AI 进行游戏设计。