打开网易新闻 查看精彩图片

3 天 3 夜,我和 AI 一起把《清明上河图》的网页demo ,变成了有剧情动画、有互动NPC、有收集任务的3D游戏!

上一篇我们用 GPT-6 Astra 加上 Blender,把静态的清明上河图虹桥场景,做成了 3D 版的画卷,可以在里面游历、划船,了解北宋的民俗风物。这个 Demo 出来以后,很多人都被惊艳到了,但是我知道它还只是一个 Demo,Blender做的东西细节也比较差,它距离一个可以玩的游戏差距还很远。

(上版的《清明上河图》3D版 demo)

所以在Demo 做出来之后,我一直在思考:怎么才能让这幅3D 版的《清明上河图》更加鲜活起来?后来,在看了大量关于《清明上河图》的历史文献和评价之后,我想明白了。

北宋著名画家张择端的《清明上河图》之所以流传至今,不仅是因为画卷长达 5.28 米、保存完整。

打开网易新闻 查看精彩图片

还有他画里鲜活的人物,画里的老老少少,包括每一个人物的形态、动作、身份都不一样。

仔细看,你能从人物的背后看出他们的身份故事,看出那个时代的民俗特色,这才是这幅画带给后人最大的价值。比如,如果你仔细看的话,你会发现在虹桥场景里,竟然有个“外卖小哥”的角色。在脚店(宋代酒馆)的门口,有个伙计,一手端着碗、一手拿筷子。

打开网易新闻 查看精彩图片

(游戏里脚店的“外卖小哥”)

据宋代史料《东京梦华录》记载:市井酒楼客人可派人点饭菜,店家派人送食到住宅、摊位,吃完结账。这真的很像我们这个时代的“外卖小哥”!这部分也被我更新到了游戏里。

01

TRIPO

高效出模,AI 3D界顶模 Tripo 到底强在哪?

那怎么才能把 3D 建模的人物,刻画得更加逼真呢?

如果还是用 GPT-6 Astra + Blender,这条路显然是行不通的,生成3D人物和物体等连续曲面,对于Blender来说还是有点强人所难。

在某第三方独立机构的盲评榜单(超20万用户投票)上,我发现游戏领域的低多边形 3D模型,排名前二的全是 Tripo 的模型,这让我发现了新大陆!

打开网易新闻 查看精彩图片

仔细研究后发现, Tripo 是 3D 基座模型,可以直接把文字或者图片变成生产级的 3D 资产,用来生成游戏场景中的角色、怪物、道具,刚刚好。通过 AI 调用 Tripo 工具,然后在 Three.js 或者利用 Unity 里进行组装,就可以变成可玩的游戏。

使用过程中,我发现 Tripo 加 GPT-6 Astra 在 3D 人物建模上,才是真正王炸的存在。

有网友评价说, Tripo 最近新发布的P2.0生成的网格模型,看起来像是出自专业 3D 艺术家之手。

打开网易新闻 查看精彩图片

生成的速度也让人震惊,使用最新模型 P2.0 ,秒级完成一个人物的建模。

话不多说,我直接实测下Tripo 在人物建模上的能力。使用拓扑四边面更适合构建游戏人物,三角面则更适合细节的呈现,面数越小,加载速度越快。

打开网易新闻 查看精彩图片

这里我在Tripo Studio里,丢进一张《山海经》里二维的九尾狐图,看它实现的效果。

打开网易新闻 查看精彩图片

最终制作出来的 3D 作品,在配色、神态、毛发的细节,刻画得都非常到位!

打开网易新闻 查看精彩图片

除了在AI 3D工作台Tripo Studio 直接生成外,用 AI 调用 Tripo 还有三种方式。 第一种是走 API 接口,官方最推荐,接入非常简单。

打开网易新闻 查看精彩图片

API 接入方式也非常简单,直接把下面这段话发给 Agent,就可以完成安装。安装完成之后,会打开一个页面。

请帮我安装并配置 Tripo CLI:`npm install -g tripo-cli`

需要填写 AI 发给你的授权码。这个填写完成之后,GPT-6 Astra 和 Tripo 之间的链接就建立了,你就可以随时调用 Tripo。

第二种是通过 CLI 调用,这个方法最快捷,就是对于普通玩家来说有门槛。

