CityEngine

来自Wiki.Citydatum
Reiziuh讨论 | 贡献2018年6月11日 (一) 18:59的版本
跳转至: 导航搜索
TODO
提示:该页面仍需进一步完善,欢迎加入我们

CityEngine是一款Esri苏黎世研发中心(原Procedural公司)开发的三维建模软件应用,特别适合于三维城市环境的生成。利用程序化建模(procedural modeling)方法,CityEngine可支持细节丰富、大尺度三维城市模型的创建。

概述

  • 基于规则批量建模编辑:规则定义了一系列的几何和纹理特征决定了模型如何生成。基于规则的建模的思想是定义规则,反复优化设计,以创造更多的细节。当有大量的模型创造和设计时,基于规则建模可以节省大量的时间和成本。最初,它需要更多的时间来写规则文件,但一旦做到这一点,创造更多的模型或不同的设计方案,比传统的手工建模更快。
  • 与ArcGIS集成编辑:CityEngine提升了ArcGIS三维建模能力,充分使用GIS数据快速创建3D内容,为ArcGIS三维数据的获取提供保障,使得ArcGIS三维解决方案更加完善。

应用

  • 城市规划与城市设计
  • 城市研究
  • 电影制作:疯狂动物城、超能陆战队均利用CityEngine来构建大尺度的城市模型;
  • 游戏开发

上手

用户界面

  • 主要窗口类型:导航栏、场景编辑器、CGA规则编辑器、三维视窗、平面图(顶视图的三维视窗)、监视窗口、控制台输出、消息记录

CGA规则

  • CGA形状语法(CGA Shape Grammar Language):CGA(computer generated architecture)规则可在整个城市的尺度上,控制大量的几何形、比例、建筑或街道风貌肌理。一个简单的CGA规则文件示例如下:
/**
 * File:    building_01.cga
 * Created: 31 Oct 2008 10:47:50 GMT
 * Author:  andi
 */

attr minheight = 10
attr maxheight = 30
attr floorheight = 3
attr windowwidth = 2

Lot --> extrude(rand(minheight,maxheight)) Components
Components --> comp(f){top : Roof. | side : Facade}
Facade --> split(y){~floorheight : Floor}*
Floor --> split(x){~windowwidth : Window}*
Window --> i("modern_window.obj")

参考链接