Esri Procedural Runtime Encoder/Decoder Reference

(Automatically generated from PRT 2.0.5403; Build Date: Tue 04/09/2019 10:26 AM; Build Configuration: PRT_BC_REL PRT_CC_OPT)

This is the PRT reference documentation for all built-in encoders and decoders.

The encoder documentation lists for each encoder its supported encoder options. In PRT, the encoder options are stored in an object of type prt::AttributeMap, therefore the term "attribute" is used synonymously in this document for a single encoder option. Each attribute consists of a type, a default value and (optional) annotations. Annotation names start with an '@' character and have zero or more arguments which are listed below in the form "key:type = val", with types = {str, float, bool}. Key and type itself are strings. An annotation argument key is allowed to be empty. In addition, each encoder also has a list (allowed to be empty) of mandatory initial shape attributes needed for successful encoding.

Note: for each attribute 'x' there is an equivalent string attribute 'x_state' with string values "ENABLED", "DISABLED" OR "HIDDEN". For better readability, these state attributes have been omitted in the below tables.

The decoder documentation simply lists the supported URI (filename) extensions.

Table of Contents

Built-In Encoders

ALEMBIC (com.esri.prt.codecs.AlembicEncoder)

Encodes geometry into the alembic format.

Known Initial Shape Attributes

Key Type Default Value Annotations
/enc/objectID str
@Description :str = The unique object ID of the initial shape. The format is client specific.

Default Encoder Options

Key Type Default Value Annotations
errorFallback bool true
@Label :str = Error Fallback
@Description :str = Fall back to start shape geometry, if generation fails. Else, ignore failed start shapes.
@Order :float = 1020
@Group name:str = General Settings
order:float = 0
@Hidden
applicationString str
@Label :str = Application
@Description :str = Name and version of application.
@Order :float = 0.103
@Group name:str = General Settings
order:float = 0
@Hidden
facesWithHoles str TRIANGULATE_FACES_WITH_HOLES
@Label :str = Faces With Holes
@Description :str = Specifies how faces with holes should be handled during the export.
@Order :float = 9080
@Group name:str = Geometry Settings
order:float = 2
@Range TRIANGULATE_FACES_WITH_HOLES:str = Triangulate faces with holes
DISCARD_HOLES:str = Discard holes
CONVERT_HOLES_TO_FACES:str = Convert holes to faces
author str
@Label :str = Author
@Description :str = Author of data.
@Order :float = 0.11
@Group name:str = General Settings
order:float = 0
@Hidden
baseName str base_name
@Label :str = Base Name
@Description :str = The base name for all files.
@Order :float = 1010
@Group name:str = General Settings
order:float = 0
triangulateMeshes bool false
@Label :str = Triangulate Meshes
@Description :str = Triangulate resulting meshes.
@Order :float = 9070
@Group name:str = Geometry Settings
order:float = 2
cellSize int 1000
@Label :str = Top Level Cell Size
@Description :str = Cell size (meters) of top level grid of shapes (0 = single cell).
@Order :float = 1015
@Group name:str = General Settings
order:float = 0
@Range 0:float = 0
1:float = 32768
localOffset str NONE
@Label :str = Local Offset
@Description :str = Local (= per shape or model) offset for exported geometry.
@Order :float = 7010
@Group name:str = Geometry Settings
order:float = 2
@Range NONE:str = None
MODEL_CENTROID:str = Model Centroid
MODEL_CENTROID_BOTTOM:str = Model Centroid Bottom
SHAPE_CENTROID:str = Shape Centroid
SHAPE_CENTROID_BOTTOM:str = Shape Centroid Bottom
globalOffset float_array
@Label :str = Global Offset
@Description :str = Global (= for all shapes/models) offset for exported geometry.
@Order :float = 7020
@Group name:str = Geometry Settings
order:float = 2
@Point3D
createTextureAtlases bool false
@Label :str = Create Texture Atlases
@Description :str = Creates texture atlases which combine a set of textures into one, thus reducing the number of textures and materials. All textures except COLORMAPs are removed.
@Order :float = 4030
@Group name:str = Texture Settings
order:float = 4
maxAtlasDim int 11
@Label :str = Texture Atlas Max Dimension (2^n)
@Description :str = Specifies the maximal dimension of the texture atlases in power-of-2 pixels, e.g. 11 gives a 2048x2048 Atlas.
@Order :float = 4040
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 4
1:float = 16
atlasAddWrapBorder bool true
@Label :str = Texture Atlas Border
@Description :str = Add a border of clamped pixels to protect against wrap mode bleeding.
@Order :float = 4060
@Group name:str = Texture Settings
order:float = 4
shapeNameDelimiter str _
@Label :str = Shape Name Delimiter
@Description :str = Delimiting character for resolution of shape name clashes.
@Order :float = 7060
@Group name:str = Advanced Settings
order:float = 5
existingFiles str OVERWRITE
@Label :str = Existing Files
@Description :str = Specifies how files should be written during the export run. The log file will be written anyways.
@Order :float = 7100
@Group name:str = Advanced Settings
order:float = 5
@Range OVERWRITE:str = Overwrite existing files
SKIP:str = Skip existing files
writeLog bool false
@Label :str = Write Log
@Description :str = Write log file with statistics about this export session.
@Order :float = 7005
@Group name:str = Advanced Settings
order:float = 5

COLLADA (com.esri.prt.codecs.ColladaEncoder)

Encodes geometry into the Khronos COLLADA format.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
memoryBudget int 500
@Label :str = Memory Budget (MBytes)
@Description :str = Specifies the size limit in megabytes per exported file (value 0 = unlimited). Please note: The size is measured on the unoptimized geometry, i.e. the final size may vary. The check is only performed per input shape.
@Order :float = 3020
@Group name:str = Granularity Settings
order:float = 1
errorFallback bool true
@Label :str = Error Fallback
@Description :str = Fall back to start shape geometry, if generation fails. Else, ignore failed start shapes.
@Order :float = 1020
@Group name:str = General Settings
order:float = 0
@Hidden
author str
@Label :str = Author
@Description :str = Author of data.
@Order :float = 0.11
@Group name:str = General Settings
order:float = 0
@Hidden
applicationName str
@Label :str = Application Name
@Description :str = Name of application.
@Order :float = 0.101
@Group name:str = General Settings
order:float = 0
@Hidden
localOffset str NONE
@Label :str = Local Offset
@Description :str = Local (= per shape or model) offset for exported geometry.
@Order :float = 7010
@Group name:str = Geometry Settings
order:float = 2
@Range NONE:str = None
MODEL_CENTROID:str = Model Centroid
MODEL_CENTROID_BOTTOM:str = Model Centroid Bottom
SHAPE_CENTROID:str = Shape Centroid
SHAPE_CENTROID_BOTTOM:str = Shape Centroid Bottom
applicationVersion str
@Label :str = Application Version
@Description :str = Version of application.
@Order :float = 0.102
@Group name:str = General Settings
order:float = 0
@Hidden
applicationString str
@Label :str = Application
@Description :str = Name and version of application.
@Order :float = 0.103
@Group name:str = General Settings
order:float = 0
@Hidden
textureCoordinates str ALL
@Label :str = Texture Coordinates
@Description :str = Choose which - if any - texture coordinate layers to export.
@Order :float = 5040
@Group name:str = Geometry Settings
order:float = 2
@Range NONE:str = Do not write any UVs
FIRST:str = Only write first layer of UVs
ALL:str = Write all UV layers
applicationVendor str
@Label :str = Application Vendor
@Description :str = Vendor of application.
@Order :float = 0.104
@Group name:str = General Settings
order:float = 0
@Hidden
atlasAddWrapBorder bool true
@Label :str = Texture Atlas Border
@Description :str = Add a border of clamped pixels to protect against wrap mode bleeding.
@Order :float = 4060
@Group name:str = Texture Settings
order:float = 4
fileGranularity str MEMORY_BUDGET
@Label :str = File Granularity
@Description :str = Specifies the partition of the generated geometry into files.
@Order :float = 3010
@Group name:str = Granularity Settings
order:float = 1
@Range MEMORY_BUDGET:str = One file as long as Memory Budget is not exceeded
START_SHAPE:str = One file per start shape
texcoordPrecision float 1.0e-04
@Label :str = Texture Coordinate Precision
@Description :str = Specifies the minimal distance between texels.
@Order :float = 9030
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
baseName str base_name
@Label :str = Base Name
@Description :str = The base name for all files.
@Order :float = 1010
@Group name:str = General Settings
order:float = 0
createShapeGroups bool false
@Label :str = Create Shape Groups
@Description :str = Create a group/transformation node per shape. Note that generated geometry is only merged inside a shape if enabled.
@Order :float = 3030
@Group name:str = Granularity Settings
order:float = 1
meshGranularity str INSTANCED
@Label :str = Mesh Granularity
@Description :str = Specifies the processing of meshes.
@Order :float = 3040
@Group name:str = Granularity Settings
order:float = 1
@Range AS_GENERATED:str = Do not merge any meshes
PER_MATERIAL:str = Merge meshes by material
INSTANCED:str = Reuse asset instances, merge generated meshes by material
includeMaterials bool true
@Label :str = Include Materials
@Description :str = Exports material definitions (e.g. color, textures, ...).
@Order :float = 4010
@Group name:str = Material Settings
order:float = 3
collectTextures bool true
@Label :str = Collect Textures
@Description :str = Collects all used textures and copies them into the target folder. All texture references are adjusted accordingly.
@Order :float = 4020
@Group name:str = Texture Settings
order:float = 4
vertexPrecision float 0.001
@Label :str = Vertex Precision
@Description :str = Specifies the minimal distance between vertices.
@Order :float = 9010
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
createTextureAtlases bool false
@Label :str = Create Texture Atlases
@Description :str = Creates texture atlases which combine a set of textures into one, thus reducing the number of textures and materials. All textures except COLORMAPs are removed.
@Order :float = 4030
@Group name:str = Texture Settings
order:float = 4
maxAtlasDim int 11
@Label :str = Texture Atlas Max Dimension (2^n)
@Description :str = Specifies the maximal dimension of the texture atlases in power-of-2 pixels, e.g. 11 gives a 2048x2048 Atlas.
@Order :float = 4040
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 4
1:float = 16
existingFiles str OVERWRITE
@Label :str = Existing Files
@Description :str = Specifies how files should be written during the export run. The log file will be written anyways.
@Order :float = 7100
@Group name:str = Advanced Settings
order:float = 5
@Range OVERWRITE:str = Overwrite existing files
SKIP:str = Skip existing files
vertexIndexing str INDEXED
@Label :str = Vertex Indexing
@Description :str = Choose indexed (shared) or separated vertices between faces.
@Order :float = 5010
@Group name:str = Geometry Settings
order:float = 2
@Range INDEXED:str = Allow shared vertices
SEPARATED:str = Force separated vertices
mergeNormals bool true
@Label :str = Merge Normals Within Precision
@Description :str = Finds parallel normals (using the precision distance) and shares their index.
@Order :float = 9050
@Group name:str = Geometry Settings
order:float = 2
vertexNormals str PASS
@Label :str = Vertex Normals
@Description :str = Controls the export of vertex normals.
@Order :float = 5020
@Group name:str = Geometry Settings
order:float = 2
@Range PASS:str = Write vertex normals
NONE:str = Do not write any vertex normals
SET_MISSING:str = Write face normal if vertex normal is missing
SET_ALL:str = Always write face normal
globalOffset float_array
@Label :str = Global Offset
@Description :str = Global (= for all shapes/models) offset for exported geometry.
@Order :float = 7020
@Group name:str = Geometry Settings
order:float = 2
@Point3D
globalScalingFactor float 1.0
@Label :str = Global Scaling Factor
@Description :str = Adds an uniform scaling factor to the root node(s). Set to 0 to disable and write COLLADA unit tag instead.
@Order :float = 7025
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 10000
@Hidden
colladaVersion str COLLADA_1_4_1
@Label :str = COLLADA Version
@Description :str = Specifies the COLLADA version.
@Order :float = 7035
@Group name:str = Advanced Settings
order:float = 5
@Range COLLADA_1_4_1:str = COLLADA 1.4.1
COLLADA_1_5_0:str = COLLADA 1.5.0
shapeNameDelimiter str _
@Label :str = Shape Name Delimiter
@Description :str = Delimiting character for resolution of shape name clashes.
@Order :float = 7060
@Group name:str = Advanced Settings
order:float = 5
facesWithHoles str PASS
@Label :str = Faces With Holes
@Description :str = Specifies how faces with holes should be handled during the export.
@Order :float = 9080
@Group name:str = Geometry Settings
order:float = 2
@Range PASS:str = Write as holes
TRIANGULATE_FACES_WITH_HOLES:str = Triangulate faces with holes
DISCARD_HOLES:str = Discard holes
CONVERT_HOLES_TO_FACES:str = Convert holes to faces
reportMode str NONE
@Label :str = CGA Reports
@Description :str = Specifies how CGA reports are handled.
@Order :float = 7120
@Group name:str = Advanced Settings
order:float = 5
@Range NONE:str = No CGA reports are exported.
PROPAGATE_TO_LEAF:str = Create <extra> tags per node with depth-first-accumulated reports.
normalPrecision float 0.001
@Label :str = Normal Precision
@Description :str = Specifies the minimal difference between normals.
@Order :float = 9020
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
writeLog bool false
@Label :str = Write Log
@Description :str = Write log file with statistics about this export session.
@Order :float = 7005
@Group name:str = Advanced Settings
order:float = 5
mergeVertices bool true
@Label :str = Merge Vertices Within Precision
@Description :str = Finds co-incidental vertices (using the precision distance) and shares their index.
@Order :float = 9040
@Group name:str = Geometry Settings
order:float = 2
mergeTexcoords bool true
@Label :str = Merge Texture Coordinates Within Precision
@Description :str = Finds identical texture coordinates (using the precision distance) and shares their index.
@Order :float = 9060
@Group name:str = Geometry Settings
order:float = 2
triangulateMeshes bool false
@Label :str = Triangulate Meshes
@Description :str = Triangulate resulting meshes (e.g. needed for Google Earth (tm) Collada import).
@Order :float = 9070
@Group name:str = Geometry Settings
order:float = 2

