给出去的提示词只有一句:「做一个 QQ飞车 3D 网页版。」
拿回来的东西有漂移集气、小喷、双喷、氮气、加速带、起步加速,四条赛道,三种对手水平,七种车身配色。
然后我换了个词,又要了两个:一个《穿越火线》的运输船团队竞技,一个鹈鹕骑单车沿海岸追鱼。
三个页面,一共 2.3 MB,全是单文件 HTML。我按下 F12 数了一遍网络请求:**每个页面只加载了它自己,一次。外部贴图 0 个、字体 0 个、音频文件 0 个、CDN 0 个。**连网页图标都是一段内嵌的 SVG 代码画的。三个页面都由 Claude Opus 5.5 生成,每个只给了一句提示词,中间没有追加修改。
所以这篇文章想回答的不是「AI 能不能写游戏」------那已经不用问了。要问的是:
一句话到底能生成到什么程度,边界卡在哪?
一、先把硬指标摆出来
先放一组可验证的数字,免得后面全是形容词。
| 项目 | QQ飞车 · 同人还原 | 穿越火线 · 运输船 | 鹈鹕骑单车 | | --- | --- | --- | --- | | 提示词 | 1 句 | 1 句 | 1 句 | | 文件体积 | 697 KB | 839 KB | 796 KB | | 页面发出的请求 | 1 次 (就是它自己) | 1 次 | 1 次 | | 可选内容 | 4 赛道 × 2 模式 × 7 配色 | 2 阵营 × 4 枪械 × 3 规模 × 4 难度 | 5 种镜头 + 14 项成就 | | 外部资源 | 0 ------ 没有一张图片、一个字体、一段音频是从外部下载的,全部由代码在运行时算出来 |

这是第一句话换来的界面。左边选赛道(4 条)和模式(竞速 / 道具),右边选车身配色(7 种)、圈数(1/2/3/5)、对手水平(新手 / 熟练 / 车神)和画质(流畅 / 均衡 / 极致)。底部那一整栏是键位表,还原的是端游默认键位:↑ 加速、↓ 刹车、←→ 转向、Shift+方向 漂移、Ctrl 氮气、W 小喷、C 切视角、Esc 暂停。
注意最后一行的「非官方同人作品,致敬 QQ飞车。所有模型、贴图、音乐均为程序实时生成」------这句话是它自己写上去的。
二、第一个:它连「漂移集气」的规则都照抄了
先给个判断:画面是最不难的部分。 难的是规则。3D 场景靠几何体和光照堆,套路很成熟;玩法规则一旦漏一条,玩家三分钟就能感觉出来「不对味」。
所以我打开了控制台,去看它写的状态机。赛车的核心状态不是坐标,是这么几个:
| 状态 | 含义 | | --- | --- | | gauge | 集气条,漂移时增长 | | nitroCount | 已到手的氮气数,上限 2 个 | | smallWindow | 松手瞬间的「小喷完美窗口」,越早点中越好 | | startBoost / airborne | 起步加速 / 落地喷的判定 | | boostPad | 路面蓝色箭头的加速带 |
把端游的规则链摆出来对一遍:漂移集气 → 集满拿到 1 个氮气(最多 2 个)→ 松开 Shift、车身回正的瞬间点一下 ↑ 触发小喷(越早越好,判定成功会显示「完美」)→ 小喷和氮气叠在一起就是「双喷」→ 倒计时「GO」出现的瞬间按 ↑ 起步加速 → 跳台落地瞬间点 ↑ 触发落地喷。
这条链上一个环节都没漏。 而且它是主动写进页面里的说明文案------不是我看代码猜的。
更花心思的是赛道。四条赛道不是手工摆的,是同一条样条曲线(Catmull-Rom)在各处采样出来的:1570 个采样点、总长 2355 个单位,每个点除了坐标还带曲率、倾角、银行角和「是否桥梁」标记。法老金字塔那座跨沙漠的桥、雪地的 8 字立交,都是从这串标记里长出来的。

四条赛道:11城(经典竞速 · 11 个弯道)、情迷爱琴海(山城爬坡 · 连续发卡弯)、法老金字塔(沙漠飞跃 · 神殿隧道)、雪地大冒险(8 字立交 · 冰雪隧道)。同一套几何代码,靠天空、地面、雾和光照参数拉开四种完全不同的气质------括注里的赛道描述也是它自己写的。