第三种是更简单的方式,Tripo 插件已经完全适配 Codex 了,直接在插件市场里就能找到。这个插件走的也是 Tripo 的 API 接口,AI 使用起来更方便。

打开网易新闻 查看精彩图片

接入Tripo 以后,我在Codex 里提供了一张参考图,直接发出了一句指令,“使用Tripo API 生成3D模型,最高质量,调用P2.0模型”,用时 8 分钟,消耗了 130 积分,它就交付了一个包含 56741 个三角面的GLB模型。

打开网易新闻 查看精彩图片

使用Tripo 的API还能直接完成自动分件,如果大家需要去 3D打印店里打印潮玩手办,对于这种复杂的人物手办来说,这个步骤是必不可少的。(自动分件,消耗 40 积分)

打开网易新闻 查看精彩图片

02

WORKFLOW

把Demo 变成真游戏:让角色动起来、让故事跑起来

而关于清明上河图这个大工程,我没有立即开始,而是和AI讨论了一下具体的执行方案。

和AI交流的过程中,我逐渐明白了为啥没有用Tripo 前生成的人物都翻车了。

因为我们用 GPT-6 Astra + Blender 生成的 3D 人物,只是一个静态的 3D 模型,要想让它真正像个人一样动起来,需要两个关键步骤——绑骨和 idle。

绑骨,顾名思义,就是给人物内部架一副骨骼,没有骨骼的人物就像市面上的布娃娃,有了骨骼才能产生动作。传统做法要在 Blender 里手动建骨骼、刷权重,一个角色几小时。Tripo 把它做成了一键就能实现的功能。

而 idle 则是待机动画,角色没有被操作时,不能让它一直杵着不动,而是要让它具有走路、跑步、跳的动作。这个在Tripo 预置的动作库里也有现成的 idle ,不用自己再做一遍。

如何把这个《清明上河图》demo 做成一个真正可以玩的游戏?需要有碰撞和动画,需要有人物之间的交互,还需要加点剧情和任务,基于此,Codex 给我提供了一套完整的方案。

打开网易新闻 查看精彩图片

在这个过程中,我主要的工作流程是——GPT-6 Astra 作为总指挥,用 Tripo 生成人物、道具的 3D 模型,导出的 GLB 资产可以在 Blender 中再加工(Tripo 生成的人物成功率在 80% 以上,基本不用再导入 Blender),然后用 Three.js 搭游戏场景。界面部分还采用了 frontend-design 技能。

打开网易新闻 查看精彩图片

工具在什么情况下调用,每一步骤具体执行的提示词是什么,全部在方案中写清楚。

打开网易新闻 查看精彩图片

03

GAMEPLAY

剧情与玩法:虹桥急情、任务与人物志

关于剧情,我把原画中的虹桥场景中最经典的桥段——虹桥急情,用动画的形式还原了出来。

动画用的是 Three.js 实时渲染的 3D 演出。你看到的船、人物、虹桥都在游戏场景里,由代码按时间控制动作和镜头。配音使用的是豆包Seed-TTS 2.0模型生成,角色的情绪、重音、停顿、拖音都能表现出来。

打开网易新闻 查看精彩图片

(清明上河图原画中的《虹桥急情》)

动画作为一个剧情开头的引子,我希望通过人物的自主探索,把整个故事串联起来。

主人公是一个书生,初入汴京。他要在船工的帮助下寻找3件道具。

打开网易新闻 查看精彩图片

在找道具的过程中,他可以和人物对话,了解他们的故事。

游戏里最有意思的就是遇见各种人物,别看只有一个虹桥场景,这个场景里包含了 45 个人物,在上个AI +Blender生成的版本里,人物还只能做到像个木偶一样,只有人物模型架子,没有任何形象特色。这个版本里,Tripo 已经把路边的每个行人都刻画得栩栩如生了。

打开网易新闻 查看精彩图片

我们做的《清明上河图》AI 3D 游戏,主线任务是在虹桥场景里找齐 3 件道具,完成后就能解锁 4 位人物完整的故事。

打开网易新闻 查看精彩图片

主线之外,游戏中还隐藏着 5 个随机偶遇,会解锁对应的人物志——有熟稔市井门道的牙人、常年行船谋生的船工老周、饱尝搬运辛苦的搬粮人何伯、走街串巷叫卖的货郎、守着手艺活的竹匠。遇到他们,又会解锁一段奇妙的故事。