DXT Encoder (com.esri.prt.codecs.DxtEncoder)

Encodes images and textures into the DXT format.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
textureName str texture.ext
@Label :str = Texture Name
@Description :str = Texture base name.
@Order :float = 15100
@Group name:str = Texture Settings
order:float = 4
textureFlipH bool false
@Label :str = Flip Horizontally
@Description :str = Flip texture horizontally before encoding.
@Order :float = 15140
@Group name:str = Texture Settings
order:float = 4

Autodesk FBX (com.esri.prt.codecs.FBXEncoder)

Encodes geometry into the Autodesk Filmbox (FBX) format.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
errorFallback bool true
@Label :str = Error Fallback
@Description :str = Fall back to start shape geometry, if generation fails. Else, ignore failed start shapes.
@Order :float = 1020
@Group name:str = General Settings
order:float = 0
@Hidden
author str
@Label :str = Author
@Description :str = Author of data.
@Order :float = 0.11
@Group name:str = General Settings
order:float = 0
@Hidden
applicationName str
@Label :str = Application Name
@Description :str = Name of application.
@Order :float = 0.101
@Group name:str = General Settings
order:float = 0
@Hidden
localOffset str NONE
@Label :str = Local Offset
@Description :str = Local (= per shape or model) offset for exported geometry.
@Order :float = 7010
@Group name:str = Geometry Settings
order:float = 2
@Range NONE:str = None
MODEL_CENTROID:str = Model Centroid
MODEL_CENTROID_BOTTOM:str = Model Centroid Bottom
SHAPE_CENTROID:str = Shape Centroid
SHAPE_CENTROID_BOTTOM:str = Shape Centroid Bottom
applicationVersion str
@Label :str = Application Version
@Description :str = Version of application.
@Order :float = 0.102
@Group name:str = General Settings
order:float = 0
@Hidden
embedTextures bool false
@Label :str = Embed Textures
@Description :str = Embeds the textures inside the binary FBX file.
@Order :float = 7050
@Group name:str = Advanced Settings
order:float = 5
applicationString str
@Label :str = Application
@Description :str = Name and version of application.
@Order :float = 0.103
@Group name:str = General Settings
order:float = 0
@Hidden
textureCoordinates str ALL
@Label :str = Texture Coordinates
@Description :str = Choose which - if any - texture coordinate layers to export.
@Order :float = 5040
@Group name:str = Geometry Settings
order:float = 2
@Range NONE:str = Do not write any UVs
FIRST:str = Only write first layer of UVs
ALL:str = Write all UV layers
normalsIndexing str INDEXED
@Label :str = Normals Indexing
@Description :str = Choose indexed (shared) or separated normals per face vertex.
@Order :float = 5030
@Group name:str = Geometry Settings
order:float = 2
@Range INDEXED:str = Allow shared normals
SEPARATED:str = Force separated normals
applicationVendor str
@Label :str = Application Vendor
@Description :str = Vendor of application.
@Order :float = 0.104
@Group name:str = General Settings
order:float = 0
@Hidden
texcoordPrecision float 1.0e-04
@Label :str = Texture Coordinate Precision
@Description :str = Specifies the minimal distance between texels.
@Order :float = 9030
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
baseName str base_name
@Label :str = Base Name
@Description :str = The base name for all files.
@Order :float = 1010
@Group name:str = General Settings
order:float = 0
outputPath str
@Label :str = Output Path
@Description :str = Path to the output location.
@Order :float = 0.201
@Group name:str = General Settings
order:float = 0
writeLog bool false
@Label :str = Write Log
@Description :str = Write log file with statistics about this export session.
@Order :float = 7005
@Group name:str = Advanced Settings
order:float = 5
tempPath str
@Label :str = Temp Path
@Description :str = Path for temporary files.
@Order :float = 0.202
@Group name:str = General Settings
order:float = 0
atlasAddWrapBorder bool true
@Label :str = Texture Atlas Border
@Description :str = Add a border of clamped pixels to protect against wrap mode bleeding.
@Order :float = 4060
@Group name:str = Texture Settings
order:float = 4
fileGranularity str MEMORY_BUDGET
@Label :str = File Granularity
@Description :str = Specifies the partition of the generated geometry into files.
@Order :float = 3010
@Group name:str = Granularity Settings
order:float = 1
@Range MEMORY_BUDGET:str = One file as long as Memory Budget is not exceeded
START_SHAPE:str = One file per start shape
memoryBudget int 500
@Label :str = Memory Budget (MBytes)
@Description :str = Specifies the size limit in megabytes per exported file (value 0 = unlimited). Please note: The size is measured on the unoptimized geometry, i.e. the final size may vary. The check is only performed per input shape.
@Order :float = 3020
@Group name:str = Granularity Settings
order:float = 1
createShapeGroups bool false
@Label :str = Create Shape Groups
@Description :str = Create a group/transformation node per shape. Note that generated geometry is only merged inside a shape if enabled.
@Order :float = 3030
@Group name:str = Granularity Settings
order:float = 1
meshGranularity str INSTANCED
@Label :str = Mesh Granularity
@Description :str = Specifies the processing of meshes.
@Order :float = 3040
@Group name:str = Granularity Settings
order:float = 1
@Range AS_GENERATED:str = Do not merge any meshes
PER_MATERIAL:str = Merge meshes by material
INSTANCED:str = Reuse asset instances, merge generated meshes by material
includeMaterials bool true
@Label :str = Include Materials
@Description :str = Exports material definitions (e.g. color, textures, ...).
@Order :float = 4010
@Group name:str = Material Settings
order:float = 3
collectTextures bool true
@Label :str = Collect Textures
@Description :str = Collects all used textures and copies them into the target folder. All texture references are adjusted accordingly.
@Order :float = 4020
@Group name:str = Texture Settings
order:float = 4
vertexPrecision float 0.001
@Label :str = Vertex Precision
@Description :str = Specifies the minimal distance between vertices.
@Order :float = 9010
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
createTextureAtlases bool false
@Label :str = Create Texture Atlases
@Description :str = Creates texture atlases which combine a set of textures into one, thus reducing the number of textures and materials. All textures except COLORMAPs are removed.
@Order :float = 4030
@Group name:str = Texture Settings
order:float = 4
maxAtlasDim int 11
@Label :str = Texture Atlas Max Dimension (2^n)
@Description :str = Specifies the maximal dimension of the texture atlases in power-of-2 pixels, e.g. 11 gives a 2048x2048 Atlas.
@Order :float = 4040
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 4
1:float = 16
mergeNormals bool true
@Label :str = Merge Normals Within Precision
@Description :str = Finds parallel normals (using the precision distance) and shares their index.
@Order :float = 9050
@Group name:str = Geometry Settings
order:float = 2
vertexNormals str SET_MISSING
@Label :str = Vertex Normals
@Description :str = Controls the export of vertex normals.
@Order :float = 5020
@Group name:str = Geometry Settings
order:float = 2
@Range PASS:str = Write vertex normals
NONE:str = Do not write any vertex normals
SET_MISSING:str = Write face normal if vertex normal is missing
SET_ALL:str = Always write face normal
globalOffset float_array
@Label :str = Global Offset
@Description :str = Global (= for all shapes/models) offset for exported geometry.
@Order :float = 7020
@Group name:str = Geometry Settings
order:float = 2
@Point3D
fileType str BINARY
@Label :str = File Type
@Description :str = Specifies geometry file type.
@Order :float = 7030
@Group name:str = Advanced Settings
order:float = 5
@Range TEXT:str = Text
BINARY:str = Binary
shapeNameDelimiter str _
@Label :str = Shape Name Delimiter
@Description :str = Delimiting character for resolution of shape name clashes.
@Order :float = 7060
@Group name:str = Advanced Settings
order:float = 5
existingFiles str OVERWRITE
@Label :str = Existing Files
@Description :str = Specifies how files should be written during the export run. The log file will be written anyways.
@Order :float = 7100
@Group name:str = Advanced Settings
order:float = 5
@Range OVERWRITE:str = Overwrite existing files
SKIP:str = Skip existing files
facesWithHoles str TRIANGULATE_FACES_WITH_HOLES
@Label :str = Faces With Holes
@Description :str = Specifies how faces with holes should be handled during the export.
@Order :float = 9080
@Group name:str = Geometry Settings
order:float = 2
@Range TRIANGULATE_FACES_WITH_HOLES:str = Triangulate faces with holes
DISCARD_HOLES:str = Discard holes
CONVERT_HOLES_TO_FACES:str = Convert holes to faces
normalPrecision float 0.001
@Label :str = Normal Precision
@Description :str = Specifies the minimal difference between normals.
@Order :float = 9020
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
mergeVertices bool true
@Label :str = Merge Vertices Within Precision
@Description :str = Finds co-incidental vertices (using the precision distance) and shares their index.
@Order :float = 9040
@Group name:str = Geometry Settings
order:float = 2
mergeTexcoords bool true
@Label :str = Merge Texture Coordinates Within Precision
@Description :str = Finds identical texture coordinates (using the precision distance) and shares their index.
@Order :float = 9060
@Group name:str = Geometry Settings
order:float = 2
triangulateMeshes bool false
@Label :str = Triangulate Meshes
@Description :str = Triangulate resulting meshes.
@Order :float = 9070
@Group name:str = Geometry Settings
order:float = 2

