ThreeJSON 是一个基于 JSON 的 Three.js 声明式场景运行时,允许通过配置构建和操控 3D 场景,支持人类作者和 AI/代理驱动的持久化、可变世界。

Stars

32

7 天增长

暂无数据

Fork 数

2

开放 Issue

0

开源协议

MIT

最近更新

2026-07-22

AI 仓库情报摘要
FR-AI / ANALYSIS

为什么值得关注

它为 Three.js 提供了独特的数据优先、声明式方法,专为 AI/代理集成和可扩展领域设计,减少了手写样板代码,并支持动态场景控制。

适合谁使用

  • 希望减少样板代码的 Three.js 开发者
  • 构建 3D 世界生成器的 AI/代理开发者
  • 原型设计或构建持久 3D 环境的游戏开发者
  • 偏好 JSON 场景设计的内容创作者

典型使用场景

  • 通过 JSON 配置创建 3D 场景,无需编写 Three.js 代码
  • 让 AI 代理动态生成和修改 3D 世界
  • 使用自定义对象和行为构建可扩展的业务领域
  • 通过声明式管道快速原型交互式 3D 应用

项目优势

  • JSON 驱动方法消除了重复的 Three.js 样板代码
  • 内置 AI/代理操作支持,具有清晰的设计理念
  • 模块化领域系统允许自定义扩展而不修改核心
  • MIT 许可,活跃的 CI 和全面的文档

使用前须知

  • 需要理解 Three.js 概念及其生态系统
  • 依赖多个第三方库(Three.js、tween.js、html2canvas-pro)
  • 静态资源默认使用 CDN,部分功能需要网络,除非自托管

README 快速开始

ThreeJSON

中文 | English

JSON-driven Three.js scene runtime: build 3D scenes from configuration instead of hand-writing large chunks of Three.js boilerplate.

Official websitehttps://threejson.org/

Repository: github.com/nnrj/threejson · Issues: GitHub Issues

npmthreejson - npm@threejson/assets - npm

Demos: ThreeJSON Examples SceneEditor: ThreeJSON SceneEditor

Exact description:

ThreeJSON is a JSON-driven declarative scene runtime for Three.js, designed for persistent, mutable and extensible 3D worlds — from human-authored scenes to AI and Agent-driven generation and control.

Use in your project

npm install threejson

In addition, certain built-in models rely on the assets package (which contains textures, sample scene JSONs, etc.). By default, no manual setup is required as ThreeJSON will automatically fetch them via CDN.

If you prefer to host or use them locally, you can install the assets package separately:

npm install @threejson/assets

Development environment

To run tests, examples, and external tools (agent bridges, MCP) in this repo, use Node.js 24+.

git clone https://github.com/nnrj/threejson.git
cd threejson
nvm use          # reads .nvmrc
npm ci && npm test

See docs/zh/development.md (Chinese; English: docs/en/development.md).

Use in your project

npm install threejson

In addition, certain built-in models rely on the assets package (which contains textures, sample scene JSONs, etc.). By default, no manual setup is required as ThreeJSON will automatically fetch them via CDN.

If you prefer to host or use them locally, you can install the assets package separately:

npm install @threejson/assets

The philosophy of ThreeJSON, distilled into four lines:

Scene as Data — The scene is data. Runtime as Engine — The runtime is the engine.

项目描述

ThreeJSON is a JSON-driven declarative scene runtime for Three.js, designed for persistent, mutable and extensible 3D worlds — from human-authored scenes to AI and Agent-driven generation and control.

相关仓库与替代方案

根据分类、Topic 和编程语言匹配的相似项目。

hoainho
hoainho GitHub avatar

img2threejs

img2threejs reconstructs a 3D object from a single reference image as a procedural Three.js model using code-only, token-efficient, staged pipeline with quality gates, producing animation-ready Three.js groups.

Python
7,414
CatsJuice
精选
CatsJuice GitHub avatar

sticker-forge

Sticker Forge is a WebGL tool that turns text or uploaded images into interactive stickers with a simulated peel-and-reveal effect, offering a Web Component and imperative API.

JavaScript
627
dilukangelosl
精选
dilukangelosl GitHub avatar

fluidkit

A framework-agnostic GPU fluid simulation library for the web using Stable Fluids on WebGL2, with pluggable render modes and React/Vue/Svelte adapters.

AI 与机器学习AI 智能体
8