模型导出概览

导出模型包括以下基本步骤:

  1. 视口场景编辑器中选择要导出的对象。
  2. 单击主菜单中的文件 > 导出模型... 或者按 Ctrl + E
  3. 选择首选文件格式。
注:

模型导出器在当前场景中完全独立于已经生成的模型,因此可任意导出大型场景。 这意味着在模型导出前不必生成场景。

受支持的格式和典型用法

3D 格式功能/典型用法

ABC (Alembic)

Alembic 是一个开放式交换框架,专门用于 VFX 内容生产管道。

DAE (Collada)

用于加载大量 DCC 工具和渲染引擎,并支持资产实例化、分层纹理和文件引用。

DATASMITH (Unreal)

Unreal Engine (Datasmith) 导出器提供从 CityEngine 到 Unreal Engine 编辑器的简单数据传输。 它支持现代材料 (PBR) 以及几何实例化

DWG (Autodesk)

Autodesk DWG 是 Autodesk AutoCAD 原生的专有 3D 几何格式。 尽管不具有现代材料支持,但是它广泛用于 BIM 和 CAD 行业。

FBX (Autodesk)

提供导出到 Autodesk Maya、3ds Max、MotionBuilder 以及其他配备 FBX 导入器的 DCC 工具的功能。 它包含对分层纹理(多纹理)以及每个纹理的 UVW 转换(缩放、平移、旋转)的支持。

glTF (Khronos Group)

最近的基于 JSON 的 3d 几何传送格式。 该格式支持现代材料 (PBR) 以及几何实例化,并受到许多桌面和 web 应用程序的支持。 目前,该格式为新工程的建议交换格式。

IFC (buildingSMART)

buildingSMART IFC 是一种用于描述建筑物元素的开源 3D 几何交换格式。 它主要用在 BIM 和 CAD 行业中,用于存储设计、采购和施工阶段的工程信息以及操作参考。 CityEngine 仅支持版本 2x3。

OBJ (Wavefront)

将具有纯色或单个纹理图层的模型传送到任何 DCC 工具或渲染引擎。 物料定义将导出到随附的 MTL 文件中。 它不支持实例化。

USD(通用场景描述)

USD 能够高效灵活地存储大型 CityEngine 场景,同时最大程度降低信息丢失,由此其适合作为交换格式在 VFX 管道中进行进一步处理。

VOB (e-on Vue)

e-on 软件的 Vue 面网格的本机对象格式。 CityEngine 支持 Vue 8.5 及更高版本。 我们建议您使用最新版本。

 

3D GIS 格式功能/典型用法

FileGDB(Esri 文件地理数据库)

GIS 工作流的常用文件格式。 将多面体/多点/点/折线几何类型导出到文件地理数据库。 支持纹理。

KMZ/KML(Keyhole 标记语言)

导出到地理配准的地球浏览器,例如 ArcGlobe 或 ArcGIS Earth;此类模型为共享模型,例如 在 Google Warehouse 中。

 

ArcGIS Online 格式功能/典型用法

MSPK(移动场景包)

Esri 移动场景包是一种经过 web 优化的自定义文件类型,可以在 ArcGIS 平台上共享完整场景。

SLPK(Esri 场景图层包)

Esri 场景图层包 (.slpk) 一种经过 web 优化的自定义格式,可以在 ArcGIS Online 上共享和发布,并使用 Web 场景查看器进行查看。

3VR (360 VR Experience)

导出 CityEngine 场景的全景照片。

3ws(CityEngine Web 场景)

可以使用 CityEngine Web 查看器在 web 浏览器中查看 CityEngine Web 场景。

注:

3ws 格式已弃用,且在未来版本的 CityEngine 中可能不受支持。

 

材料格式功能/典型用法

CGA 材料

将采集 CGA 模型的材料描述并将其写入单独的子目录。 每个子目录将包含整个材料,包括使用的纹理,并且可以简单地将其复制到例如资产中的文件夹。 子目录和 .cgamat 文件的名称为 material.name 属性(但是,如果存在多个具有相同名称的不同材料,则该属性唯一)。