Khronos Group glTF (com.esri.prt.codecs.GLTFEncoder)

Encodes geometry into the Khronos Group glTF 2.0 format.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
memoryBudget int 500
@Label :str = Memory Budget (MBytes)
@Description :str = Specifies the size limit in megabytes per exported file (value 0 = unlimited). Please note: The size is measured on the unoptimized geometry, i.e. the final size may vary. The check is only performed per input shape.
@Order :float = 3020
@Group name:str = Granularity Settings
order:float = 1
errorFallback bool true
@Label :str = Error Fallback
@Description :str = Fall back to start shape geometry, if generation fails. Else, ignore failed start shapes.
@Order :float = 1020
@Group name:str = General Settings
order:float = 0
@Hidden
meshGranularity str INSTANCED
@Label :str = Mesh Granularity
@Description :str = Specifies the processing of meshes.
@Order :float = 3040
@Group name:str = Granularity Settings
order:float = 1
@Range AS_GENERATED:str = Do not merge any meshes
PER_MATERIAL:str = Merge meshes by material
INSTANCED:str = Reuse asset instances, merge generated meshes by material
applicationString str
@Label :str = Application
@Description :str = Name and version of application.
@Order :float = 0.103
@Group name:str = General Settings
order:float = 0
@Hidden
author str
@Label :str = Author
@Description :str = Author of data.
@Order :float = 0.11
@Group name:str = General Settings
order:float = 0
@Hidden
fileGranularity str MEMORY_BUDGET
@Label :str = File Granularity
@Description :str = Specifies the partition of the generated geometry into files.
@Order :float = 3010
@Group name:str = Granularity Settings
order:float = 1
@Range MEMORY_BUDGET:str = One file as long as Memory Budget is not exceeded
START_SHAPE:str = One file per start shape
baseName str base_name
@Label :str = Base Name
@Description :str = The base name for all files.
@Order :float = 1010
@Group name:str = General Settings
order:float = 0
globalOffset float_array
@Label :str = Global Offset
@Description :str = Global (= for all shapes/models) offset for exported geometry.
@Order :float = 7020
@Group name:str = Geometry Settings
order:float = 2
@Point3D
shapeNameDelimiter str _
@Label :str = Shape Name Delimiter
@Description :str = Delimiting character for resolution of shape name clashes.
@Order :float = 7060
@Group name:str = Advanced Settings
order:float = 5
existingFiles str OVERWRITE
@Label :str = Existing Files
@Description :str = Specifies how files should be written during the export run. The log file will be written anyways.
@Order :float = 7100
@Group name:str = Advanced Settings
order:float = 5
@Range OVERWRITE:str = Overwrite existing files
SKIP:str = Skip existing files
writeLog bool false
@Label :str = Write Log
@Description :str = Write log file with statistics about this export session.
@Order :float = 7005
@Group name:str = Advanced Settings
order:float = 5
outputFormat str GLTF_GLB_WITH_SINGLE_BUFFER
@Label :str = GLTF Output Format
@Description :str = Specifies the output glTF format.
@Order :float = 1015
@Group name:str = General Settings
order:float = 0
@Range GLTF_JSON_WITH_EXTERNAL_DATA:str = glTF JSON with external geometry and textures
GLTF_GLB_WITH_SINGLE_BUFFER:str = glTF binary (GLB)
includeMaterials bool true
@Label :str = Include Materials
@Description :str = Exports material definitions (e.g. color, textures, ...).
@Order :float = 4010
@Group name:str = Material Settings
order:float = 3

Esri Scene Layer Package (com.esri.prt.codecs.I3SEncoder)

Creates Scene Layer Packages that can be shared on ArcGIS Online/Portal.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
errorFallback bool true
@Label :str = Error Fallback
@Description :str = Fall back to start shape geometry, if generation fails. Else, ignore failed start shapes.
@Order :float = 1020
@Group name:str = General Settings
order:float = 0
@Hidden
backfaceCulling bool false
@Label :str = Backface Culling
@Description :str = Activate Backface Culling.
@Order :float = 1031
@Group name:str = General Settings
order:float = 0
author str
@Label :str = Author
@Description :str = Author of data.
@Order :float = 0.11
@Group name:str = General Settings
order:float = 0
@Hidden
applicationName str
@Label :str = Application Name
@Description :str = Name of application.
@Order :float = 0.101
@Group name:str = General Settings
order:float = 0
@Hidden
applicationVersion str
@Label :str = Application Version
@Description :str = Version of application.
@Order :float = 0.102
@Group name:str = General Settings
order:float = 0
@Hidden
featureGranularity str FEATURE_PER_SHAPE
@Label :str = Feature Granularity
@Description :str = Set Feature Granularity.
@Order :float = 1033
@Group name:str = General Settings
order:float = 0
@Range FEATURE_PER_SHAPE:str = One Feature Per Shape
FEATURE_PER_LEAF_SHAPE:str = One Feature Per Leaf Shape
applicationString str
@Label :str = Application
@Description :str = Name and version of application.
@Order :float = 0.103
@Group name:str = General Settings
order:float = 0
@Hidden
layerTextureEncoding str_array
@Label :str = Textures
@Description :str = Specifies whether and how the textures should be encoded.
@Order :float = 22000
@Group name:str = Layer Settings
order:float = 6
@Range SKIP:str = No textures
TRY_TO_REUSE_SOURCE:str = Try to keep source texture data; reencode only if necessary
REENCODE:str = Reencode textures
@PerLayer layerDefault:float = 2
applicationVendor str
@Label :str = Application Vendor
@Description :str = Vendor of application.
@Order :float = 0.104
@Group name:str = General Settings
order:float = 0
@Hidden
baseName str base_name
@Label :str = Scene Name
@Description :str = The WebScene name.
@Order :float = 1010
@Group name:str = General Settings
order:float = 0
outputPath str
@Label :str = Output Path
@Description :str = Path to the output location.
@Order :float = 0.201
@Group name:str = General Settings
order:float = 0
writeLog bool false
@Label :str = Write Log
@Description :str = Write log file with statistics about this export session.
@Order :float = 7005
@Group name:str = Advanced Settings
order:float = 5
shapeNameDelimiter str _
@Label :str = Shape Name Delimiter
@Description :str = Delimiting character for resolution of shape name clashes.
@Order :float = 7060
@Group name:str = Advanced Settings
order:float = 5
existingFiles str OVERWRITE
@Label :str = Existing Files
@Description :str = Specifies how files should be written during the export run. The log file will be written anyways.
@Order :float = 7100
@Group name:str = Advanced Settings
order:float = 5
@Range OVERWRITE:str = Overwrite existing files
SKIP:str = Skip existing files
compression bool true
@Label :str = Compression
@Description :str = DEBUG OPTION: Compress exported files.
@Order :float = 7040
@Group name:str = Advanced Settings
order:float = 5
@Hidden
ignoreLayers bool true
@Label :str = Combine Layers
@Description :str = Ignores the different layers and merges them into one layer.
@Order :float = 1029
@Group name:str = General Settings
order:float = 0
emitReports bool true
@Label :str = Emit Reports
@Description :str = Export CGA reports generated on models.
@Order :float = 1030
@Group name:str = General Settings
order:float = 0
writePackage bool true
@Label :str = Write Package
@Description :str = DEBUG OPTION: Bundle the exported files into a scene package.
@Order :float = 7050
@Group name:str = Advanced Settings
order:float = 5
@Hidden
sceneType str Global
@Label :str = Scene Environment
@Description :str = Specifies whether a local or a global scene should be created.
@Order :float = 7000
@Group name:str = Advanced Settings
order:float = 5
@Range Local:str = Create a local scene
Global:str = Create a global scene
layerEnabled bool_array
@Label :str = Layer Enabled
@Description :str = Layer enabled.
@Order :float = 2090
@Group name:str = Layer Settings
order:float = 6
@PerLayer layerDefault:bool = true
sceneWkid str 32631
@Label :str = Scene CS WKID
@Description :str = Specifies the coordinate system WKID of the scene.
@Order :float = 7200
@Group name:str = Advanced Settings
order:float = 5
@Hidden
sceneAuth str EPSG
@Label :str = Scene CS Authority
@Description :str = Specifies the coordinate system authority of the scene.
@Order :float = 7210
@Group name:str = Advanced Settings
order:float = 5
@Hidden
forceLoading bool false
@Label :str = Force Layer loading
@Description :str = Force loading of this layer in clients.
@Order :float = 7230
@Group name:str = Advanced Settings
order:float = 5
@Hidden
layerUID str_array
@Label :str = Layer UID
@Description :str = Unique layer identifier.
@Order :float = 20101
@Group name:str = Layer Settings
order:float = 6
@PerLayer layerDefault:str =
@Hidden
layerName str_array
@Label :str = Layer Name
@Description :str = Layer name.
@Order :float = 20100
@Group name:str = Layer Settings
order:float = 6
@PerLayer layerDefault:str =
layerTextureQuality float_array
@Label :str = Texture Quality
@Description :str = Set texture quality for lossy texture encoders.
@Order :float = 22010
@Group name:str = Layer Settings
order:float = 6
@Range 0:float = 0.1
1:float = 1
@PerLayer layerDefault:float = 1
layerTextureCompression int_array
@Label :str = Texture Compression
@Description :str = Set texture compression for lossless texture encoders.
@Order :float = 22020
@Group name:str = Layer Settings
order:float = 6
@Range 0:float = 1
1:float = 9
@PerLayer layerDefault:float = 9
layerTextureScaling float_array
@Label :str = Texture Scaling
@Description :str = Scale all textures in layer by a factor.
@Order :float = 22030
@Group name:str = Layer Settings
order:float = 6
@Range 0:float = 0.1
1:float = 1
@PerLayer layerDefault:float = 1
layerTextureMaxDimension int_array
@Label :str = Max Texture Dimension
@Description :str = Limit maximum texture dimension (i.e. scale proportionally)
@Order :float = 22040
@Group name:str = Layer Settings
order:float = 6
@Range 0:float = 0
1:float = 16384
@PerLayer layerDefault:float = 2048
layerFeatureGranularity str_array
@Label :str = Feature Granularity (for Models)
@Description :str = Defines the granularity of a feature.
@Order :float = 20140
@Group name:str = Layer Settings
order:float = 6
@Range FEATURE_PER_SHAPE:str = One Feature Per Shape
FEATURE_PER_LEAF_SHAPE:str = One Feature Per Leaf Shape
@PerLayer layerDefault:float = 0
layerBackfaceCulling bool_array
@Label :str = Backface culling
@Description :str = Activate backface culling.
@Order :float = 20200
@Group name:str = Layer Settings
order:float = 6
@PerLayer layerDefault:bool = false

JPEG Encoder (com.esri.prt.codecs.JPGEncoder)

Encodes images and textures into the JPEG format.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
textureBase64 bool false
@Label :str = Base64 Encoding
@Description :str = Convert to Base64 after encoding.
@Order :float = 15130
@Group name:str = Texture Settings
order:float = 4
textureName str texture.jpg
@Label :str = Texture Name
@Description :str = Texture base name.
@Order :float = 15100
@Group name:str = Texture Settings
order:float = 4
textureMaxDimension int 0
@Label :str = Maximum Size
@Description :str = Maximum size of texture resolution (0 = no limit).
@Order :float = 15110
@Group name:str = Texture Settings
order:float = 4
textureScalingFactor float 1.0
@Label :str = Scaling Factor
@Description :str = Texture scaling factor.
@Order :float = 15120
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 0.1
1:float = 1
textureQuality float 1.0
@Label :str = JPG Quality
@Description :str = JPG image quality factor.
@Order :float = 16100
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 0.1
1:float = 1
textureFixedDimensions int_array
@Label :str = Fixed Size
@Description :str = Fixed texture width and height (priority over scaling option).
@Order :float = 15125
@Group name:str = Texture Settings
order:float = 4
@Point2D
textureFlipH bool false
@Label :str = Flip Horizontally
@Description :str = Flip texture horizontally before encoding.
@Order :float = 15140
@Group name:str = Texture Settings
order:float = 4
textureAddAlphaMask bool false
@Label :str = Append zipped alpha mask.
@Description :str = Append alpha channel as zipped byte array.
@Order :float = 16200
@Group name:str = Texture Settings
order:float = 4

