用 Hi3D Agent 的 Opus5.5 全代码复刻平遥古城
零模型、全代码:我用AI把家乡平遥古城完美复刻出来了
开发者借助 Hi3D Agent 中的 Opus5.5 模型,用全代码方式复刻了家乡平遥古城,在线体验页面已上线,总大小不到 10M。城墙、六座城门与瓮城、市楼、日升昌票号、四合院等均拆分为独立模块,屋顶、斗拱等共用部件写成共享代码,支持数字键切换镜头、URL 参数定位镜头与单模块查看。
原创 前端设计大神 2026-10-18 12:00 北京
AI把家乡平遥古城完美复刻出来了
最近借助Hi3D Agent中的Opus5.5模型,把家乡平遥古城用全代码的形式完美复刻了一遍。
在线体验地址:
bilibili.com/toy/pingyaogucheng/index.html
(之前的很多作品都可以在这里体验,大家可以随时关注)
制作方法:
1. 从网上找一下平遥古城的建筑图片给Hi3D Agent
2. 让Opus自动完成整个功能
每座建筑一个模块(src/world/)城墙和城门
城墙(citywall.js)带马面、敌楼、垛口和马道。六座城门和瓮城在 gates.js 里,其中迎薰门做成了三重檐城楼。四个角楼和东南角的魁星楼在 corners.js。城内建筑
市楼(shilou.js)、沿街店铺(streets.js)、成片的民居四合院(courtyards.js)、三进商贾大院(hero.js)、日升昌票号(rishengchang.js)。地面、植被和街景
地形(terrain.js)包括街道砖铺、护城河、田野和远山。植被在 vegetation.js。props.js 放灯笼、行人和街边小物件,灯笼挂在各建筑预留的挂点上。共用部件
屋顶、斗拱、柱子、栏杆、院落和店铺等都写成共享代码(pingyao-kit.js、pingyao-house.js 等),各模块共用。布局在 src/layout.js,镜头在 src/shots.js,按模块微调机位放在 src/shotkeys/。
界面和功能
数字键 1–0 播放镜头,空格暂停,f 切自由相机,c 复制机位;左上角显示加载进度,左下角显示当前镜头。
URL 参数比如 ?shot=N&t= 看某个镜头的某一秒,?modules=shilou 只看一座建筑(没加载地形时会自动补一块地面)。
总大小不到10M。
之前的一些准备工作
其实在3年前就利用blender+threejs做了一个平遥古城元宇宙的场景,当时还处于手敲代码的阶段,所以效果不太满意。
3年来大模型发生了巨大的变化,正好看到国外大神用Opus5.5实现了一个精美的建筑,参考他的实现原理,用全代码的方式复刻了一遍平遥古城,这次效果感觉比之前的建模效果要好很多。
在制作之前,还用其它模型做了一些对比。
版本一:Google Gemini最早版本
版本二:Google Gemini 最新提示词
版本三:Opus5.5
写在最后
只要不断跟真实照片比对,模型的精度就会越来越高,越来越接近真实。再次感叹AI进步实在太大了。下一步继续比对各个景点建筑,并引入吉祥物和NPC。
关于作者
做一只爬的最久的乌龟,保持学习保持好奇,即使慢一点,遇到一点困难,只要最后能到达终点,又有什么关系呢。
毕竟人生没有白走的路,每一步都算数
来源:AI for Frontend · 微信公众号 · mp.weixin.qq.com