<matName>.cgamat 文件是一个 CSV 文件,与 CGA 函数 getMaterial(used, changed) 的结果相同。

 

自定义导出功能/典型用法

Python(基于脚本的导出器)

允许在批量导出过程中执行任意 Python 命令。

常规导出选项

这些选项适用于所有导出文件格式。 某些格式包含其他设置,将在相应部分中介绍这些设置。

注:
  • 导出向导中,每个导出选项微件都会显示工具提示以及说明。
  • 有关材料和阴影特征的不同格式的比较,请参见下文。

常规设置

输出路径

导出位置的路径。 路径必须存在。

基本名称

已导出文件的基本名称。 根据其他导出设置,将附加各种后缀。

导出几何

  • 具有形状回退的模型(默认):如果模型生成失败,则其将导出开始形状几何
  • 模型:如果模型生成失败,则将忽略形状。
  • 形状:仅导出开始形状几何。

地形图层

  • 不导出任何地形图层
  • 导出所有可见地形图层
  • 导出所有所选地形图层(默认)
  • 导出所有地形图层

简化地形

在导出之前,请使用 reduceGeometry 操作简化地形几何。 这可能需要很长时间,对于具有较高分辨率的地形尤其如此。

粒度设置

文件粒度

  • 一个文件(不超过内存预算):根据内存预算,将写入一个或多个文件。
  • 一个文件/开始形状:对于每个形状,将导出一个几何文件。

内存预算

最大内存消耗,以兆字节为单位。

如果内存预算为零,则将几何数据写入单个文件中。 否则,在达到内存预算时,会将新文件写入磁盘。 备注:

  • 在进行任何优化之前,将在原始网格上测量几何大小。 因此,文件大小通常小于设置。
  • 将针对每个输入形状,而非每个规则输出形状执行该检查,即,非常复杂的规则可能会生成比限制设置更多的数据。

网格粒度

  • 不合并任何网格:将不合并任何网格,单独对每个网格进行优化。
  • 按材料合并网格:将合并并优化具有相同材料特性的所有网格。
  • 重用资产实例,按材料合并生成的网格(默认):将保留插入的资产/网格(请参阅 CGA 插入操作)并对其进行实例化。 将按材料合并由语法生成的网格。

要素粒度

  • 一个要素/形状:将在包中为每个开始形状创建一个要素。
  • 一个要素/叶子形状:将在包中为每个叶子形状创建一个要素。

几何设置

折点索引

在每个面的索引面折点或分离的折点副本之间进行选择。

折点法线

  • 写入折点法线:当存在于网格上时,将会写入折点法线。
  • 不写入任何折点法线:即使存在于网格中,也不会写入折点法线。
  • 如果折点法线缺失,则写入面法线:如果网格不包含折点法线,则将针对折点法线使用面法线。
  • 始终写入面法线:忽略几何上存在的现有折点法线,并将其替换为面法线。

法线索引

在每个面的索引面法线或分离的法线副本之间进行选择。

纹理坐标

  • 不写入任何 UV 的纹理坐标:将不导出任何纹理坐标。
  • 仅写入 UV 的第一个图层:将仅导出纹理坐标的第一个图层(uv-set 0 对应于色彩映射表)(请参阅纹理:基础知识)。
  • 写入所有 UV 图层:将导出所有图层。

本地偏移

仅当文件粒度设置为一个文件/开始形状时,本地偏移才有效,因为它是针对每个单独的形状计算的。

  • :禁用本地偏移。
  • 模型质心:使用所生成模型的质心作为偏移。
  • 模型质心底部:使用投影在所生成模型底部边界上的质心作为偏移。
  • 形状质心:使用形状的质心作为偏移。
  • 形状质心底部:使用投影在底部边界上的形状质心作为偏移。

全局偏移

所生成几何的全局偏移:设置 x、y 和 z 轴的偏移(笛卡尔坐标值)。

折点精度