LERC Encoder (com.esri.prt.codecs.LercEncoder)

Encodes images and textures into the LERC format.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
textureName str texture.ext
@Label :str = Texture Name
@Description :str = Texture base name.
@Order :float = 15100
@Group name:str = Texture Settings
order:float = 4
textureMaxError float 0.1000000014901161
@Label :str = Encoding Error
@Description :str = Maximum encoding error.
@Order :float = 15200
@Group name:str = Texture Settings
order:float = 4
textureFlipH bool false
@Label :str = Flip Horizontally
@Description :str = Flip texture horizontally before encoding.
@Order :float = 15140
@Group name:str = Texture Settings
order:float = 4
lercVersion str LERC_V1
@Label :str = Lerc Version
@Description :str = Set the version of lerc to create.
@Order :float = 15300
@Group name:str = Texture Settings
order:float = 4
@Range LERC_V1:str = Lerc Version 1
LERC_V2:str = Lerc Version 2

Wavefront MTL Material Encoder (com.esri.prt.codecs.MTLEncoder)

Converts materials into Wavefront MTL format.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
baseName str prt_mtl_encoder
@Label :str = Base Name
@Description :str = The base name for all files.
@Order :float = 1010
@Group name:str = General Settings
order:float = 0
collectTextures bool true
@Label :str = Collect Textures
@Description :str = Collects all used textures and copies them into the target folder. All texture references are adjusted accordingly.
@Order :float = 4020
@Group name:str = Texture Settings
order:float = 4
existingFiles str OVERWRITE
@Label :str = Existing Files
@Description :str = Specifies how files should be written during the export run. The log file will be written anyways.
@Order :float = 7100
@Group name:str = Advanced Settings
order:float = 5
@Range OVERWRITE:str = Overwrite existing files
SKIP:str = Skip existing files
writeLog bool false
@Label :str = Write Log
@Description :str = Write log file with statistics about this export session.
@Order :float = 7005
@Group name:str = Advanced Settings
order:float = 5

Wavefront OBJ (com.esri.prt.codecs.OBJEncoder)

Encodes geometry into the Wavefront OBJ format.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
memoryBudget int 500
@Label :str = Memory Budget (MBytes)
@Description :str = Specifies the size limit in megabytes per exported file (value 0 = unlimited). Please note: The size is measured on the unoptimized geometry, i.e. the final size may vary. The check is only performed per input shape.
@Order :float = 3020
@Group name:str = Granularity Settings
order:float = 1
errorFallback bool true
@Label :str = Error Fallback
@Description :str = Fall back to start shape geometry, if generation fails. Else, ignore failed start shapes.
@Order :float = 1020
@Group name:str = General Settings
order:float = 0
@Hidden
author str
@Label :str = Author
@Description :str = Author of data.
@Order :float = 0.11
@Group name:str = General Settings
order:float = 0
@Hidden
applicationName str
@Label :str = Application Name
@Description :str = Name of application.
@Order :float = 0.101
@Group name:str = General Settings
order:float = 0
@Hidden
applicationVersion str
@Label :str = Application Version
@Description :str = Version of application.
@Order :float = 0.102
@Group name:str = General Settings
order:float = 0
@Hidden
localOffset str NONE
@Label :str = Local Offset
@Description :str = Local (= per shape or model) offset for exported geometry.
@Order :float = 7010
@Group name:str = Geometry Settings
order:float = 2
@Range NONE:str = None
MODEL_CENTROID:str = Model Centroid
MODEL_CENTROID_BOTTOM:str = Model Centroid Bottom
SHAPE_CENTROID:str = Shape Centroid
SHAPE_CENTROID_BOTTOM:str = Shape Centroid Bottom
applicationString str
@Label :str = Application
@Description :str = Name and version of application.
@Order :float = 0.103
@Group name:str = General Settings
order:float = 0
@Hidden
applicationVendor str
@Label :str = Application Vendor
@Description :str = Vendor of application.
@Order :float = 0.104
@Group name:str = General Settings
order:float = 0
@Hidden
textureCoordinates str FIRST
@Label :str = Texture Coordinates
@Description :str = Choose which - if any - texture coordinate layers to export.
@Order :float = 5040
@Group name:str = Geometry Settings
order:float = 2
@Range NONE:str = Do not write any UVs
FIRST:str = Only write first layer of UVs
fileGranularity str MEMORY_BUDGET
@Label :str = File Granularity
@Description :str = Specifies the partition of the generated geometry into files.
@Order :float = 3010
@Group name:str = Granularity Settings
order:float = 1
@Range MEMORY_BUDGET:str = One file as long as Memory Budget is not exceeded
START_SHAPE:str = One file per start shape
atlasAddWrapBorder bool true
@Label :str = Texture Atlas Border
@Description :str = Add a border of clamped pixels to protect against wrap mode bleeding.
@Order :float = 4060
@Group name:str = Texture Settings
order:float = 4
baseName str base_name
@Label :str = Base Name
@Description :str = The base name for all files.
@Order :float = 1010
@Group name:str = General Settings
order:float = 0
texcoordPrecision float 1.0e-04
@Label :str = Texture Coordinate Precision
@Description :str = Specifies the output precision for texels.
@Order :float = 9030
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
meshGranularity str PER_MATERIAL
@Label :str = Mesh Granularity
@Description :str = Specifies the processing of meshes.
@Order :float = 3040
@Group name:str = Granularity Settings
order:float = 1
@Range AS_GENERATED:str = Do not merge any meshes
PER_MATERIAL:str = Merge meshes by material
vertexNormals str PASS
@Label :str = Vertex Normals
@Description :str = Controls the export of vertex normals.
@Order :float = 5020
@Group name:str = Geometry Settings
order:float = 2
@Range PASS:str = Write vertex normals
NONE:str = Do not write any vertex normals
SET_MISSING:str = Write face normal if vertex normal is missing
SET_ALL:str = Always write face normal
mergeNormals bool true
@Label :str = Merge Normals Within Precision
@Description :str = Finds parallel normals (using the precision distance) and shares their index.
@Order :float = 9050
@Group name:str = Geometry Settings
order:float = 2
globalOffset float_array
@Label :str = Global Offset
@Description :str = Global (= for all shapes/models) offset for exported geometry.
@Order :float = 7020
@Group name:str = Geometry Settings
order:float = 2
@Point3D
vertexPrecision float 0.001
@Label :str = Vertex Precision
@Description :str = Specifies the output precision for vertices.
@Order :float = 9010
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
createTextureAtlases bool false
@Label :str = Create Texture Atlases
@Description :str = Creates texture atlases which combine a set of textures into one, thus reducing the number of textures and materials. All textures except COLORMAPs are removed.
@Order :float = 4030
@Group name:str = Texture Settings
order:float = 4
normalPrecision float 0.001
@Label :str = Normal Precision
@Description :str = Specifies the output precision for normals.
@Order :float = 9020
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
facesWithHoles str TRIANGULATE_FACES_WITH_HOLES
@Label :str = Faces With Holes
@Description :str = Specifies how faces with holes should be handled during the export.
@Order :float = 9080
@Group name:str = Geometry Settings
order:float = 2
@Range TRIANGULATE_FACES_WITH_HOLES:str = Triangulate faces with holes
DISCARD_HOLES:str = Discard holes
CONVERT_HOLES_TO_FACES:str = Convert holes to faces
mergeVertices bool true
@Label :str = Merge Vertices Within Precision
@Description :str = Finds co-incidental vertices (using the precision distance) and shares their index.
@Order :float = 9040
@Group name:str = Geometry Settings
order:float = 2
mergeTexcoords bool true
@Label :str = Merge Texture Coordinates Within Precision
@Description :str = Finds identical texture coordinates (using the precision distance) and shares their index.
@Order :float = 9060
@Group name:str = Geometry Settings
order:float = 2
triangulateMeshes bool false
@Label :str = Triangulate Meshes
@Description :str = Triangulate resulting meshes.
@Order :float = 9070
@Group name:str = Geometry Settings
order:float = 2
includeMaterials bool true
@Label :str = Include Materials
@Description :str = Exports material definitions (e.g. color, textures, ...).
@Order :float = 4010
@Group name:str = Material Settings
order:float = 3
collectTextures bool true
@Label :str = Collect Textures
@Description :str = Collects all used textures and copies them into the target folder. All texture references are adjusted accordingly.
@Order :float = 4020
@Group name:str = Texture Settings
order:float = 4
maxAtlasDim int 11
@Label :str = Texture Atlas Max Dimension (2^n)
@Description :str = Specifies the maximal dimension of the texture atlases in power-of-2 pixels, e.g. 11 gives a 2048x2048 Atlas.
@Order :float = 4040
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 4
1:float = 16
shapeNameDelimiter str _
@Label :str = Shape Name Delimiter
@Description :str = Delimiting character for resolution of shape name clashes.
@Order :float = 7060
@Group name:str = Advanced Settings
order:float = 5
existingFiles str OVERWRITE
@Label :str = Existing Files
@Description :str = Specifies how files should be written during the export run. The log file will be written anyways.
@Order :float = 7100
@Group name:str = Advanced Settings
order:float = 5
@Range OVERWRITE:str = Overwrite existing files
SKIP:str = Skip existing files
writeLog bool false
@Label :str = Write Log
@Description :str = Write log file with statistics about this export session.
@Order :float = 7005
@Group name:str = Advanced Settings
order:float = 5

PNG Encoder (com.esri.prt.codecs.PNGEncoder)

Encodes images and textures into the PNG format.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
textureName str texture.png
@Label :str = Texture Name
@Description :str = Texture base name.
@Order :float = 15100
@Group name:str = Texture Settings
order:float = 4
textureBase64 bool false
@Label :str = Base64 Encoding
@Description :str = Convert to Base64 after encoding.
@Order :float = 15130
@Group name:str = Texture Settings
order:float = 4
textureMaxDimension int 0
@Label :str = Maximum Size
@Description :str = Maximum size of texture resolution (0 = no limit).
@Order :float = 15110
@Group name:str = Texture Settings
order:float = 4
textureScalingFactor float 1.0
@Label :str = Scaling Factor
@Description :str = Texture scaling factor.
@Order :float = 15120
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 0.1
1:float = 1
textureFixedDimensions int_array
@Label :str = Fixed Size
@Description :str = Fixed texture width and height (priority over scaling option).
@Order :float = 15125
@Group name:str = Texture Settings
order:float = 4
@Point2D
textureFlipH bool false
@Label :str = Flip Horizontally
@Description :str = Flip texture horizontally before encoding.
@Order :float = 15140
@Group name:str = Texture Settings
order:float = 4
textureCompression int 6
@Label :str = PNG Image Compression
@Description :str = PNG texture compression.
@Order :float = 17100
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 1
1:float = 9

RAW Encoder (com.esri.prt.codecs.RAWEncoder)

