GenPlant
🌱 一个基于Web的程序化植物生成器,使用确定性算法生成独特的三维植物模型。
✨ 功能特性
- 确定性生成: 相同的种子总是生成相同的植物,确保结果可重现
- 程序化建模: 基于生物学原理的植物生长算法,模拟真实的植物形态
- 实时渲染: 使用Three.js实现高质量的3D渲染和交互
- 纯前端: 无需服务器,完全在浏览器中运行
- 参数化控制: 丰富的参数系统控制植物的各个方面

🚀 快速开始
使用方法
- 输入种子: 在输入框中输入任意数字作为生成种子。
- 生成植物: 点击 “Generate Plant” 按钮生成植物。
- 随机生成: 点击 “Random Plant” 按钮随机生成植物。
- 相机控制: 使用鼠标拖拽旋转视角,滚轮缩放,点击 “Reset Camera” 重置视角。
注意: 本项目使用 ES6 模块,需要通过本地服务器运行。

🏗️ 技术架构
核心技术栈
- Three.js: 3D渲染引擎 (通过
esm.sh的 CDN 加载)。 - ES6 Modules: 模块化架构。
- WebGL: 硬件加速渲染。
- HTML5 Canvas: 渲染目标。
系统架构
1
2
3
4
5
6
7
8
9
10
11
12
13
用户界面 (UI)
↓
主控模块 (Main Controller)
↓
生成核心 (Generator Core)
├── 参数生成器 (Parameters)
├── 结构引擎 (Structure Engine)
├── 几何体构建器 (Geometry Builder)
└── 材质生成器 (Material Generator)
↓
渲染模块 (Renderer)
↓
HTML5 Canvas
