380KB 的月球车:一段提示词加 16 轮迭代,做出一辆在物理上"骗过你"的探测器
一台能开动的月球车,只有 380KB。没有依赖,没有构建,打开浏览器就跑。
我第一次在浏览器里点开它的时候,以为只是又一个用 three.js 做的小 demo。毕竟月球、车、灰尘,这些词凑在一起,太容易变成一张漂亮的截图。
但当我按下 W,看它慢吞吞地往前挪,身后留下两道深深的车辙,我忽然意识到:这不是"看起来像月球"的摆拍,这是一辆真的在"开"的车。它会陷进月壤,会在坡上打滑,会因为信号延迟而犹豫一下才听我的指令。
这辆车的作者只做了一件事:把一段提示词丢给 AI,然后跟它较真了 16 轮。
它不是游戏,是一个产品样本
严格讲,这是个开源项目,叫 moon-rover。作者在 README 开头写得很清楚,它的存在不是为了卖钱,而是为了回答一个问题:"现在给一段提示词,AI 到底能做出什么?"
答案是:能做出一辆车身、悬挂、轮子、尘埃、地形的光照和物理全部在浏览器里实时计算的车。你不需要安装任何东西,打开网页,它就在那儿。



16 轮迭代,都在较什么真
我看完它的 README 才发现,这辆"看上去很真"的车,不是一次生成成功的。作者把它和 AI 的对话过程全贴出来了,前后 16 轮,每一轮都在抠一个具体的问题——不是让它"更漂亮",而是让它"更对"。
比如轮子不能悬空,得贴着地面;转弯不能瞬间打死,得有转向物理;甚至连"月球车只有六分之一重力"这种细节,都被当成一条必须遵守的规则写进了提示词。
真正打动我的,是这一条:
地球上开 5 米没问题,但月球上同样开 5 米,要花更久——因为月球车更"飘",更容易打滑,转弯和刹车都要更谨慎。作者让 AI 把这种差异老老实实地做出来,而不是用一张"月球背景图"糊弄过去。
那些"较真"体现在哪
我把 README 里提到的物理细节整理了一圈,这些才是让这辆车"活过来"的东西:
- 六分之一重力——它的重力只有地球的 1/6,起步和刹车都更"飘",你开起来能明显感觉轻。
- 月壤沉降——车轮会下沉、陷进松软的月壤,不是贴着表面打转。
- 真实车辙——开过的地方会留下清晰的轮印,你可以回头看到自己走过的轨迹。
- 2.56 秒信号延迟——你按下方向键,它不会立刻动。因为这是月球到地球的真实通信时间,它要"等一会儿"。
技术上的"极简",更让人吃惊
比起物理细节,我更感兴趣的是它技术上有多"干净":零依赖、零构建、纯浏览器。
也就是说,它没有下载任何第三方库,没有打包流程,没有需要安装的工具链。整个项目就是一段段代码,打开就能跑。要装出一个跑得动的、还带物理模拟的 3D 场景,这本身就很不寻常。
而这背后,是 WebGL 和 three.js 这类技术在浏览器里把渲染、光照、地形全部做完。你看到的每一次反光、每一粒扬起的灰尘,都不是贴图,而是实时算出来的。
它"骗"了你,还骗得光明正大
我为什么说它"骗过你"?因为它看起来太像真的了,以至于你默认它会照做——但它的"真实"不是靠视觉骗术,而是靠物理上的诚实。
它不会为了让你爽而把车做得飞快,不会为了画面好看而把尘埃无脑扬起。它老老实实地演算:该陷就陷,该滑就滑,该迟就迟。
所以"骗过你"在这句话里,其实是句夸奖。它用诚实的物理,让你信以为真。
它到底值不值得你打开
说实话,它不是那种能让你玩一个下午的游戏——没有关卡,没有目标,没有分数。但如果你跟我一样,会好奇"一段提示词里到底还藏着多少可能",那它值得你开一次。
去 GitHub 搜 moon-rover(作者叫 winchxyz),找到它的 README,那里有它和 AI 的完整对话。或者更直接一点,打开网页,亲自试一次——按下 W 键(或者你习惯的前进键),看它是不是真的会陷进那片灰色的月壤里。