打开网易新闻 查看精彩图片

而解锁的人物故事大多来源于古籍《东京梦华录》、沈括《梦溪笔谈·补笔谈》等,在原著故事的基础上进行改编,通过故事让人物更丰满起来。

为了更有沉浸感,人物每走到一个地方就会变换音效,我一共做了 11 个背景音、15 个人物配音。你能听到卖花女的叫卖声,也能听到酒馆老板的吆喝声,茶馆老板的邀请声。

这是不是已经像是一个《清明上河图》的元宇宙了。

04

PRODUCTION

跑对流水线:45 个角色、9 个步骤轻松量产

实际上,《清明上河图》中共有800多个人物,如果全部生成的话消耗积分太大,制作时间太长,所以这一次我们归类出45个人物。

但如何让这些人物,制作出上文视频中的“鲜活”,其中的制作过程也有些窍门。

要知道这45个人物来自于不同的职业,既有年轻貌美的卖花姑娘,也有举着“神课”牌匾的算命先生。(“神课”是古代的一种占卜方式),不同人物特点要突出显示。

我们先用Seedream5.0模型生成人物的平面三视图。再用GPT6调用 Tripo 的图生图能力,生成可放入游戏的3D人物(GLB格式)。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

这款3D 游戏中的主人公,是一位书生,身着青灰长衫,背着一箱书卷。

我们用 GPT-6 Astra 操纵 Tripo 的 API,先生成了这名书生的 3D 视图。

生成的第一版,存在前后背包穿模问题,修正后生成了第二版,然后自动绑骨生成待机与行走动作,总共消耗 125 个积分。

然后把这个人物的整个生成过程打包成一个skill,作为生成人物的3D配方。后面的44个人物全部复用这个skill来操作,速度就会快很多。

打开网易新闻 查看精彩图片

下图统计的数据可以看到,每个环节消耗的 Tripo 积分并不是很多。

打开网易新闻 查看精彩图片

Tripo还有个特殊能力,它自带了动画重定向的能力,可以在对一个模型生成完带骨骼和动画动作之后,迁移到其他的人物模型上。这对于批量生成《清明上河图》的一些市井小人物非常关键,进一步节省积分和制作周期。

还有一个技巧,就是拆解进程。我们如果把45 个人物全在一个进程中生成,AI就会一个个生成,每生成完一个拼到游戏里检查一次,很耗费时间。但要是把它拆解成 5 个进程,每个进程完成约10 个人物,再把 5 个进程同时开启,分批次验收,再把生成的所有GLB资产一起合并进游戏,效率就提升了不少。

打开网易新闻 查看精彩图片

一早起来,五个批次全部生成完成,GPT-6 Astra 把每个批次都交付给了一个 html 报告,哪个角色生成的有问题,一目了然。

打开网易新闻 查看精彩图片

还能看到每个人物生成的 idle动作,从不同角度查看人物生成是否有缺陷。通常情况下,手部是最容易出问题的。其他位置出错,基本上模型会自己发现,再重新生成一次。

打开网易新闻 查看精彩图片

同时,后续方案中的9 个步骤,我也是这样操作的,写一个项目的Agent.md,然后多开进程,每个进程输入一个提示词后再执行。

打开网易新闻 查看精彩图片

除了游戏人物,道具资产也是Tripo 帮我生成的,剧情里提到的三个关键道具——护货布、缆绳、长竹篙。

以及店铺门口的酒、蒸笼、船上的货物,原来Blender生成的都太像个几何体了,Tripo 修正后越来越接近现实原貌了。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

(Tripo 生成的道具)

到这里,从人物到道具,游戏里的每一块都齐了。

最后放一段最终的通关完整视频 —— 从书生踏进汴京那一刻起,剧情、任务、偶遇、配音全部串在一起。看完你就明白,为什么我说这幅 3D 版的《清明上河图》,是真的 "活" 了。

写到这,我想坦诚地告诉你们,对于 3D 建模,我是一个完全零基础的小白。但我用 AI 把清明上河图一点点做成了我想象中的3D 互动游戏样子,不知道游戏圈和 3D 圈的大佬们看到会怎么想。

在写上一篇文章时,因为我在人物细节的处理上还不到位,今天用 Tripo 做完人物建模后,真的要感叹,非专业创作者,也能低门槛自由地进行 3D 内容创作,放大你的3D想象力。