快来体验!由AI驱动的游戏剧情:
AI Game,Dialogue Game,real-time painting, API, GPT
得益于生成式AI,让我们体验到了实时的游戏。
rui zhang
← 本项目作者
ComfyUI工作流
在 ComfyUI 中构建了一个以中国神话故事"西游记"为主题的交互式实时对话游戏。
你将扮演刚出生的美猴王孙悟空。
GPT 负责剧本编写,SDXL 和 Dall.E3 负责创作插图,MS-TTS 负责提供各种声音的口语对话。经过整个布置和设计的过程,一切都像一幅卷轴画一样呈现在你的眼前。
您可以从 GPT 提供的 4 个选项中进行选择,然后游戏继续展开。您可以自由地改变故事情节,GPT 全程陪伴您,将您的想象力转化为令人惊叹的视觉效果。
整个工作流程是如何实现的?
分为12个模块,每个模块的详细介绍:
1. StoryLine-GPT
该模块利用 MixLab 的 GPT 节点。它负责调用GPT的API,上传写好的Prompt,让GPT完成故事的编写,为玩家提供新的选项。这是游戏的核心。
您可以在"故事提示"中看到设置的提示。它仍然很粗糙,但足以开始游戏,我将继续完善它。
"ShowText"显示从 GPT 返回的文本,该文本将显示给玩家,包括当前情节的简短描述和四个选项。
输出完成后"PlaySound"会发出一声提示音,由于整个过程比较长,这个声音会提醒您故事编写工作已经完成。模块2和模块5中也设置了类似的蜂鸣声。当您听到三声蜂鸣声时,表示新的游戏图像即将出现。
MIiXLab:https: //github.com/shadowcz007/comfyui-mixlab-nodes
要使用此节点,您需要在第一个输入框中输入您的 OpenAI API,您可以从 OpenAI 官方网站获取该 API。在第二个输入框中输入URL:https: //api.openai.com/v1
选择型号:gpt-4-1106-preview
可以填写任意Seed,但更改Seed就意味着以清晰的记忆开始新的对话。
Control_after_generate:选择"固定",以便 GPT 可以记住并继续故事情节。
据我所知,这是ComfyUI中唯一支持此内存功能的GPT节点。其开发者 Shadow 正在快速更新其功能,因此请确保您使用的是最新版本。
2. Prompt-GPT
该模块的功能与模块1完全相同,只是将模块1所写的故事转化为插图绘画提示,以便在SDXL中使用。
3. TTS
使用"MSSpeech_TTS"读取模块1的故事输出。
速率是叙述的速度。该节点将生成的语音保存在ComfyUI文件夹中并输出路径。
"PlaySound At Execution"节点负责 mp3 播放并由 Image 节点触发。
我使用 AnyWhere 来传输图像信息,当最终图像准备好时会触发该信息(您可以在模块 9 中找到它)。
MSSpeech_TTS:https://github.com/chflame163/ComfyUI_MSSpeech_TTS
4. BG-Music
使用相同的"PlaySound At Execution"节点来播放本地音乐。
不幸的是,两个播放节点不能同时工作,当TTS开始朗读故事时,背景音乐就会停止。
我还没有找到其他音频播放节点,所以我建议你直接用播放器播放本地音乐。
Vextra-Nodes:https://github.com/diontimmer/ComfyUI-Vextra-Nodes
5. SDXL
使用模块2的提示输入来绘制游戏图像。
我使用的模型是:
starlightXLAnimated_v2
https://civitai.com/models/143043/starlight-xl-animated
6. Dall.E3
我使用Dall.E3作为绘图模型的替代品,使用"ComfyUI-NegiTools"节点连接到Dall.E3 API。友情提醒:虽然价格昂贵,但效果非常好。
NegiTools:https://github.com/natto-maki/ComfyUI-NegiTools
7. 型号选择
该模块用于在SDXL 和Dall.E3 之间进行选择。
8. WaterMarks
ZHO文本节点用于在图像上写入版权信息。用于计算坐标的节点有很多,但你不需要担心它们。只需使用绿色节点即可。
您可以在"文本"中输入任何您想要显示的文本。
Text_Image-Composite https://github.com/ZHO-ZHO-ZHO/ComfyUI-Text_Image-Composite
9. 文本到图像
模块1输出的故事文本被转换成图像,显示在最终图像的右侧。
这里使用与模块 8 中相同的文本节点。
10. 布局
所有图像都组装在一起。
我创建了一个背景图像,一个中国风格的卷轴。在图像的顶部和底部,我放置了游戏徽标:BG.jpg。
然后我将模块3中绘制的游戏图像粘贴到卷轴的左侧。为了混合图像并自然滚动,我在顶部创建了一个边框蒙版:Mask.png。
最后,将模块9输出的故事文本图像粘贴到图像的右侧。
完成所有集成后,我通过 AnythingAnywhere 输出。
在模块 3 和 12 中,将有节点接收此信息。
这里我使用SaveImage来存储图像,以便使用更简洁的PreViewImage节点来进行最终的显示。
11. 保存文本
模块1输出的所有故事文本将被汇总在这里并存储在ComfyUI的out文件夹中,文件名为日期,格式为"date.txt"。
12.游戏画面
最终呈现给玩家的画面,底部有一个文本输入框,供玩家输入命令。
最初你可以输入:开始游戏
工作流下载地址:
https://openart.ai/workflows/rui400/ai-dialogue-game-journey-to-the-west/a1tZ3PVVh6eP98Onc33h
交流社群: