Mesh Export


The floors of the map can be exported as simple flat-shaded 3D meshes. This can be useful, for example, when initially blocking-out environments for game development.

Meshes are exported in standard Wavefront .obj format which is compatible with most 3D editors as well as the Unity, Godot and Unreal Engine game engines.


To export a mesh, switch to an editor viewport and navigate to the floor or region you wish to export. Then select the File menu, Export sub-menu and then click the Mesh... option. Alternatively, right-click the region tab on the region bar, choose Export from the menu and then Mesh... from the sub-menu.

This will open a standard file selector and begin the export process. When export is complete you will be prompted with a confirmation message box.


The options for mesh export are available by clicking the "..." button next to the export option on the menu. When selected a full-page menu will appear and offer the following options.

Include All Floors: With this option checked, every floor in the current region will be exported to the mesh file. If unchecked, only the current floor will be included.

Compatibility: Select from four target modes to apply specific compatibility options to the exported mesh. These options help to make importing into other applications more convenient, they do not represent significant changes and can be changed further using import options on the target side.

  • 3D Editor: Export using the standard 'right handed' co-ordinate system used by many popular 3D editing packages. In this system the x-axis points to the right, y-axis points up and the z-axis points towards the viewer. Note:

  • Godot: Export using a Godot Engine compatible 'right handed' co-ordinate system.

  • Unity: Export using Unity compatible co-ordinate system (x-axis to the right, y-axis is up and z-axis is forward/away). In this mode a single square tile is 1 unit in size.

  • Unreal Engine: Export using the Unreal Engine editor co-ordinate system (x-axis is right, y-axis towards and z-axis is up). It also applies a 100x scale to convert from centimeters to meters.

Geometry Adjustment

Offset Mesh by Floor Height: By default, the mesh is exported with the bottom of the mesh at 0 units and the top at 1 unit. If the option is enabled, the mesh is moved up or down by the number of units corresponding to the number of the floor or basement being exported. This allows multiple floors to be combined in one scene without having to adjust the individual origin points.

Double Sided Edge Polygons: When enabled the polygons used to create edge geometry are duplicated so the edge appears solid from both sides. When disabled only one polygon is created per-edge, you will need to render with face culling disabled to see the edges from both sides. This option may be helpful when exporting the map for use as collision geometry.

Triangulate: This option forces the geometry output to only contain triangles. By default, this option is not enabled and the mesh will contain both quads and hexagons.

Materials / Sub-meshes

The mesh exporter provides several options to control the naming of materials and the subsequent creation of sub-meshes in the exported model. The options are:

Create Materials / Sub-meshes: This is the master control for material naming. If enabled the other check-boxes will also become available for fine-tuning. If disabled, the mesh will be exported as a single piece with one material named default applied to every polygon.

One per- Color Tint: Append _col# to the material names of all edges and floor tiles that use a color tint (default / color 0 is never given a suffix). The # value ranges from 1 to 255. If disabled then all color will be ignored.

One per- Edge Style: If enabled, append the style of edge to the material name used (see this table for the full list). For example: a locked door will use the prefix gc_edge_locked. If the option is disabled then all edges will use the same gc_edge prefix for their material name.

One per- Terrain Type: If enabled, the specific type of terrain will be used to create the material name (see this table for the full list). For example: a lava tile will be assigned gc_floor_lava. If disabled then all terrain types will use the material name gc_floor.

Note that ceilings will always use the prefix gc_ceil (unless Create Materials / Sub-meshes is disabled). If the One per- Color Tint option is enabled the color of the terrain (if not default) will be used to create the _col# suffix.