按 C 切到近景镜头。右侧仪表盘是时速表,左下角是集气条和两个氮气槽,左上角是实时排名------HUD 布局是它自己设计的,没人给过参考图。
三、第二个:不是「射击游戏的样子」,是骨架
我原本以为第二个会明显弱一档。射击游戏的系统复杂度比竞速高一个量级,一句话要同时交代枪械、弹道、AI、地图、经济------很容易只做出一层皮。
打开菜单我先看到选项排了一整屏:阵营(潜伏者 Black List / 保卫者 Global Risk)、主武器(AK-47 / M4A1 / AWM / MP5)、规模(4v4 / 6v6 / 8v8)、目标击杀(30 / 50 / 100)、电脑难度(简单 / 普通 / 困难 / 地狱)、时间(白天 / 黄昏)、画质、灵敏度、FOV、音量。

左侧是场景设定:联合国维和行动发现一艘从俄罗斯驶往尼日利亚的可疑货轮,保卫者奉命登船突击,却遭到潜伏者伏击。下面一栏是地图结构说明和完整键位表------WASD 移动、Shift 静步、空格跳、C 蹲,1/2/3/4 切主武器/手枪/刀/手雷,Q 快切、R 换弹、F 检视武器、B 换主武器、Tab 计分板。
进游戏之后我按 Esc 暂停,把源码和运行时状态对着列了一遍:
| 系统 | 实际做出来的东西 | | --- | --- | | 枪械 | 4 把主武器 + 手枪 / 刀 / 手雷四槽位,切枪、快切、换弹、检视武器、狙击右键开镜 | | 弹道 | 射线命中判定、后坐力抬枪(准星会飘)、弹道扩散、射击间隔 | | 移动 | 走 / 静步 / 跳 / 蹲,落地有落地速度处理,走路有镜头晃动 | | 生死 | 血量 / 护甲 / 出生保护 0.6 秒 (开火即解除)/ 复活倒计时 | | 信息 | 雷达小地图、Tab 计分板、击杀播报、连杀统计 | | 地图 | 甲板 90×30 单位,船头船尾双出生点,中路 V 形斜放集装箱、两侧 L 形箱堆,两条单向管道,管道顶可架枪的二楼 | | AI | 6 个电脑对手,分四档难度,会走位、会对枪 |

出生点第一人称。左上角雷达、顶部 50 击杀团队比分与倒计时、右下角武器栏(AK-47,30/90)、画面中心准星------这整套 HUD 的排版是它自己决定的。注意弹药箱上写着「AMMO 7.62」,箱体侧面还有易碎货物标识。

中路。画面里能看到对面 Black List 的两名电脑队员正在过点------他们的头盔、护甲配色和阵营标识都是分离的模型部件。集装箱上印的 LENSVELD、NORDSTAR、OCEAN STAR 是它编的船公司名字。
我特意回头对了一遍菜单里那段场景设定和实际生成的地图:「船头船尾两个船舱出生,中路 V 形斜放集装箱、两侧 L 形箱堆,左右各有一条只能从己方出生点进入的集装箱管道,管道顶上就是可以架枪的二楼」。
文字描述和跑起来的场景是对得上的。这一点比画得像不像重要得多------它说明这不是「看起来像射击游戏」,而是真的按一张地图设计图盖出来的。

贴着箱堆走下甲板。右上角是刚刚的一次多杀播报。同一场景在纯软件渲染下还能跑到 10 FPS(左上角有帧率),这已经是三个页面里性能最好的一个。
四、第三个:把「好看」也交出去了
前两个是「把别人的玩法抄准」,第三个反过来:没有 IP 可以对照,全部从零开始。
一只戴头盔、围着红围巾的白鹈鹕,骑着复古单车沿海岸线追鱼。

标题页最值得看的是中间那两行小字:「黄昏、星空、海浪与路灯 ------ 全部实时生成,无一张外部贴图」,以及它列出的技术清单:程序化建模 / 双骨骼 IK 踩踏 / Verlet 布料围巾 / Gerstner 海浪 / 昼夜循环 / 合成音效 + 生成式音乐 / 抓鱼小游戏。
我在源码里逐条核过这份清单,不是宣传语:
| 它说 | 实际写的是什么 | | --- | --- | | 双骨骼 IK 踩踏 | 腿不是播动画,是根据脚踏板实时位置反解关节角度 | | Verlet 布料围巾 | 围巾是一串质点 + 距离约束,被前进速度吹起来 | | Gerstner 海浪 | 海面不是贴图滚动,是波形叠加,所以有真正的波峰和泡沫 | | 合成音效 | 铃声、叫声、海浪声都是现场算出来的波形,没有音频文件 |