Stores the uncompressed image as data blob.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
textureName str texture.mem
@Label :str = Texture Name
@Description :str = Texture base name.
@Order :float = 15100
@Group name:str = Texture Settings
order:float = 4
textureBase64 bool false
@Label :str = Base64 Encoding
@Description :str = Convert to Base64 after encoding.
@Order :float = 15130
@Group name:str = Texture Settings
order:float = 4
textureMaxDimension int 0
@Label :str = Maximum Size
@Description :str = Maximum size of texture resolution (0 = no limit).
@Order :float = 15110
@Group name:str = Texture Settings
order:float = 4
textureScalingFactor float 1.0
@Label :str = Scaling Factor
@Description :str = Texture scaling factor.
@Order :float = 15120
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 0.1
1:float = 1
textureFixedDimensions int_array
@Label :str = Fixed Size
@Description :str = Fixed texture width and height (priority over scaling option).
@Order :float = 15125
@Group name:str = Texture Settings
order:float = 4
@Point2D
textureFlipH bool false
@Label :str = Flip Horizontally
@Description :str = Flip texture horizontally before encoding.
@Order :float = 15140
@Group name:str = Texture Settings
order:float = 4

Pixar RenderMan (com.esri.prt.codecs.RenderManEncoder)

Encodes geometry to Pixar RenderMan.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
riLib str
@Label :str = RenderMan Library
@Description :str = Filename of library that implements the RenderMan Interface.
@Order :float = 0.19
@Group name:str = General Settings
order:float = 0
errorFallback bool true
@Label :str = Error Fallback
@Description :str = Fall back to start shape geometry, if generation fails. Else, ignore failed start shapes.
@Order :float = 1020
@Group name:str = General Settings
order:float = 0
@Hidden
author str
@Label :str = Author
@Description :str = Author of data.
@Order :float = 0.11
@Group name:str = General Settings
order:float = 0
@Hidden
applicationName str
@Label :str = Application Name
@Description :str = Name of application.
@Order :float = 0.101
@Group name:str = General Settings
order:float = 0
@Hidden
applicationString str
@Label :str = Application
@Description :str = Name and version of application.
@Order :float = 0.103
@Group name:str = General Settings
order:float = 0
@Hidden
localOffset str NONE
@Label :str = Local Offset
@Description :str = Local (= per shape or model) offset for exported geometry.
@Order :float = 7010
@Group name:str = Geometry Settings
order:float = 2
@Range NONE:str = None
MODEL_CENTROID:str = Model Centroid
MODEL_CENTROID_BOTTOM:str = Model Centroid Bottom
SHAPE_CENTROID:str = Shape Centroid
SHAPE_CENTROID_BOTTOM:str = Shape Centroid Bottom
applicationVersion str
@Label :str = Application Version
@Description :str = Version of application.
@Order :float = 0.102
@Group name:str = General Settings
order:float = 0
@Hidden
textureCoordinates str ALL
@Label :str = Texture Coordinates
@Description :str = Choose which - if any - texture coordinate layers to export.
@Order :float = 5040
@Group name:str = Geometry Settings
order:float = 2
@Range NONE:str = Do not write any UVs
FIRST:str = Only write first layer of UVs
ALL:str = Write all UV layers
objectMode str OBJECT
@Label :str = Mesh Enclosure
@Description :str = Select the kind of statement to enclose geometry.
@Order :float = 3100
@Group name:str = Granularity Settings
order:float = 1
@Range OBJECT:str = Use objects
ARCHIVE:str = Use inline archives
applicationVendor str
@Label :str = Application Vendor
@Description :str = Vendor of application.
@Order :float = 0.104
@Group name:str = General Settings
order:float = 0
@Hidden
texcoordPrecision float 1.0e-04
@Label :str = Texture Coordinate Precision
@Description :str = Specifies the minimal distance between texels.
@Order :float = 9030
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
baseName str base_name
@Label :str = Base Name
@Description :str = The base name for all files.
@Order :float = 1010
@Group name:str = General Settings
order:float = 0
outputPath str
@Label :str = Output Path
@Description :str = Path to the output location.
@Order :float = 0.201
@Group name:str = General Settings
order:float = 0
atlasAddWrapBorder bool true
@Label :str = Texture Atlas Border
@Description :str = Add a border of clamped pixels to protect against wrap mode bleeding.
@Order :float = 4060
@Group name:str = Texture Settings
order:float = 4
fileGranularity str MEMORY_BUDGET
@Label :str = File Granularity
@Description :str = Specifies the partition of the generated geometry into files.
@Order :float = 3010
@Group name:str = Granularity Settings
order:float = 1
@Range MEMORY_BUDGET:str = One file as long as Memory Budget is not exceeded
START_SHAPE:str = One file per start shape
memoryBudget int 500
@Label :str = Memory Budget (MBytes)
@Description :str = Specifies the size limit in megabytes per exported file (value 0 = unlimited). Please note: The size is measured on the unoptimized geometry, i.e. the final size may vary. The check is only performed per input shape.
@Order :float = 3020
@Group name:str = Granularity Settings
order:float = 1
meshGranularity str INSTANCED
@Label :str = Mesh Granularity
@Description :str = Specifies the processing of meshes.
@Order :float = 3040
@Group name:str = Granularity Settings
order:float = 1
@Range AS_GENERATED:str = Do not merge any meshes
PER_MATERIAL:str = Merge meshes by material
INSTANCED:str = Reuse asset instances, merge generated meshes by material
writeLog bool false
@Label :str = Write Log
@Description :str = Write log file with statistics about this export session.
@Order :float = 7005
@Group name:str = Advanced Settings
order:float = 5
mergeNormals bool true
@Label :str = Merge Normals Within Precision
@Description :str = Finds parallel normals (using the precision distance) and shares their index.
@Order :float = 9050
@Group name:str = Geometry Settings
order:float = 2
vertexNormals str PASS
@Label :str = Vertex Normals
@Description :str = Controls the export of vertex normals.
@Order :float = 5020
@Group name:str = Geometry Settings
order:float = 2
@Range PASS:str = Write vertex normals
NONE:str = Do not write any vertex normals
SET_MISSING:str = Write face normal if vertex normal is missing
SET_ALL:str = Always write face normal
globalOffset float_array
@Label :str = Global Offset
@Description :str = Global (= for all shapes/models) offset for exported geometry.
@Order :float = 7020
@Group name:str = Geometry Settings
order:float = 2
@Point3D
templateShaderName str
@Label :str = Template Shader Name
@Description :str = Name of shader in RenderMan shader template file.
@Order :float = 7096
@Group name:str = Advanced Settings
order:float = 5
camRotate float_array
@Label :str = Camera Rotation
@Description :str = Rotation of the camera.
@Order :float = 7092
@Group name:str = Advanced Settings
order:float = 5
createTextureAtlases bool false
@Label :str = Create Texture Atlases
@Description :str = Creates texture atlases which combine a set of textures into one, thus reducing the number of textures and materials. All textures except COLORMAPs are removed.
@Order :float = 4030
@Group name:str = Texture Settings
order:float = 4
vertexPrecision float 0.001
@Label :str = Vertex Precision
@Description :str = Specifies the minimal distance between vertices.
@Order :float = 9010
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
facesWithHoles str PASS
@Label :str = Faces With Holes
@Description :str = Specifies how faces with holes should be handled during the export.
@Order :float = 9080
@Group name:str = Geometry Settings
order:float = 2
@Range PASS:str = Write as holes
TRIANGULATE_FACES_WITH_HOLES:str = Triangulate faces with holes
DISCARD_HOLES:str = Discard holes
CONVERT_HOLES_TO_FACES:str = Convert holes to faces
normalPrecision float 0.001
@Label :str = Normal Precision
@Description :str = Specifies the minimal difference between normals.
@Order :float = 9020
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
shaderTemplate str
@Label :str = Shader Template
@Description :str = Name of RenderMan shader template file.
@Order :float = 7095
@Group name:str = Advanced Settings
order:float = 5
mergeVertices bool true
@Label :str = Merge Vertices Within Precision
@Description :str = Finds co-incidental vertices (using the precision distance) and shares their index.
@Order :float = 9040
@Group name:str = Geometry Settings
order:float = 2
mergeTexcoords bool true
@Label :str = Merge Texture Coordinates Within Precision
@Description :str = Finds identical texture coordinates (using the precision distance) and shares their index.
@Order :float = 9060
@Group name:str = Geometry Settings
order:float = 2
triangulateMeshes bool false
@Label :str = Triangulate Meshes
@Description :str = Triangulate resulting meshes.
@Order :float = 9070
@Group name:str = Geometry Settings
order:float = 2
includeMaterials bool true
@Label :str = Include Materials
@Description :str = Exports material definitions (e.g. color, textures, ...).
@Order :float = 4010
@Group name:str = Material Settings
order:float = 3
collectTextures bool true
@Label :str = Collect Textures
@Description :str = Collects all used textures and copies them into the target folder. All texture references are adjusted accordingly.
@Order :float = 4020
@Group name:str = Texture Settings
order:float = 4
maxAtlasDim int 11
@Label :str = Texture Atlas Max Dimension (2^n)
@Description :str = Specifies the maximal dimension of the texture atlases in power-of-2 pixels, e.g. 11 gives a 2048x2048 Atlas.
@Order :float = 4040
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 4
1:float = 16
fileType str TEXT
@Label :str = File Type
@Description :str = Specifies geometry file type.
@Order :float = 7030
@Group name:str = Advanced Settings
order:float = 5
@Range TEXT:str = Text
BINARY:str = Binary
existingFiles str OVERWRITE
@Label :str = Existing Files
@Description :str = Specifies how files should be written during the export run. The log file will be written anyways.
@Order :float = 7100
@Group name:str = Advanced Settings
order:float = 5
@Range OVERWRITE:str = Overwrite existing files
SKIP:str = Skip existing files
compression bool false
@Label :str = Compression
@Description :str = Compress exported files.
@Order :float = 7040
@Group name:str = Advanced Settings
order:float = 5
shapeNameDelimiter str _
@Label :str = Shape Name Delimiter
@Description :str = Delimiting character for resolution of shape name clashes.
@Order :float = 7060
@Group name:str = Advanced Settings
order:float = 5
masterFile bool false
@Label :str = Master File
@Description :str = Write master scene file.
@Order :float = 7070
@Group name:str = Advanced Settings
order:float = 5
addCameraData bool true
@Label :str = Include Camera Data
@Description :str = Adds the minimal set of commands (e.g. camera) to the master file to make it directly renderable.
@Order :float = 7090
@Group name:str = Advanced Settings
order:float = 5
camTranslate float_array
@Label :str = Camera Translation
@Description :str = Translation of the camera.
@Order :float = 7091
@Group name:str = Advanced Settings
order:float = 5

Esri Shapebuffer Encoder (com.esri.prt.codecs.ShapeBufferEncoder)

Encodes geometry into the esri shape buffer format (revision 2012-02-17).

Known Initial Shape Attributes

Key Type Default Value Annotations
/enc/layerUID str
@Description :str = The unique ID of the layer the initial shape (object) belongs to.
@Mandatory

Default Encoder Options

