@Saccc_c: 受全网浏览近千万的 3D 生物结构视觉启发,我制作了三星堆 3D 文物展览 我认为历史文物可视化是有着巨大商业价值的,因为当下国内博物馆制作的 3D 参观依然一言难尽 制作的方法也非常简单: 1、三星堆博物馆官网截图文物后让Image 2…
摘要
The author used the Tripo image-to-3D service and an open-source React+Three.js 3D model studio (3DCellForge) to create a 3D exhibition of Sanxingdui artifacts, arguing for the commercial value of historical artifact visualization.
查看缓存全文
缓存时间: 2026/05/14 04:29
受全网浏览近千万的 3D 生物结构视觉启发,我制作了三星堆 3D 文物展览 我认为历史文物可视化是有着巨大商业价值的,因为当下国内博物馆制作的 3D 参观依然一言难尽 制作的方法也非常简单: 1、三星堆博物馆官网截图文物后让Image 2.0生成清晰的正视图,然后直接在 Tripo 中生成 3D 图像。(Tripo我是在闲鱼买的会员) 2、让Claude Code 复刻黄佬(@servasyy_ai)开源的仓库,但我需要的是博物馆 3D 浏览视图,内容和风格设计均参考三星堆博物馆官网以及我下载的 3D 图像 黄佬仓库:http://github.com/huangserva/3DCellForge… 下面请大家沉浸式参观:
huangserva/3DCellForge
Source: https://github.com/huangserva/3DCellForge
3D Model Studio
AI-powered interactive 3D model generation, inspection, and presentation studio.
3D Model Studio is a React + Three.js prototype for turning uploaded reference images or GLB files into a polished interactive 3D workspace. It supports live WebGL orbit controls, a left model library / center stage / right tools workbench, screenshots, GLB export, collapsed upload history, demo presentation mode, a generation queue, and optional image-to-3D providers for generating real 3D models from uploaded reference images.
Demo
Open the demo video: Demo MP4
Features
- Interactive model viewer built with React Three Fiber.
- Three-column workbench: Model Library on the left, WebGL stage in the center, asset/generation tools on the right.
- Drag to rotate, scroll to zoom, isolate structure parts, inspect model details, and export the current scene.
- Model quality score for generated GLBs, including file size, triangle count, texture count, and demo readiness.
- Demo Mode for screenshots and screen recordings: hides side panels, uses object-aware cinematic camera paths, and shows a clean presentation overlay.
- Older Uploads stays collapsed by default, while the latest uploaded model stays pinned and clickable.
- Generated/imported models are restored after refresh through IndexedDB, with localStorage as a compact fallback.
- Part detail drawer, asset references, comparison panel, notes, gallery actions, logs, saved projects, and a compact generation queue.
- Hyper3D, Tripo, Fal.ai, Hunyuan3D, JS Depth, and Local GLB generation/import modes.
- Cached demo GLB models for offline-friendly screenshots and demos.
- Auxiliary Khronos glTF reference models for GLB loader and PBR material checks.
- API key stays server-side in
.env.local; it is never exposed to the frontend bundle.
Tech Stack
- React
- Vite
- Three.js
- React Three Fiber
- Drei
- Framer Motion
- Tripo API optional backend
- Fal.ai optional backend
- Hunyuan3D local API optional backend
Quick Start
npm install
npm run dev
Open the Vite URL shown in the terminal.
Workbench Workflow
The default screen is intentionally quiet:
- Pick your latest upload or saved generated models from the left
Model Libraryrail. - Older uploaded/generated/imported models are tucked under
Older Uploadsuntil expanded. - Use the right
Asset Sourcerail to choose the generation provider or import a local.glb/.gltf. - Watch upload/generation/import state in the left
Generation Queuepanel. - Click
InfoorInspectonly when you need the part detail drawer. - Click
Demoin the top navigation to enter a clean presentation mode for screenshots and recordings. - Check the quality card on the stage before recording; low scores usually mean the source image or provider result is not demo-ready.
- Demo animation adapts to the model name and metadata: cars use a road push-in, aircraft use a flight pass, ships/carriers use a naval cruise, and biological models use a specimen orbit.
Useful validation commands:
npm run lint
npm run build
npm run test
Optional Image-to-3D Backend
To enable image-to-3D generation, create .env.local:
cp .env.example .env.local
Then set:
TRIPO_API_KEY=your_tripo_key
FAL_API_KEY=your_fal_key
RODIN_API_KEY=your_rodin_api_key
API_HOST=127.0.0.1
For Hunyuan3D local backup mode, start your local Hunyuan3D API server and set:
HUNYUAN_API_BASE=http://127.0.0.1:8081
HUNYUAN_CREATE_PATH=/send
HUNYUAN_STATUS_PATH=/status
The 3D generation backend supports these provider paths:
Hyper3D Hyper3D Rodin cloud generation only (default)
Tripo Tripo cloud generation only
Fal Fal.ai queue generation; model is selected in Settings
Auto Hyper3D first, then Tripo, Fal, Hunyuan, and JS Depth backup
Hunyuan Local Hunyuan3D generation only
The upload panel exposes the full generation mode choice before picking a file:
Hyper3D Hyper3D Rodin GLB generation
Tripo Tripo cloud GLB generation
Fal Fal.ai queue GLB generation
Hunyuan Local Hunyuan3D GLB generation
JS Depth Browser-side image relief with layered PNG fallback
Auto Hyper3D, Tripo, Fal, Hunyuan, then JS Depth fallback
Local GLB Import an existing .glb or self-contained .gltf
Tripo uploads use the current STS object-storage flow (/upload/sts/token) before creating an image_to_model task.
Fal uploads use the official @fal-ai/client storage and queue APIs. Supported Fal models are Hunyuan3D v2, TRELLIS, TripoSR, Tripo3D v2.5, and Hyper3D Rodin. Pick the active Fal model in Settings.
Rodin uploads use Hyper3D’s multipart /rodin task API, then poll /status and cache the GLB returned by /download.
Generated GLBs are cached by the Node backend under .generated-models/, so later views use the local copy instead of temporary provider URLs.
The frontend model library is saved in IndexedDB, so successful generated/imported model records survive page refreshes.
You can also import a local .glb or self-contained .gltf from the New Upload button. Imported models become custom workspace models and are served from the same local cache.
Expected Hunyuan3D local API shape:
POST /send
GET /status/:uid
The status response can return either a remote model URL or a base64 GLB field such as model_base64 / glb_base64. Base64 GLBs are cached under .generated-models/ and served by the Node backend.
Start the backend:
npm run dev:api
Then start the frontend:
npm run dev
The frontend talks to the local Node backend at http://127.0.0.1:8787 by default.
Demo Models
The repository includes cached generated GLB files under:
public/generated-models/
These make the demo usable without spending API credits on every run.
Reference Models
The Library panel includes remote Khronos glTF Sample Models as auxiliary references for material and loader checks:
- Transmission Test, CC0, Adobe via Khronos.
- Transmission Roughness Test, CC-BY 4.0, Ed Mackey / Analytical Graphics via Khronos.
- Mosquito In Amber, CC-BY 4.0, Loic Norgeot / Geoffrey Marchal / Sketchfab via Khronos.
These are loaded from the archived Khronos sample repository and are not bundled into this repo.
Security
Do not put real API keys in frontend code. Keep secrets in .env.local, which is ignored by git.
License
MIT
相似文章
@Saccc_c: 3D 中国文物展示第二期——圆明园十二铜首 我为什么要做这个系列呢?X是全球的平台,大可以做中国文化输出 AI + 中国文化我认为是非常好的方向,说大了,是民族复兴,说小了,是文化自信 这个系列会持续更新,让全世界的人们看到中国文化的美 …
作者展示了利用AI图像生成(Image 2.0)与3D建模工具(Tripo)制作圆明园十二铜首3D文物的系列作品第二期,旨在通过X平台进行中国文化输出,并认为AI与中国文化结合是民族复兴与文化自信的体现。
@GoGoFly23: 复刻了大神@DilumSanjaya的视觉框架,建了一个 F-22、F -35、星舰、猛禽发动机的展示网页。主要有 3 步: 1、使用 GPT 2 Image 生成模型三视图, 2、然后在 ComfyUI 里使用 Hunyuan 3.1生…
This article introduces 3DCellForge, an open-source React and Three.js-based web application for generating and exploring interactive 3D models. It utilizes AI models like Hunyuan 3D and Tripo via ComfyUI or direct API integration to create visualizations of objects such as aircraft and spacecraft.
@BTCqzy1: Claude确实牛啊 史前生物——3D恐龙互动展览 正式上线! 我让Claude帮我把生成好的3D恐龙模型,做成了能拖拽旋转的交互网站~ 我一直相信,AI把史前生物做成可交互的3D模型,在科普和教育上很有意思。 比起静态图片或短视频,能自…
用户用Claude和Codex等AI工具制作了一个可拖拽旋转的3D恐龙互动展览网站,展示了AI在科普教育中创建交互式3D模型的潜力。
@AdrianPunk115: 传统美学和现代科技的完美结合,这波AI上大分 Sac牛逼
受小红书官方邀请,联动四川博物院创作了包含经典文物的数字手册,通过翻页和3D粒子动效等AI技术,提供沉浸式中华文化体验。
@rwayne: “真正的商单” 严肃学习
Sac受小红书官方邀请,联动四川博物院制作了典藏文物手册,通过翻页和3D粒子动效等交互技术,让用户沉浸式体验中华文化。