五种镜头里我留了四种。左上「自由环绕」、右上「追随」、左下「侧面跟拍」、右下「电影运镜」------注意右下那张镜头压低、景深浅、太阳压在海平面上,这是它自己拆出来的运镜逻辑,对应页面顶部那个「电影运镜」按钮。
昼夜循环是我最喜欢的部分。画面右下角挂了个时钟,从 17:21 开始走,按一下 N 快进 3 小时。

按两下 N,时间来到 23:39。同一段路、同一辆车,光源全部来自程序:月亮、星星、路灯、车尾灯。注意车尾那盏红色尾灯在路面上投出的光斑。

按 U 把界面藏起来,就是一张能直接当壁纸的图。海面那些细小的白点不是噪点,是波形在近岸翻起的泡沫。
五、真正的结论:能到哪,卡在哪
三句话换三个能玩的东西之后,我的判断是:
它能给的,是「有明确约定的东西」------玩法规则、状态机、HUD 排版、程序化美术、音效合成。这些都有公开的约定可以照:QQ飞车的小喷判定有几个帧、CS 的出生保护是几秒、海浪用 Gerstner 还是 FFT,网上都查得到,写起来就有据可依。
它还差三步:性能预算、设备边界、手感调校。 我实测踩到的三个坑,正好一一对应------
坑一,性能没有预算。 我用软件渲染跑这三个页面,全 3D 的 QQ飞车只有 1 FPS 出头,场景可控的运输船能到 10 FPS。同一批代码,换一个渲染环境就差出十倍------它写的时候没有为最差的设备留余量,也没有降级策略。
坑二,边界处理是缺的。 运输船靠鼠标锁定来转视角,一旦浏览器不给指针锁(比如被我自动化接管时),画面正常但没法瞄准。真实浏览器里没问题,可这种「只在理想路径下能跑」的代码,上线前一律要返工。
坑三,没有留调试口。 我想把赛车挪到赛道中段取景,直接改坐标会被物理每帧覆盖回起点------因为它的权威状态是「赛道弧长 + 横向偏移」,不是世界坐标。这套设计本身是自洽的(值得表扬),但一个连调试入口都没留的程序,后续想改要花的力气,比从头写还多。
一句话能生成一个能玩的 3D 游戏,意义不在于「程序员要失业了」,而在于:做原型变便宜了。
以前验证一个玩法想法,要美术、要引擎、要一周。现在你需要的,是把想法说清楚的能力,加上一点耐心去看它卡在哪一步。
六、你今天能做的三件事
第一,先自己玩五分钟。 三个链接放在文末,手机能开,但键盘才玩得动------赛车那作没有键盘基本没法漂移。
第二,如果要自己试,把提示词写具体。 这三个页面的提示词之所以能成,是因为它们都把「品类 + 视角 + 规则 + 键位」说清楚了。只说「做个好看的游戏」,你大概率会得到一个转不动的方块。
第三,评估同类作品时,先看两个地方。 一是 F12 里的网络请求数(0 外部依赖说明它真的把资源都算出来了,而不是借别人的图);二是不看画面先玩五分钟(能跑起来不稀奇,规则不塌才稀奇)。
三个页面的地址:
QQ飞车 · 同人还原
lf3-static.bytednsdoc.com/obj/eden-cn...
穿越火线 · 运输船
lf3-static.bytednsdoc.com/obj/eden-cn...
鹈鹕骑单车
lf3-static.bytednsdoc.com/obj/eden-cn...
公众号正文里的外部链接点不动,长按也难复制------在后台回复关键词「一句话」,我给你一份可以直接打开的地址清单(顺手把三个页面的键位也整理进去了)。
三个页面都是个人同人作品,跟游戏厂商没有任何关系,模型、贴图、音乐全部由代码实时生成。
**最后留个问题:**如果现在给你一句话的额度,你最想让 AI 帮你做出哪个东西?一个能跑的老游戏复刻、一个内部工具的可视化界面,还是一个你说了三年都没动手的小产品?
评论区聊聊,我会挑几个真的去测,下期就是它的实测报告。