Key Type Default Value Annotations
applicationName str
@Label :str = Application Name
@Description :str = Name of application.
@Order :float = 0.101
@Group name:str = General Settings
order:float = 0
@Hidden
emitReports str FULL
@Label :str = Emit Reports
@Description :str = Whether and how to emit GA reports reports on models.
@Order :float = 1030
@Group name:str = General Settings
order:float = 0
@Range NONE:str = Do not export any reports
SUM_ONLY:str = Only export the sum of the reports
FULL:str = Export the full summary of the reports
featureGranularity str_array
@Label :str = Feature Granularity (for Models)
@Description :str = Defines the granularity of a feature.
@Order :float = 10
@Group name:str = Layer Settings
order:float = 6
@Range FEATURE_PER_SHAPE:str = One Feature Per Shape
FEATURE_PER_LEAF_SHAPE:str = One Feature Per Leaf Shape
@PerLayer layerDefault:float = 0
applicationVersion str
@Label :str = Application Version
@Description :str = Version of application.
@Order :float = 0.102
@Group name:str = General Settings
order:float = 0
@Hidden
generateModels bool_array
@Label :str = Enable Model Generation
@Description :str = Enable Model Generation
@Order :float = 20104
@Group name:str = General Settings
order:float = 0
@PerLayer layerDefault:bool = true
@Hidden
applicationString str
@Label :str = Application
@Description :str = Name and version of application.
@Order :float = 0.103
@Group name:str = General Settings
order:float = 0
@Hidden
applicationVendor str
@Label :str = Application Vendor
@Description :str = Vendor of application.
@Order :float = 0.104
@Group name:str = General Settings
order:float = 0
@Hidden
encodeInitialShapes str_array
@Label :str = Encode InitialShapes
@Description :str = Selects how initial shapes geometry is encoded.
@Order :float = 20105
@Group name:str = General Settings
order:float = 0
@Range shapeNull:str = Do not encode initial shapes.
shapeGeneralPolygon:str = Encode initial shapes as polygons.
shapeGeneralMultiPatch:str = Encode initial shapes as multipatches.
@PerLayer layerDefault:float = 0
@Hidden
layerUID str_array
@Label :str = Layer UID
@Description :str = Unique layer identifier.
@Order :float = 20101
@Group name:str = Layer Settings
order:float = 6
@PerLayer layerDefault:str =
@Hidden
writeLog bool false
@Label :str = Write Log
@Description :str = Write log file with statistics about this export session.
@Order :float = 7005
@Group name:str = Advanced Settings
order:float = 5
triangulateMeshes bool true
@Label :str = Triangulate Meshes
@Description :str = Triangulate resulting meshes.
@Order :float = 9070
@Group name:str = Geometry Settings
order:float = 2
facesWithHoles str PASS
@Label :str = Faces With Holes
@Description :str = Specifies how faces with holes should be handled during the export.
@Order :float = 9080
@Group name:str = Geometry Settings
order:float = 2
@Range PASS:str = Write as holes
TRIANGULATE_FACES_WITH_HOLES:str = Triangulate faces with holes
DISCARD_HOLES:str = Discard holes
CONVERT_HOLES_TO_FACES:str = Convert holes to faces
shapeNameDelimiter str _
@Label :str = Shape Name Delimiter
@Description :str = Delimiting character for resolution of shape name clashes.
@Order :float = 7060
@Group name:str = Advanced Settings
order:float = 5
textureQuality float 1.0
@Label :str = JPG Quality
@Description :str = JPG image quality factor.
@Order :float = 16100
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 0.1
1:float = 1
globalScalingFactor float 1.0
@Label :str = Global Scaling Factor
@Description :str = Scaling factor for vertex coordinates.
@Order :float = 7025
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 10000

TIFF Encoder (com.esri.prt.codecs.TIFFEncoder)

Encodes images and textures into the TIFF format.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
textureName str texture.tif
@Label :str = Texture Name
@Description :str = Texture base name.
@Order :float = 15100
@Group name:str = Texture Settings
order:float = 4
textureBase64 bool false
@Label :str = Base64 Encoding
@Description :str = Convert to Base64 after encoding.
@Order :float = 15130
@Group name:str = Texture Settings
order:float = 4
textureMaxDimension int 0
@Label :str = Maximum Size
@Description :str = Maximum size of texture resolution (0 = no limit).
@Order :float = 15110
@Group name:str = Texture Settings
order:float = 4
textureScalingFactor float 1.0
@Label :str = Scaling Factor
@Description :str = Texture scaling factor.
@Order :float = 15120
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 0.1
1:float = 1
textureFixedDimensions int_array
@Label :str = Fixed Size
@Description :str = Fixed texture width and height (priority over scaling option).
@Order :float = 15125
@Group name:str = Texture Settings
order:float = 4
@Point2D
textureFlipH bool false
@Label :str = Flip Horizontally
@Description :str = Flip texture horizontally before encoding.
@Order :float = 15140
@Group name:str = Texture Settings
order:float = 4

E-On Software Vue (com.esri.prt.codecs.VOBEncoder)

Encodes geometry into the E-On Software Vue VOB format.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
errorFallback bool true
@Label :str = Error Fallback
@Description :str = Fall back to start shape geometry, if generation fails. Else, ignore failed start shapes.
@Order :float = 1020
@Group name:str = General Settings
order:float = 0
@Hidden
author str
@Label :str = Author
@Description :str = Author of data.
@Order :float = 0.11
@Group name:str = General Settings
order:float = 0
@Hidden
applicationName str
@Label :str = Application Name
@Description :str = Name of application.
@Order :float = 0.101
@Group name:str = General Settings
order:float = 0
@Hidden
applicationString str
@Label :str = Application
@Description :str = Name and version of application.
@Order :float = 0.103
@Group name:str = General Settings
order:float = 0
@Hidden
applicationVersion str
@Label :str = Application Version
@Description :str = Version of application.
@Order :float = 0.102
@Group name:str = General Settings
order:float = 0
@Hidden
localOffset str NONE
@Label :str = Local Offset
@Description :str = Local (= per shape or model) offset for exported geometry.
@Order :float = 7010
@Group name:str = Geometry Settings
order:float = 2
@Range NONE:str = None
MODEL_CENTROID:str = Model Centroid
MODEL_CENTROID_BOTTOM:str = Model Centroid Bottom
SHAPE_CENTROID:str = Shape Centroid
SHAPE_CENTROID_BOTTOM:str = Shape Centroid Bottom
applicationVendor str
@Label :str = Application Vendor
@Description :str = Vendor of application.
@Order :float = 0.104
@Group name:str = General Settings
order:float = 0
@Hidden
textureCoordinates str FIRST
@Label :str = Texture Coordinates
@Description :str = Choose which - if any - texture coordinate layers to export.
@Order :float = 5040
@Group name:str = Geometry Settings
order:float = 2
@Range NONE:str = Do not write any UVs
FIRST:str = Only write first layer of UVs
fileGranularity str MEMORY_BUDGET
@Label :str = File Granularity
@Description :str = Specifies the partition of the generated geometry into files.
@Order :float = 3010
@Group name:str = Granularity Settings
order:float = 1
@Range MEMORY_BUDGET:str = One file as long as Memory Budget is not exceeded
START_SHAPE:str = One file per start shape
atlasAddWrapBorder bool true
@Label :str = Texture Atlas Border
@Description :str = Add a border of clamped pixels to protect against wrap mode bleeding.
@Order :float = 4060
@Group name:str = Texture Settings
order:float = 4
baseName str base_name
@Label :str = Base Name
@Description :str = The base name for all files.
@Order :float = 1010
@Group name:str = General Settings
order:float = 0
texcoordPrecision float 1.0e-04
@Label :str = Texture Coordinate Precision
@Description :str = Specifies the minimal distance between texels.
@Order :float = 9030
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
outputPath str
@Label :str = Output Path
@Description :str = Path to the output location.
@Order :float = 0.201
@Group name:str = General Settings
order:float = 0
memoryBudget int 500
@Label :str = Memory Budget (MBytes)
@Description :str = Specifies the size limit in megabytes per exported file (value 0 = unlimited). Please note: The size is measured on the unoptimized geometry, i.e. the final size may vary. The check is only performed per input shape.
@Order :float = 3020
@Group name:str = Granularity Settings
order:float = 1
meshGranularity str PER_MATERIAL
@Label :str = Mesh Granularity
@Description :str = Specifies the processing of meshes.
@Order :float = 3040
@Group name:str = Granularity Settings
order:float = 1
@Range AS_GENERATED:str = Do not merge any meshes
PER_MATERIAL:str = Merge meshes by material
writeLog bool false
@Label :str = Write Log
@Description :str = Write log file with statistics about this export session.
@Order :float = 7005
@Group name:str = Advanced Settings
order:float = 5
vertexNormals str SET_MISSING
@Label :str = Vertex Normals
@Description :str = Controls the export of vertex normals.
@Order :float = 5020
@Group name:str = Geometry Settings
order:float = 2
@Range SET_MISSING:str = Write face normal if vertex normal is missing
SET_ALL:str = Always write face normal
mergeNormals bool true
@Label :str = Merge Normals Within Precision
@Description :str = Finds parallel normals (using the precision distance) and shares their index.
@Order :float = 9050
@Group name:str = Geometry Settings
order:float = 2
globalOffset float_array
@Label :str = Global Offset
@Description :str = Global (= for all shapes/models) offset for exported geometry.
@Order :float = 7020
@Group name:str = Geometry Settings
order:float = 2
@Point3D
vertexPrecision float 0.001
@Label :str = Vertex Precision
@Description :str = Specifies the minimal distance between vertices.
@Order :float = 9010
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
createTextureAtlases bool false
@Label :str = Create Texture Atlases
@Description :str = Creates texture atlases which combine a set of textures into one, thus reducing the number of textures and materials. All textures except COLORMAPs are removed.
@Order :float = 4030
@Group name:str = Texture Settings
order:float = 4
normalPrecision float 0.001
@Label :str = Normal Precision
@Description :str = Specifies the minimal difference between normals.
@Order :float = 9020
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
mergeVertices bool true
@Label :str = Merge Vertices Within Precision
@Description :str = Finds co-incidental vertices (using the precision distance) and shares their index.
@Order :float = 9040
@Group name:str = Geometry Settings
order:float = 2
mergeTexcoords bool true
@Label :str = Merge Texture Coordinates Within Precision
@Description :str = Finds identical texture coordinates (using the precision distance) and shares their index.
@Order :float = 9060
@Group name:str = Geometry Settings
order:float = 2
includeMaterials bool true
@Label :str = Include Materials
@Description :str = Exports material definitions (e.g. color, textures, ...).
@Order :float = 4010
@Group name:str = Material Settings
order:float = 3
collectTextures bool true
@Label :str = Collect Textures
@Description :str = Collects all used textures and copies them into the target folder. All texture references are adjusted accordingly.
@Order :float = 4020
@Group name:str = Texture Settings
order:float = 4
maxAtlasDim int 11
@Label :str = Texture Atlas Max Dimension (2^n)
@Description :str = Specifies the maximal dimension of the texture atlases in power-of-2 pixels, e.g. 11 gives a 2048x2048 Atlas.
@Order :float = 4040
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 4
1:float = 16
shapeNameDelimiter str _
@Label :str = Shape Name Delimiter
@Description :str = Delimiting character for resolution of shape name clashes.
@Order :float = 7060
@Group name:str = Advanced Settings
order:float = 5
existingFiles str OVERWRITE
@Label :str = Existing Files
@Description :str = Specifies how files should be written during the export run. The log file will be written anyways.
@Order :float = 7100
@Group name:str = Advanced Settings
order:float = 5
@Range OVERWRITE:str = Overwrite existing files
SKIP:str = Skip existing files

CityEngine WebScene (com.esri.prt.codecs.WebSceneEncoder)

Exports a scene into the Esri WebScene format.

Known Initial Shape Attributes

Key Type Default Value Annotations
/enc/metaDataOrder str_array
@Description :str = Defines an order on the entries in the '/enc/metaData/' namespace.
/enc/layerUID str
@Description :str = The unique ID of the layer the initial shape (object) belongs to.
@Mandatory
/enc/layerName str
@Description :str = The name of the layer the initial shape (object) belongs to.
@Mandatory
/enc/com.esri.prt.codecs.WebSceneEncoder/elevationMode str relativeToGround
@Description :str = Controls the 'elevationMode' attribute of a CityEngine WebScene object.
@Range clampToGround:str =
relativeToGround:str =
altitude:str =
@Mandatory

