Files
EVEngine/examples/terrain-editor

Terrain Editor — 运行时生成的地形编辑器

演示"运行时即编辑器":脚本用 editor + ui 构件在游戏进程内生成一个地形编辑器—— 主窗口实时渲染 3D 地形,工具面板控制抬升 / 下陷笔刷,高度图网格原地更新。 示例现在还会把高度图编码为版本化的 eve.terrain-editor-document/1,原子保存到 应用数据目录,并在下次启动时校验、恢复。格式版本、未知字段、尺寸和非有限数值 都由与关卡编辑器相同的 C++ 编解码器检查。

运行

make run/<platform>-debug GAME=examples/terrain-editor

操作

输入 作用
右键拖拽 Viewport 轨道相机
滚轮 缩放
场景内按住左键 抬升 / 下陷地形
Raise / Lower 按钮 切换笔刷
Regenerate 按钮 重新生成高度图
Save terrain 按钮 原子保存当前版本化地形文档
Reload saved terrain 按钮 从磁盘重新校验并读取地形文档

同样的 UI 可以在发布运行时保留,让玩家 / 编辑器在游戏里直接改内容(开发系统 = 游戏运行时)。

本示例聚焦可编辑文档闭环,画面仍使用 64×64 高度图以保证交互流畅。1K 实体归档 导入导出和 1K/4K/8K 随机访问性能由 procgen.terrain.performance 自动测试覆盖, 不会在每次启动 GUI 示例时分配 8K 高度图。