CityEngine
版本 3.3 | 浏览器中的 CGA 城市建模引擎
CityEngine 是一个基于浏览器的 CGA (Computer Generated Architecture) 规则引擎,支持从 OpenStreetMap 数据自动生成 3D 城市建筑模型。无需安装任何软件,即可在浏览器中完成从城市数据获取到 3D 模型生成的完整流程。
从 OpenStreetMap 下载道路、建筑轮廓数据,支持自定义范围
完整的 CityEngine CGA 语法支持(173/173 核心指令)
天空环境(日间/黄昏/夜间)、实时阴影、无限网格,多引擎支持
支持 glTF / OBJ / GLB 格式导出
AI 驱动的 CGA 代码生成,自然语言描述即可生成规则,开箱即用
CGA 规则、RPK 包、工程文件、插件等资源交易
多成员项目管理、角色权限控制
项目自动保存,跨设备同步
打开 CityEngine 主应用,点击右上角 登录 按钮。首次使用请点击 创建账户 完成注册。注册时会自动创建一个个人组织(Tenant)。
官网首页提供两个编辑器入口:Basic 编辑器(标准版)和 Visul 编辑器(可视化版),均需登录后使用。未登录点击入口会直接弹出微信扫码登录框,扫码确认后自动进入对应编辑器;首页顶部与底部的「微信扫码登录」按钮同样直接弹出二维码,底部入口登录成功后直达用户控制台。
点击顶部菜单 🌍 GetMapData,在弹出的地图窗口中:
下载完成后,左侧编辑器会加载默认的 CGA 规则。点击顶部 ▶ Generate 3D 按钮即可生成 3D 模型。您可以在编辑器中修改规则,实时预览效果。
顶部工具栏提供多种解析引擎选择:
| 引擎 | 说明 | 适用场景 |
|---|---|---|
| CE Native | 浏览器原生解析器 | 推荐,兼容性最佳 |
| CGAJS | JavaScript 解析器 | 复杂规则,性能更好 |
| Auto | 自动选择 | 系统自动判断最优引擎 |
3D 视口提供接近桌面软件的显示效果,顶部快捷开关包括:
| 开关 | 说明 |
|---|---|
| 天空 | 环境天空背景,可选 日间 / 黄昏 / 夜间 三种氛围 |
| 阴影 | 实时软阴影,随光源方向变化 |
| 网格 | 地面参考网格(细网格 + 千米级主网格),远景自动淡出 |
| 坐标轴 | 世界坐标轴显示 |
分析菜单还提供 阴影研究(模拟不同时段日照投影)等可视化分析工具。
CityEngine 支持完整的 CityEngine CGA 语法。以下是常用指令示例:
// 基础建筑生成
Lot --> extrude(10) comp(f) { top: Roof | side: Facade }
Facade --> split(y) { ~3: Floor }*
Floor --> split(x) { ~2: Window | ~1: Wall }*
Roof --> roofGable(30) color("#8B4513")
Window --> primitiveCube color("#87CEEB")
Wall --> primitiveCube color("#F5F5DC")
| 操作 | 快捷键 | 说明 |
|---|---|---|
| 保存 | Ctrl+S | 保存当前项目和 CGA 代码 |
| 生成 3D | Ctrl+Enter | 运行 CGA 生成 3D 模型 |
| 撤销 | Ctrl+Z | 撤销编辑器修改 |
| 全屏 | F11 | 浏览器全屏模式 |
CGA 编辑器内置智能补全:输入函数名前几个字母即弹出候选列表,每条候选带参数签名和中文说明。用 ↑ ↓ 选择,Enter 确认插入,Esc 关闭。补全浮层始终显示在最上层,不会被编辑器边框遮挡。
完整语法参考请查看菜单 Help > CGA Reference 或访问 Esri CGA 官方文档。
| OSM 标签 | 说明 | 引擎映射 |
|---|---|---|
building:levels | 楼层数 | 建筑高度 |
roof:shape | 屋顶形状 | gable / flat / hip |
building:colour | 建筑颜色 | Facade 颜色 |
height | 精确高度 | extrude 高度 |
下载 OSM 建筑数据时,系统会自动为每个建筑项分配默认 CGA 规则(如 osm_building_global),读取 OSM 属性生成对应的 3D 模型。默认规则由平台统一维护,您也可以在检查器中随时为单个建筑更换规则。
点击菜单 File > Save 或按 Ctrl+S,当前 CGA 代码和场景数据会保存到您的账户中。项目支持跨设备同步。
CGA 编辑器对文本文件(.cga 规则、.py 脚本)提供自动保存:停止输入数秒后自动落盘,编辑器失焦时也会补存一次。其他类型文件(如场景 .cej)请使用 Ctrl+S 手动保存。
每个项目工作区包含三个系统保留目录,请勿删除:
| 目录 | 用途 |
|---|---|
Lib/ | 规则库(如 ESRI.lib 示例规则) |
favorites/ | 收藏的规则与资源 |
uploads/ | 上传的本地文件 |
在控制台的 我的项目 页面中,您可以生成公开分享链接。获得链接的用户无需登录即可查看 CGA 代码和场景数据。
CityEngine 支持以下导出格式:
| 格式 | 扩展名 | 状态 |
|---|---|---|
| glTF 2.0 | .gltf | 已支持 |
| glTF Binary | .glb | 已支持 |
| Wavefront OBJ | .obj | 已支持 |
导出功能可通过控制台菜单 File > Export 或 API 调用。
CGA 助手是平台内置的 AI 代码生成助手,用自然语言描述即可生成 CGA 规则,开箱即用,无需自行配置任何 API Key(平台统一托管密钥并自动切换)。
CGA 助手按调用次数计费:每次对话消耗 1 次 CGA 调用额度。套餐内包含的免费额度用完后,可在控制台 套餐配额 页直接购买 CGA 调用包补充,即买即用。
CityEngine 提供多种订阅方案,注册即自动分配免费版:
| 方案 | 价格 | 项目数 | 存储 | CGA 调用/月 |
|---|---|---|---|---|
| 免费版 | ¥0 | 1 | 100MB | 0 |
| 体验版 | ¥30/月 | 5 | 1GB | 按配置 |
| 标准版 | ¥100/月 | 50 | 5GB | 按配置 |
| 高级版 | ¥300/月 | 300 | 20GB | 按配置 |
控制台 套餐配额 页是计费的统一入口:
CityEngine 资源市场提供多种类型的资源:
| 类型 | 说明 |
|---|---|
| CGA 规则 | CGA 规则源码,可直接在编辑器中使用 |
| RPK 包 | 完整的 CityEngine 工程包 |
| 工程文件 | CityEngine 项目模板 |
| 软件下载 | 辅助工具和软件 |
| 插件下载 | 浏览器扩展和插件 |
市场入口:/marketplace.html
市场页顶部另设有「精品源码包」入口,跳转至源码商店(softwarecollege.cn)购买整包 CGA 规则源码(买断下载、含商用授权),与站内单条资源的余额购买互补。
在控制台的 发布资源 页面中,填写资源名称、描述、价格,上传文件或粘贴 CGA 源码即可发布。所有资源需经平台审核后上线。
用户控制台是管理个人账户的入口(/console.html),菜单精简为五项:
所有 API 请求需在 Header 中携带 Authorization: Bearer <token>。通过 POST /api/auth/login 获取 token。
GET /api/ping # 健康检查 POST /api/auth/login # 登录 POST /api/auth/register # 注册 GET /api/project/list # 列出项目 POST /api/project/save # 保存项目 GET /api/v1/ce/plans # 套餐列表 GET /api/v1/ce/subscription # 当前订阅 GET /api/v1/ce/quota # 配额信息
A: 请检查 CGA 编辑器中是否有语法错误(红色下划线),并确保已选择正确的起始规则。如果是 OSM 数据,请确认已勾选"从形状生成模型"。
A: 选择的范围过大。请在 GetMapData 中缩小范围(建议不超过 1 平方公里),或减少下载的数据类型。
A: 请确认:1) 已登录账户;2) 套餐包含 CGA 调用额度或已购买调用包(控制台「套餐配额」页查看剩余次数)。无需自行配置 API Key。
A: 当前版本支持基础颜色导出。建议使用 glTF 格式以获得最佳兼容性。
A: 免费版支持 1 个项目、100MB 存储、不含 CGA 调用额度。如需更多资源或 AI 功能,请在控制台「套餐配额」页升级套餐或购买调用包。