Default Encoder Options

Key Type Default Value Annotations
errorFallback bool true
@Label :str = Error Fallback
@Description :str = Fall back to start shape geometry, if generation fails. Else, ignore failed start shapes.
@Order :float = 1020
@Group name:str = General Settings
order:float = 0
@Hidden
geometryBase64 bool true
@Label :str = Geometry As Base64
@Description :str = Encode geometry data into Base64.
@Order :float = 2040
@Group name:str = Geometry Settings
order:float = 2
author str
@Label :str = Author
@Description :str = Author of data.
@Order :float = 0.11
@Group name:str = General Settings
order:float = 0
@Hidden
applicationName str
@Label :str = Application Name
@Description :str = Name of application.
@Order :float = 0.101
@Group name:str = General Settings
order:float = 0
@Hidden
applicationVersion str
@Label :str = Application Version
@Description :str = Version of application.
@Order :float = 0.102
@Group name:str = General Settings
order:float = 0
@Hidden
applicationString str
@Label :str = Application
@Description :str = Name and version of application.
@Order :float = 0.103
@Group name:str = General Settings
order:float = 0
@Hidden
injectJSON str_array
@Label :str = injectJSON
@Description :str = JSON data to be injected, eg. injectJSON[n] = 'objects', injectJSON[n+1] = 'valid json block', etc...
@Order :float = 999
@Group name:str = Advanced Settings
order:float = 5
@Hidden
layerTextureEncoding str_array
@Label :str = Textures
@Description :str = Specifies whether and how the textures should be encoded.
@Order :float = 20150
@Group name:str = Layer Settings
order:float = 6
@Range SKIP:str = No textures
TRY_TO_REUSE_SOURCE:str = Try to keep source texture data; reencode only if necessary
REENCODE:str = Reencode textures
@PerLayer layerDefault:float = 2
applicationVendor str
@Label :str = Application Vendor
@Description :str = Vendor of application.
@Order :float = 0.104
@Group name:str = General Settings
order:float = 0
@Hidden
baseName str base_name
@Label :str = Scene Name
@Description :str = The WebScene name.
@Order :float = 1010
@Group name:str = General Settings
order:float = 0
texcoordPrecision float 1.0e-04
@Label :str = Texture Coordinate Precision
@Description :str = Specifies the minimal distance between texels.
@Order :float = 9030
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
wkid int 0
@Label :str = WKID
@Description :str = The WKID of the scene.
@Order :float = 2000
@Group name:str = General Settings
order:float = 0
vertexPrecision float 0.001
@Label :str = Vertex Precision
@Description :str = Specifies the minimal distance between vertices.
@Order :float = 9010
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
layerEnabled bool_array
@Label :str = Layer Enabled
@Description :str = Layer enabled.
@Order :float = 2090
@Group name:str = Layer Settings
order:float = 6
@PerLayer layerDefault:bool = true
normalPrecision float 0.001
@Label :str = Normal Precision
@Description :str = Specifies the minimal difference between normals.
@Order :float = 9020
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
includeMaterials bool true
@Label :str = Include Materials
@Description :str = Exports material definitions (e.g. color, textures, ...).
@Order :float = 4010
@Group name:str = Material Settings
order:float = 3
layerGroup str_array
@Label :str = Group Name
@Description :str = Layer group name (empty = no group).
@Order :float = 20110
@Group name:str = Layer Settings
order:float = 6
@PerLayer layerDefault:str =
compression bool true
@Label :str = Compression
@Description :str = Compress exported files.
@Order :float = 7040
@Group name:str = Advanced Settings
order:float = 5
existingFiles str OVERWRITE
@Label :str = Existing Files
@Description :str = Specifies how files should be written during the export run. The log file will be written anyways.
@Order :float = 7100
@Group name:str = Advanced Settings
order:float = 5
@Range OVERWRITE:str = Overwrite existing files
SKIP:str = Skip existing files
shapeNameDelimiter str _
@Label :str = Shape Name Delimiter
@Description :str = Delimiting character for resolution of shape name clashes.
@Order :float = 7060
@Group name:str = Advanced Settings
order:float = 5
writeLog bool false
@Label :str = Write Log
@Description :str = Write log file with statistics about this export session.
@Order :float = 7005
@Group name:str = Advanced Settings
order:float = 5
initialCameraName str Perspective
@Label :str = Initial Camera
@Description :str = The name of the initial camera.
@Order :float = 999.5
@Group name:str = General Settings
order:float = 0
@Hidden
layerUID str_array
@Label :str = Layer UID
@Description :str = Unique layer identifier.
@Order :float = 20101
@Group name:str = Layer Settings
order:float = 6
@PerLayer layerDefault:str =
@Hidden
layerName str_array
@Label :str = Layer Name
@Description :str = Layer name.
@Order :float = 20100
@Group name:str = Layer Settings
order:float = 6
@PerLayer layerDefault:str =
layerState str_array
@Label :str = State
@Description :str = Defines the initial layer state.
@Order :float = 20120
@Group name:str = Layer Settings
order:float = 6
@Range VISIBLE:str = Visible
HIDDEN:str = Hidden
BACKDROP:str = Backdrop
@PerLayer layerDefault:float = 0
layerInteraction str_array
@Label :str = Interaction
@Description :str = Defines object interaction.
@Order :float = 20130
@Group name:str = Layer Settings
order:float = 6
@Range PICKABLE:str = Pickable
LOCKED:str = Locked
@PerLayer layerDefault:float = 0
layerMetadata str_array
@Label :str = Metadata
@Description :str = Specifies which metadata (attributes, reports) should be added to each shape object.
@Order :float = 20140
@Group name:str = Layer Settings
order:float = 6
@Range NONE:str = None
ATTRIBUTES:str = Attributes
REPORTS:str = Reports
ALL:str = All
@PerLayer layerDefault:float = 3
layerTextureQuality float_array
@Label :str = Texture Quality
@Description :str = Set texture quality for lossy texture encoders.
@Order :float = 20160
@Group name:str = Layer Settings
order:float = 6
@Range 0:float = 0.1
1:float = 1
@PerLayer layerDefault:float = 1
layerTextureCompression int_array
@Label :str = Texture Compression
@Description :str = Set texture compression for lossless texture encoders.
@Order :float = 20170
@Group name:str = Layer Settings
order:float = 6
@Range 0:float = 1
1:float = 9
@PerLayer layerDefault:float = 9
layerTextureScaling float_array
@Label :str = Texture Scaling
@Description :str = Scale all textures in layer by a factor.
@Order :float = 20180
@Group name:str = Layer Settings
order:float = 6
@Range 0:float = 0.1
1:float = 1
@PerLayer layerDefault:float = 1
layerTextureMaxDimension int_array
@Label :str = Max Texture Dimension
@Description :str = Limit maximum texture dimension (i.e. scale proportionally)
@Order :float = 20190
@Group name:str = Layer Settings
order:float = 6
@Range 0:float = 0
1:float = 16384
@PerLayer layerDefault:float = 2048

CityEngine WebScene Object Encoder (com.esri.prt.codecs.WebSceneObjectEncoder)

Encodes geometry into Esri WebScene Objects.

Known Initial Shape Attributes

Key Type Default Value Annotations
/enc/metaDataOrder str_array
@Description :str = Defines an order on the entries in the '/enc/metaData/' namespace.
/enc/layerUID str
@Description :str = The unique ID of the layer the initial shape (object) belongs to.
@Mandatory
/enc/com.esri.prt.codecs.WebSceneObjectEncoder/elevationMode str relativeToGround
@Description :str = Controls the 'elevationMode' attribute of a CityEngine WebScene object.
@Range clampToGround:str =
relativeToGround:str =
altitude:str =
@Mandatory
/enc/layerName str
@Description :str = The name of the layer the initial shape (object) belongs to.
@Mandatory

Default Encoder Options

Key Type Default Value Annotations
includeMaterials bool true
@Label :str = Include Materials
@Description :str = Exports material definitions (e.g. color, textures, ...).
@Order :float = 4010
@Group name:str = Material Settings
order:float = 3
errorFallback bool true
@Label :str = Error Fallback
@Description :str = Fall back to start shape geometry, if generation fails. Else, ignore failed start shapes.
@Order :float = 1020
@Group name:str = General Settings
order:float = 0
@Hidden
objectInteraction str PICKABLE
@Label :str = Object Interaction
@Description :str = Specifies how the objects interact.
@Order :float = 2020
@Group name:str = General Settings
order:float = 0
@Range PICKABLE:str = Pickable
LOCKED:str = Locked
objectMetadata str ALL
@Label :str = Object Metadata
@Description :str = Specifies which metadata (attributes, reports, both) should be added to each shape object.
@Order :float = 2030
@Group name:str = General Settings
order:float = 0
@Range NONE:str = None
ATTRIBUTES:str = Attributes
REPORTS:str = Reports
ALL:str = All
normalPrecision float 0.001
@Label :str = Normal Precision
@Description :str = Specifies the minimal difference between normals.
@Order :float = 9020
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
geometryBase64 bool true
@Label :str = Geometry As Base64
@Description :str = Encode geometry data into Base64.
@Order :float = 2040
@Group name:str = Geometry Settings
order:float = 2
textureEnable str REENCODE
@Label :str = Object Metadata
@Description :str = Specifies whether and how the textures should be encoded.
@Order :float = 4030
@Group name:str = Texture Settings
order:float = 4
@Range SKIP:str = No textures
TRY_TO_REUSE_SOURCE:str = Try to keep source texture data; reencode only if necessary
REENCODE:str = Reencode textures
vertexPrecision float 0.001
@Label :str = Vertex Precision
@Description :str = Specifies the minimal distance between vertices.
@Order :float = 9010
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
texcoordPrecision float 1.0e-04
@Label :str = Texture Coordinate Precision
@Description :str = Specifies the minimal distance between texels.
@Order :float = 9030
@Group name:str = Geometry Settings
order:float = 2
@Range 0:float = 1e-05
1:float = 1
textureMaxDimension int 2048
@Label :str = Maximum Size
@Description :str = Maximum size of texture resolution (0 = no limit).
@Order :float = 15110
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 0
1:float = 16384
textureScalingFactor float 1.0
@Label :str = Scaling Factor
@Description :str = Texture scaling factor.
@Order :float = 15120
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 0.1
1:float = 1
textureQuality float 1.0
@Label :str = JPG Quality
@Description :str = JPG image quality factor.
@Order :float = 16100
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 0.1
1:float = 1
textureCompression int 6
@Label :str = PNG Image Compression
@Description :str = PNG texture compression.
@Order :float = 17100
@Group name:str = Texture Settings
order:float = 4
@Range 0:float = 1
1:float = 9
objectPrefix str
@Label :str = Object Prefix
@Description :str = A prefix for all objects in this encode session.
@Order :float = 2010
@Group name:str = Advanced Settings
order:float = 5
shapeNameDelimiter str _
@Label :str = Shape Name Delimiter
@Description :str = Delimiting character for resolution of shape name clashes.
@Order :float = 7060
@Group name:str = Advanced Settings
order:float = 5

Attribute Eval Encoder (com.esri.prt.core.AttributeEvalEncoder)

Sets the values of (evaluated) shape attributes.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
errorHandling int 2
@Range none:str = No error handling.
fallback:str = Fallback to initial shape geometry.
ignore:str = Silently ignore failed shapes.
name str CGAReport.txt
shapeId int 0

CGA Error Encoder (com.esri.prt.core.CGAErrorEncoder)