在实际文件输出(用于减小 OBJ 中的文件大小)之前,这些值可用于降低不同几何数据的浮点精度。

在精度内合并

将合并欧氏距离等于或小于精度的坐标(折点/法线/纹理坐标),并且将更新其对应的索引。

三角化网格

将所有面转换为三角形。

带有孔洞的面

  • 作为孔洞写入(仅适用于某些格式):写入实际孔洞信息。
  • 三角化带有孔洞的面:对包含孔洞的所有面进行三角化。
  • 放弃孔洞:放弃孔洞信息(忽略孔洞)。
  • 将孔洞转换成面:将孔洞转换为实际面(创建共面的面)。

材料设置

包含材料

如果启用,则导出中将包含材料定义(例如,散射颜色)和纹理。 否则,将引用默认材料(如果格式需要)。

纹理设置

采集纹理

将所有引用的纹理导出到导出目标文件夹中,并且将修改文件引用。

创建纹理地图集

创建可将一组纹理组合为一个纹理的纹理图集,从而减少纹理和材料数量。 将移除色彩映射表之外的所有纹理。 请参阅 CGA 材料属性

注:

如果重复(例如 [0,1] 之外的 uv 坐标),则无法将纹理放入地图集中。

纹理地图集最大尺寸 (2^n)

在 power-of-2 像素中指定纹理地图的最大维度,例如 11 可提供 2048x2048 地图集。

纹理地图集边界

添加重复纹理内容的像素边框,以防止出现 Mip 映射伪影。

高级设置

写入日志

将有关此导出会话的详细信息和统计数据写入日志文件。 如果出现错误,请检查日志文件以找出问题所在。

文件类型

在基于二进制或文本 (ASCII) 的文件创建中进行选择。

嵌入纹理

选择引用文件路径(默认)或将纹理文件嵌入二进制文件中。

形状名称分隔符

此字符将用于解决形状名称中的冲突。 分隔符“_”的示例:{"shape", "shape", "shape"} 将被解析为 {"shape", "shape_1", "shape_2"}。 将识别诸如“_1”等现有满足条件。

注:

通过编辑 > 使名称唯一...,您还可以在所选形状上手动调用名称解析器。

现有文件

  • 覆盖现有文件:在写入几何文件之前不执行文件检查,将覆盖所有文件。
  • 跳过现有文件:将不会覆盖现有文件(几何、材料和纹理文件)。

其他设置

脚本

用于与导出并行的其他 python 执行操作的 python 脚本的工作空间路径。

格式功能对比

将针对 CityEngine 的实际输出列出此表中的功能,而非各个格式的理论功能。 另请参阅具有格式建议中的已知互操作性限制和问题的列表。

格式化实例化着色器多纹理Tex Trafo三角测量引用

ABC

可以

2

可以

可以

可以

DAE

可以

可以

1

可以

DWG

DATASMITH

可以

可以

可以

4

FBX

可以

可以

可以

可以

文件地理数据库

可以

glTF

可以

3

KMZ/KML

可以

可以

1

可以

OBJ

可以

SLPK

USD

可以

可以

可以

3ws

可以

  • 1 在导出到 ArcGIS Earth 时需要进行三角化(请参阅格式建议)。
  • 2 Alembic 不会存储任何着色器,但是其可以使用 CGA 报表将着色器名称写为属性,然后将其绑定到下游工具中。
  • 3 glTF 格式本身仅允许三角化几何。
  • 4 CityEngine 会始终将三角化几何传递到 DATASMITH。

功能描述

实例化

支持几何实例化。 通常,资产将与实际节点和转换数据分开存储且处于未修改状态。

着色器

支持自定义着色器名称。

多纹理

支持多纹理通道。

Tex Trafo

支持独立于存储在网格中的纹理坐标的单独纹理坐标转换(例如,纹理旋转)。

三角测量

在导出时,导出器是否支持可选三角测量?

引用

格式是否支持文件之间的实体引用? 由此可定义主文件以合并所有场景元素。