返回文章列表
使用AI开发游戏:5天制作一个农场游戏。第一部分
发布于 2023年1月2日
在 GitHub 上更新
赞2
Dylan Ebert
dylanebert
关注
第一天:美术风格
设置 Stable Diffusion
生成概念艺术
导入 Unity
欢迎来到 AI for Game Development! 在本系列中,我们将使用 AI 工具在短短 5 天内创建一个功能齐全的农场游戏。在本系列结束时,您将了解如何将各种 AI 工具融入您的游戏开发工作流程。我将向您展示如何使用 AI 工具进行
美术风格
游戏设计
3D 资源
2D 资源
故事情节
想要快速视频版本?你可以在 这里观看。否则,如果你想要技术细节,请继续阅读!
注意:本教程是为熟悉 Unity 开发和 C# 的读者准备的。如果你是这些技术的新手,请在继续之前查看 Unity 入门系列。
第一天:美术风格
在我们游戏开发过程的第一个步骤是确定美术风格。为了确定我们农场游戏的风格,我们将使用一个名为 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。安装过程中请务必勾选“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 Demo 或 camemduru webui。你可以在 这里找到其他在线服务的列表。你甚至可以使用 🤗 Diffusers 来编写自己的免费解决方案!你可以在 这里找到一个简单的入门代码示例。
注意:本系列的部分内容将使用 image2image 等高级功能,这些功能可能并非在所有在线服务上都可用。
生成概念艺术
让我们生成一些概念艺术。步骤很简单
输入你想要的。
点击生成。
但是,如何得到你真正想要的结果呢?提示本身就可以成为一门艺术,所以如果第一批生成的图像效果不好,也没关系。有很多很棒的资源可以帮助你改进提示。我制作了一个关于这个主题的 20 秒视频。你也可以找到这个更详细的 书面指南。
这些的共同强调点是使用像 lexica.art 这样的来源来查看其他人用 Stable Diffusion 生成的内容。寻找与你想要的风格相似的图像,并从中获得灵感。这里没有对错之分,但这里有一些用 Stable Diffusion 1.5 生成概念艺术的技巧
用等距(isometric)、简单(simple)、实心形状(solid shapes)等词来约束输出的形式。这可以产生更容易在游戏中复现的风格。
一些关键词,如低多边形(low poly),虽然与主题相关,但往往会产生较低质量的结果。尝试找到不影响结果的替代关键词。
使用特定艺术家的名字是引导模型朝特定风格、获得更高质量结果的强大方法。
我最终选择了提示:等距渲染的河边农场,简单,实心形状,James Gilleard,Atey Ghailan。结果如下
导入 Unity
那么,我们如何将这个概念艺术变成游戏呢?我们将使用流行的游戏引擎 Unity 来实现我们的游戏。
使用 Unity 2021.9.3f1 和 通用渲染管线 (Universal Render Pipeline) 创建一个 Unity 项目。
使用基本形状来搭建场景。例如,要添加一个立方体,右键单击 -> 3D 对象 -> 立方体 (Right Click -> 3D Object -> Cube)。
设置你的 材质 (Materials),以概念艺术为参考。我使用的是基本的内置材质。
设置你的 灯光 (Lighting)。我使用的是暖色调的太阳光(#FFE08C,强度 1.25)和柔和的环境光(#B3AF91)。
设置你的 相机 (Camera),使用正交投影以匹配概念艺术的投影。
添加一些水。我使用的是 Unity 资源商店中的 风格化水着色器 (Stylized Water Shader)。
最后,设置 后期处理 (Post-processing)。我使用的是 ACES 色调映射和 +0.2 的曝光度。
就这样!一个简单但吸引人的场景,不到一天就完成了!有疑问吗?想参与更多?加入 Hugging Face Discord!
点击 这里阅读第二部分,我们将使用AI 进行游戏设计。