Handles errors encountered during CGA execution.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
errorHandling int 2
@Range none:str = No error handling.
fallback:str = Fallback to initial shape geometry.
ignore:str = Silently ignore failed shapes.
name str CGAError.txt

CGA Print Encoder (com.esri.prt.core.CGAPrintEncoder)

Handles the output of the CGA print statement.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
errorHandling int 2
@Range none:str = No error handling.
fallback:str = Fallback to initial shape geometry.
ignore:str = Silently ignore failed shapes.
name str CGAPrint.txt

CGA Report Encoder (com.esri.prt.core.CGAReportEncoder)

Handles report output generated by CGA.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
errorHandling int 2
@Range none:str = No error handling.
fallback:str = Fallback to initial shape geometry.
ignore:str = Silently ignore failed shapes.
name str CGAReport.txt

Occlusion Encoder (com.esri.prt.core.OcclusionEncoder)

Encodes a shape tree into the OcclusionSet for inter-occlusion.

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
errorHandling int 2
@Range none:str = No error handling.
fallback:str = Fallback to initial shape geometry.
ignore:str = Silently ignore failed shapes.

Unreal Engine (Beta) (com.esri.prt.unreal.encoder)

Export selected models to Unreal Editor

Known Initial Shape Attributes

Key Type Default Value Annotations

Default Encoder Options

Key Type Default Value Annotations
outputPath str
baseName str default_name
@Label :str = Base Name
@Order :float = 0
@Group name:str = General Settings
order:float = 0
@Description :str = Sets the name of the written udatasmith file.
meshMerging str perInitialShape
@Label :str = Mesh Merging
@Order :float = 1
@Group name:str = Geometry Settings
order:float = 1
@Description :str = Options to merge meshes.
@Range perInitialShape:str = Per Initial Shape
perInitialShapeByMaterial:str = Per Initial Shape By Material
globally:str = Globally
globallyByMaterial:str = Globally By Material
applicationVendor str
applicationVersion str
metadata str all
@Label :str = Export Metadata
@Order :float = 2030
@Group name:str = General Settings
order:float = 0
@Description :str = Export metadata for all initial shapes. This is only possible if Mesh Merging is set to Per Initial Shape and Instancing is Disabled.
@Range none:str = None
attributes:str = Attributes
reports:str = Reports
all:str = All
applicationName str
errorFallback bool true
@Hidden
instancing str instancingHISM
@Label :str = Instancing
@Order :float = 2
@Group name:str = Geometry Settings
order:float = 1
@Description :str = Options on how to handle instances.
@Range disabled:str = Disabled
useInstancing:str = Use Instancing
instancingHISM:str = Use Instancing with Hierarchical Instanced Static Mesh Components
writeLog bool false
@Label :str = Write Log
@Order :float = 0
@Group name:str = Advanced Settings
order:float = 3
@Description :str = Write log file with statistics about this export session.
globalOffset float_array
@Label :str = Global Offset
@Order :float = 0
@Group name:str = Geometry Settings
order:float = 1
@Point3D

Built-In Decoders

ACE2 Image Decoder (com.esri.prt.codecs.ACE2Decoder)

Reads ACE2 images into textures

Supported URI extensions: .ACE2;

Arc/Info ASCII Grid Image Decoder (com.esri.prt.codecs.ASCDecoder)

Reads Arc/Info ASCII Grid images into textures

Supported URI extensions: .asc;

NOAA NGS Geoid Height Grids Image Decoder (com.esri.prt.codecs.BINDecoder)

Reads NOAA NGS Geoid Height Grids images into textures

Supported URI extensions: .bin;

MS Windows Device Independent Bitmap Image Decoder (com.esri.prt.codecs.BMPDecoder)

Reads MS Windows Device Independent Bitmap images into textures

Supported URI extensions: .bmp;

VTP .bt (Binary Terrain) 1.3 Format Image Decoder (com.esri.prt.codecs.BTDecoder)

Reads VTP .bt (Binary Terrain) 1.3 Format images into textures

Supported URI extensions: .bt;

COLLADA 1.4.1/1.5.x Decoder (com.esri.prt.codecs.ColladaDecoder)

Decodes geometry in COLLADA DAE format.

Supported URI extensions: .dae;

ZMap Plus Grid Image Decoder (com.esri.prt.codecs.DATDecoder)

Reads ZMap Plus Grid images into textures

Supported URI extensions: .dat;

SDTS Raster Image Decoder (com.esri.prt.codecs.DDFDecoder)

Reads SDTS Raster images into textures

Supported URI extensions: .ddf;

USGS Optional ASCII DEM (and CDED) Image Decoder (com.esri.prt.codecs.DEMDecoder)

Reads USGS Optional ASCII DEM (and CDED) images into textures

Supported URI extensions: .dem;

Arc/Info Export E00 GRID Image Decoder (com.esri.prt.codecs.E00Decoder)

Reads Arc/Info Export E00 GRID images into textures

Supported URI extensions: .e00;

Autodesk FBX Decoder (com.esri.prt.codecs.FBXDecoder)

Decodes geometry in the Autodesk Filmbox (FBX) format.

Supported URI extensions: .fbx;

ARC Digitized Raster Graphics Image Decoder (com.esri.prt.codecs.GENDecoder)

Reads ARC Digitized Raster Graphics images into textures

Supported URI extensions: .gen;

Ground-based SAR Applications Testbed File Format (.gff) Image Decoder (com.esri.prt.codecs.GFFDecoder)

Reads Ground-based SAR Applications Testbed File Format (.gff) images into textures

Supported URI extensions: .gff;

Graphics Interchange Format (.gif) Image Decoder (com.esri.prt.codecs.GIFDecoder)

Reads Graphics Interchange Format (.gif) images into textures

Supported URI extensions: .gif;

Khronos glTF Decoder (com.esri.prt.codecs.GLTFDecoder)

Decodes geometry from the glTF format.

Supported URI extensions: .glb;.gltf;

GRIdded Binary (.grb) Image Decoder (com.esri.prt.codecs.GRBDecoder)

Reads GRIdded Binary (.grb) images into textures

Supported URI extensions: .grb;

Northwood Classified Grid Format .grc/.tab Image Decoder (com.esri.prt.codecs.GRCDecoder)

Reads Northwood Classified Grid Format .grc/.tab images into textures

Supported URI extensions: .grc;

Golden Software ASCII Grid (.grd) Image Decoder (com.esri.prt.codecs.GRDDecoder)

Reads Golden Software ASCII Grid (.grd) images into textures

Supported URI extensions: .grd;

NTv2 Datum Grid Shift Image Decoder (com.esri.prt.codecs.GSBDecoder)

Reads NTv2 Datum Grid Shift images into textures

Supported URI extensions: .gsb;

NOAA Vertical Datum .GTX Image Decoder (com.esri.prt.codecs.GTXDecoder)

Reads NOAA Vertical Datum .GTX images into textures

Supported URI extensions: .gtx;

Snow Data Assimilation System Image Decoder (com.esri.prt.codecs.HDRDecoder)

Reads Snow Data Assimilation System images into textures

Supported URI extensions: .hdr;

HF2/HFZ heightfield raster Image Decoder (com.esri.prt.codecs.HF2Decoder)

Reads HF2/HFZ heightfield raster images into textures

Supported URI extensions: .hf2;

SRTMHGT File Format Image Decoder (com.esri.prt.codecs.HGTDecoder)

Reads SRTMHGT File Format images into textures

Supported URI extensions: .hgt;

Erdas Imagine Images (.img) Image Decoder (com.esri.prt.codecs.IMGDecoder)

Reads Erdas Imagine Images (.img) images into textures

Supported URI extensions: .img;

JPEG JFIF Image Decoder (com.esri.prt.codecs.JPGDecoder)

Reads JPEG JFIF images into textures

Supported URI extensions: .jpg;.jpeg;.jpga;

FARSITE v.4 Landscape File (.lcp) Image Decoder (com.esri.prt.codecs.LCPDecoder)

Reads FARSITE v.4 Landscape File (.lcp) images into textures

Supported URI extensions: .lcp;

Japanese DEM (.mem) Image Decoder (com.esri.prt.codecs.MEMDecoder)

Reads Japanese DEM (.mem) images into textures

Supported URI extensions: .mem;

ILWIS Raster Map Image Decoder (com.esri.prt.codecs.MPRDecoder)

Reads ILWIS Raster Map images into textures

Supported URI extensions: .mpr;.mpl;

Wavefront MTL Decoder (com.esri.prt.codecs.MTLDecoder)

Reads materials in Wavefront MTL format.

Supported URI extensions: .mtl;

Envisat Image Format Image Decoder (com.esri.prt.codecs.N1Decoder)

Reads Envisat Image Format images into textures

Supported URI extensions: .n1;

National Imagery Transmission Format Image Decoder (com.esri.prt.codecs.NTFDecoder)

Reads National Imagery Transmission Format images into textures

Supported URI extensions: .ntf;

Wavefront OBJ Decoder (com.esri.prt.codecs.OBJDecoder)

Decodes geometry from the Wavefront OBJ format.

Supported URI extensions: .obj;

PCIDSK Database File Image Decoder (com.esri.prt.codecs.PIXDecoder)

Reads PCIDSK Database File images into textures

Supported URI extensions: .pix;

Portable Network Graphics Image Decoder (com.esri.prt.codecs.PNGDecoder)

Reads Portable Network Graphics images into textures

Supported URI extensions: .png;

Portable Pixmap Format (netpbm) Image Decoder (com.esri.prt.codecs.PNMDecoder)

Reads Portable Pixmap Format (netpbm) images into textures

Supported URI extensions: .pnm;

R Object Data Store Image Decoder (com.esri.prt.codecs.RDADecoder)

Reads R Object Data Store images into textures

Supported URI extensions: .rda;

Idrisi Raster A.1 Image Decoder (com.esri.prt.codecs.RSTDecoder)

Reads Idrisi Raster A.1 images into textures

Supported URI extensions: .rst;

Raster Matrix Format Image Decoder (com.esri.prt.codecs.RSWDecoder)

Reads Raster Matrix Format images into textures

Supported URI extensions: .rsw;

SAGA GIS Binary Grid (.sdat) Image Decoder (com.esri.prt.codecs.SDATDecoder)

Reads SAGA GIS Binary Grid (.sdat) images into textures

Supported URI extensions: .sdat;

Esri Shape Buffer Decoder (com.esri.prt.codecs.ShapeBufferDecoder)

Reads Esri shape buffer geometry (only extended MultiPatch buffer).

Supported URI extensions: .shapebuffer;

GeoTIFF Image Decoder (com.esri.prt.codecs.TIFDecoder)

Reads GeoTIFF images into textures

Supported URI extensions: .tif;.tiff;

Virtual Raster Image Decoder (com.esri.prt.codecs.VRTDecoder)

Reads Virtual Raster images into textures

Supported URI extensions: .vrt;

X11 PixMap Format Image Decoder (com.esri.prt.codecs.XPMDecoder)

Reads X11 PixMap Format images into textures

Supported URI extensions: .xpm;

ASCII Gridded XYZ Image Decoder (com.esri.prt.codecs.XYZDecoder)

Reads ASCII Gridded XYZ images into textures

Supported URI extensions: .xyz;

CGB Decoder (com.esri.prt.core.CGBDecoder)

CGB Byte Stream Reader

Supported URI extensions: .cgb;.class;

Raw Image Decoder (com.esri.prt.core.RawTextureDecoder)

Reads raw (uncompressed) images into textures.

Supported URI extensions: .raw;

Text decoder (com.esri.prt.core.TextDecoder)

Decodes text (ASCII, UTF-8, UTF-16) to a UTF-16 string.

Supported URI extensions: .txt;.csv;