跳到主要内容
一个公园变成湖泊之后

一个公园变成湖泊之后

今天也没搞懂
今天也没搞懂

· 阅读约 4 分钟

今天刷到别人分享的一个沙盘项目,叫 Isopolis。一张旧金山的等距像素地图,用 Google 的 3D Tiles 数据、AI 生成图素材、three.js 渲染出来的,项目方把搭建过程记录下来放到 dev.html 里供人围观。有人说像《模拟城市 2000》,挺贴切的。但让我停下来想了快一个小时的,其实是一个特别小的琐碎问题:那张地图上,很多公园被画成了湖泊。

AI 把卫星影像里的绿地(公园)识别成水体(湖),于是旧金山多出了一堆"湖"。我在评论区看到有人翻出来聊,作者的回复大意是"目前水域是已知问题,得靠人工筛选修正,数据量太大了,没办法一张张盯"。这个细节比地图本身还让我觉得真实。

倒不是说我能写出不会犯这种错误的东西。在我自己课上交的、大概只有五个人看过的"作品"里,同类错误我犯了没数遍。有一次我半天没查到什么,最后发现是 prompt 里把公园和草地写进同一个语义区块,模型直接按"绿地=可覆盖地形"处理了。当时我也觉得是模型的问题,把它写成"模型不理解语境"甩锅掉。然后我把图缩到足够小,那个错误的绿地根本看不出来——跟 Isopolis 公园变湖泊的性质一模一样:看起来不违和,因为整体风格是夸张化的,你第一眼会觉得"哦水挺多"。但错就是错。

我现在的同桌是 Claude Code,每天陪我写东西和敲代码。我经常让它批量生成一批图像素材或者文案放到项目里,它出一个就自动审核掉一个,我还专门开发过一个小工具来批量挑图。刚看 isopolis 的那个 dev.html 时,第一段我几乎以为在看我自己的笔记——它把"哪些图是 AI 生成的、哪些是我手动修正的、哪些我知道有问题但先放着"全都列出来了。这个诚实程度不算高,但比大多数作品页坦诚。

但人家处理这种已知问题的方式比我体面多了。他们开了 dev.html 这个"开窗",把错误放出来承认。哪怕就一行:"这是已知的,下次会改。"我盯着这句话想了一下自己最近的产出:我有好几个项目连"已知问题"清单都没敢写。因为写了,等于承认自己放进去的东西有一部分无法自圆其说……但你真的做过一把这种项目就知道,AI 生成的东西必须允许自己犯这种错误,你才有空间做更大结构的组装。

我记得评论区有个人说"This is not pixel art"。字面意思就是这个生成风格太光滑,跟手工像素的颗粒感差太多。我也认真地产生过这种洁癖:AI 生成的东西太"圆"了,没有手工像素的顿挫感。但它同时又画出了很漂亮的树、很漂亮的街道,我现在开始觉得这个洁癖是我自己给自己的限制。

因为重点是:当你用 AI 作为生产工具时,你控制的不再是画质本身,变成控制别的东西——比如如何让一个公园在生成出来的时候不被识别成水,比如如何在几百张生成的图里筛出没有错误的那张,比如如何在发现错误之后依然让整个地图继续推进。Isopolis 的地图作者显然是理解这一点的:他花了相当篇幅记录的并不是"怎么画像素画"或"怎么让画面华丽",而是"怎么让生成图筛选流程变得不那么让人崩溃"——用 Claude Code 写抓取,用 Nano Banana 生成风格图,用 Codex 搭辅助审片工具,然后发现问题、记录问题、继续做。

要挑刺还不简单?有人问为什么没有高程、都是平的。作者答:因为要做的是《模拟城市 2000》那种平面地图的"感觉",而不是最新 Google Earth 的实景。我觉得这个回答挺硬的:接受你的工具和人家的工具本来就是两种东西,并不丢人。

我还在写东西的时候,其实有很长一阵子不敢用"像素"这样的词。因为我不确定我有没有资格说自己在做像素作品。但看完这个项目的 dev.html,我倒觉得资格不是写出来的,是像他这样,把地图画出来,然后承认公园变湖了,但继续画下去,才慢慢长出来的。我学不明白的东西还有很多。但我至少可以确定一件事:我写的东西如果有一天能有五百个人看,我也得敢开一个 dev.html 那样的页面,写明哪里是我生成的、哪里我改乱了。

评论

还没有评论,写下第一条讨论。