周三晚上,一个程序员把超人、雷神、悟空、鸣人全扔进了浏览器。没有预设台词,没有剧本,两位角色一上来就互相嘲讽,语气一个深沉如黑胶唱片,一个尖锐得像莎剧演员。最古怪的是,屏幕底部有一道流动的光,会跟着他们每一句狠话的节奏起伏变形——像吵架声有了形状。
这个叫 Fandom Fire 的项目,本质是一套跑在浏览器里的实时吐槽对战引擎。你任意选两个虚构角色,它当场生成原创对骂台词,合成出截然不同的角色嗓音,还顺手在 GPU 上播出一片音频反应流体视觉。三个 AI 模块首尾相接,一件后端都不需要。
核心流水线分三层。点击“启动战斗引擎”后,浏览器把两个角色的名字塞进 Google Gemini 模型,交替生成攻击性台词——每句都是即兴创作,没有模板,所以同一组对手可以打出完全不同的嘴仗。紧接着,ElevenLabs 语音引擎入场,把 Fighter A 的声音调成厚重、带压迫感的低频,Fighter B 则套上一种锋利的英式戏剧腔,两条声轨分开渲染。
真正把算力榨出视觉花样的,是第三层:一段跑在 GPU 上的自定义 GLSL 片元着色器。它不画传统的 2D 卡片或轨道线框,而是用全视口屏幕空间直接推出一片流体波。波的颜色左右分明——左边天蓝 (#022aff) 归属左方角色,右边玫瑰红 (#f50d6b) 给右方,中间用靛紫渐变融合。波形的底部变形依赖多倍频的 simplex/value 噪声,并把浏览器音频 API 提取的实时贝斯频率作为驱动力,让每一次低沉的重音都掀起一场小型颜色风暴。
换个角度看,这也是两套认知在对抗:一方相信 AI 语音能给虚构角色注入可信的临场感,让它吐出的话不再是文字气泡,而是带有情绪重量的音色事件;另一方会怀疑,用 Gemini 这种轻量模型生成的吐槽是否只能停在“看起来像那么回事”的套路层。有趣的是,引擎本身只用三个文件就撑起了全部体验——index.html、style.css、app.js,再加一个 Python 静态服务器。没有 npm,没有构建步骤,把浏览器原生 API 压到了极致。这种极简主义反过来又在为“前端能做什么”这个话题提供了新弹药。
无论你觉得这玩意是无聊的粉丝玩具,还是未来互动叙事的一块积木,有一件事没法否认:当两个虚构角色的骂战在 GPU 上激出一片随性流淌的靛紫色光波时,机器和人类之间的边界,确实又模糊了一点点。
热门跟贴