Hugging Face 教程:用 AI 在 5 天内开发农场游戏(第一篇,美术风格)
AI for Game Development: Creating a Farming Game in 5 Days. Part 1
Hugging Face 发布系列教程第一篇,讲解如何用 Stable Diffusion 为 Unity 农场游戏确定美术风格。文章涵盖用 Automatic1111 WebUI 本地部署或在线运行的方法、借助 lexica.art 优化提示词的技巧,以及用概念图指导 Unity 场景搭建、材质、灯光和后期处理的完整流程。
系列第一篇给出用 Stable Diffusion 生成美术概念图并落地到 Unity 场景的完整步骤,方法可直接迁移到游戏开发流程。
欢迎来到 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 系统,并且拥有至少 8 GB 显存的 Nvidia GPU,请继续按照以下说明操作。否则,您可以在GitHub 仓库 README中找到其他平台的说明,或者选择在线解决方案。
Windows 安装:
要求:至少 8 GB 显存的 Nvidia GPU。
- 安装 Python 3.10.6。安装时务必勾选“Add Python to 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 上的许多空间,例如 Stable Diffusion 2.1 演示或 camemduru webui。您可以在此处找到其他在线服务的列表。您甚至可以使用 🤗 Diffusers 编写自己的免费解决方案!您可以在此处找到入门用的简单代码示例。
注意: 本系列的部分内容将使用图像到图像等高级功能,这些功能可能并非所有在线服务都提供。
生成概念艺术
让我们生成一些概念艺术。步骤很简单:
- 输入您想要的内容。
- 点击生成。
但是,你如何获得你真正想要的结果呢?提示词本身就可以是一门艺术,所以如果你生成的第一批图像不太理想,也没关系。有很多很棒的资源可以帮助你改进提示词。我制作了一个关于这个主题的20 秒视频。你也可以找到这份更详尽的书面指南。
这些资源的共同重点是利用诸如 lexica.art 之类的来源,看看别人用 Stable Diffusion 生成了什么。寻找与你想要的风格相似的图像,并从中获得灵感。这里没有对错之分,但在使用 Stable Diffusion 1.5 生成概念艺术时,以下是一些提示:
- 用诸如 等距、简单、实体形状 之类的词来约束输出的形式。这会生成更容易在游戏中复现的风格。
- 有些关键词,比如 低多边形,虽然切题,但往往会产生质量较低的结果。尝试寻找不会降低结果质量的替代关键词。
- 使用特定艺术家的名字是一种强大的方式,可以引导模型走向特定风格并获得更高质量的结果。
我最终确定了提示词:河畔农场的等距渲染,简单,实体形状,james gilleard,atey ghailan。结果如下:
将其带入 Unity
现在,我们如何将这幅概念艺术变成一款游戏?我们将使用 Unity,一款流行的游戏引擎,来让我们的游戏栩栩如生。
- 使用 Unity 2021.9.3f1 和 通用渲染管线 创建一个 Unity 项目。
- 使用基本形状搭建场景。例如,要添加一个立方体,右键单击 -> 3D 对象 -> 立方体。
- 以概念艺术为参考,设置你的材质。我使用的是基本的内置材质。
- 设置你的光照。我使用的是暖色阳光(#FFE08C,强度 1.25)和柔和的环境光(#B3AF91)。
- 设置你的摄像机,使用正交投影,以匹配概念艺术的投影。
- 添加一些水。我使用的是 Unity 资源商店中的 Stylized Water Shader。
- 最后,设置后期处理。我使用的是 ACES 色调映射和 +0.2 曝光。
就是这样!一个简单但吸引人的场景,不到一天就完成了!有疑问?想更多地参与?加入 Hugging Face Discord!
点击这里阅读第 2 部分,我们在其中将AI 用于游戏设计。
来源:Hugging Face:Blog · huggingface.co