Cosmo Tree Gen 是一款免费开源的 Godot 树木生成器:这个插件能在 Godot 4 编辑器里实时构建程序化树木,支持保存为预设,并能导出为已经生成好 LOD 和碰撞形状的 glb/glTF。它采用 MIT 许可证,需要 Godot 4.6 或更高版本,1.0.0 版于 2026年11月8日发布。
开发者在 GitHub 上的名字是 FrogCosmonaut,他因为受够了手工建模树木而做出了这个工具。对于在 Godot 中制作森林、公园或低多边形世界的人来说——包括每个三角形都要精打细算的网页和手机游戏——它能把几周的建模工作变成拖几个滑块、点一下随机种子按钮。
Cosmo Tree Gen 速览
| 是什么 | Godot 4 程序化树木生成插件 |
| 开发者 | FrogCosmonaut(GitHub) |
| 许可证 | MIT,免费开源 |
| 要求 | Godot 4.6+(在 4.6.2 中开发) |
| 最新版本 | v1.0.0,2026年11月8日(首个公开测试版 0.5.0 于 11月3日发布) |
| 导出 | 带 LOD0–LOD2 和碰撞体的 glb / glTF |
| 预设 | 内置 4 个 + demo 文件夹中另有 7 个 |
| AI 使用 | 开发者声明项目 100% 由人工制作 |
| 下载 | github.com/FrogCosmonaut/cosmo_tree_gen |

Cosmo Tree Gen 能生成什么
这个生成器由自定义的 Godot Resource 驱动,所以每棵树都是一组可以调整和保存的参数。主要构成部分包括:
- 树干和树枝。 每个节点可以有多根树干,可选树根,还能按概率加入断枝。每一层树枝的长度和叶片卡的大小都由曲线控制。
- 两种树叶方式。 一种是可配置细分级别的二十面体球(icosphere)叶团,很适合风格化和低多边形树木;另一种是叶片卡(card leaves),可单面或双面,带树冠法线和内部环境光遮蔽。
- 带风吹摇摆的树叶着色器。 它还会限制 mipmap,让使用 alpha scissor 的树叶在远处不会消失。
- 平面着色(Flat shading)。 一个可选开关,用来实现 PSX/PS2 风格的画面。

预设和种子
插件自带四个预设——Ash、Bush、Low Poly Bush 和 Low Poly Tree——demo 文件夹里还有七个。你也可以把自己的设置保存为 CosmoTreePreset 资源。编辑器工具栏可以加载和保存预设、随机化种子,并为每棵树显示绘制调用(draw call)和三角形计数器,而这正是做网页和手机版本时需要盯紧的数字。

为真正的游戏而生:LOD、碰撞和导出
好看的树只完成了一半工作;游戏还需要它们绘制成本低、走过去能撞得上。Cosmo Tree Gen 两方面都照顾到了。
| 功能 | 你能得到什么 | 为什么重要 |
|---|---|---|
| 自动 LOD | LOD0、LOD1 和 LOD2 网格,三角形预算和距离均可配置 | 远处的树消耗的三角形少得多 |
| 智能简化 | 先简化树干;叶片卡变得更少、更大,而不是被直接删掉 | 树冠在远处也能保持形状 |
| 碰撞形状 | 每根树枝一个凸形、每段树枝一个凸形,或单个 trimesh | 在精度和物理开销之间自由取舍 |
| 碰撞层级和高度 | 选择哪些树枝层级参与碰撞(0 = 仅树干),并裁掉某个高度以上的碰撞 | 玩家会撞到树干,而不是头顶的树叶 |
| 树叶碰撞 | 包住整个树冠的凸包,或树枝末端的球体 | 适用于投射物或飞行角色 |
| glb/glTF 导出 | 导出时带 LOD 和碰撞体,可选择在 .import 文件中链接材质 |
在任何场景或项目中复用树木 |
| 脚本 API | 用 export_gltf 批量生成大量树木 |
一次性生成一整片各不相同的森林 |

如何安装和使用 Cosmo Tree Gen
- 检查 Godot 版本。 需要 Godot 4.6 或更新版本。
- 下载插件,可以从 GitHub 仓库或其 Releases 页面获取。
- 把
addons/cosmo_tree_gen/复制到你的项目中,然后在 项目设置 → 插件 中启用。 - 在场景中添加一个
CosmoTreeGen节点。 - 从工具栏选择一个预设,或者编辑
trunk_params、foliage_params和branch_levels列表。 - 指定材质——可以用你自己的,也可以用插件自带的树皮和树叶材质。icosphere 树叶需要使用开启 UV1 Triplanar 的材质。
- 用
collision_type和collision_level开启碰撞,并用preview_collision检查效果。 - 打开
generate_lod,并在项目设置中设定三角形预算和距离。 - 直接把树用于原型制作,或者导出它——在工具栏中导出为 glb/glTF。

给 Godot 网页和手机游戏的建议
- 盯住计数器。 每棵树的绘制调用和三角形读数能让你尽早知道,这棵树会不会拖累手机或浏览器上的帧率。
- 多用低多边形预设。 icosphere 树叶加平面着色,能做出干净的风格化效果,三角形数量远少于密集的叶片卡。
- 导出一次,多次实例化。 用不同种子生成几种变体,导出后复用这些网格,而不是在运行时生成树木。
- 碰撞保持简单。 仅树干碰撞(层级 0)通常就足以满足玩家角色的需要。
- 测试导出结果。 在首个测试版中,开发者把 glTF 导出标记为实验性功能;更新插件后请重新检查导出的树木。
接下来会有什么
公开路线图按优先级排序,最先要做的是为最后一级 LOD 生成 billboard 替身图像(impostor)、更多低多边形树叶类型(松树形和方块形),以及一个从幼苗到老树的树龄滑块。后续计划还包括预设中的物种参数范围、仅投射阴影的代理网格、原地烘焙树木、分层风效、树桩和倒下的树干、花朵、果实和蘑菇、节省一次绘制调用的纹理图集,以及预设库。细节可能会变化,请关注 GitHub 仓库获取最新动态。
常见问题
Cosmo Tree Gen 免费吗?
免费。它基于 MIT 许可证免费开源,所以可以用在商业游戏中。
需要哪个版本的 Godot?
Godot 4.6 或更高版本。它是在 Godot 4.6.2 中开发的。
能把树导出到其他引擎或工具吗?
树木以带 LOD 和碰撞体的 glb/glTF 格式导出,这是许多引擎和 3D 工具都能打开的标准格式。
能做低多边形树吗?
能。它包含 Low Poly Tree 和 Low Poly Bush 预设、icosphere 树叶,以及可选的平面着色模式,可以做出 PSX/PS2 风格。
制作过程中用了 AI 吗?
开发者声明该项目 100% 由人工制作,没有使用任何 AI。
它在 Godot Asset Library 上吗?
开发者表示正在提交中;目前请从 GitHub 仓库下载。




