Generate S3M Tiles from Model Dataset

Instructions

By selecting Generate 3D Tiles... in the right-click menu of a dataset, you can generate 3D tiles from a model dataset to improve the display efficiency of data in scenes.

Function Entrances

  • Workspace Manager->Right-click menu of a Model Dataset->Generate 3D Tiles... button
  • Toolbox->3D Data->Model Processing->Model to Tiles

Operation Steps

  1. Select "Generate 3D Tiles..." from the right-click menu of a model dataset. The "Generate 3D Tiles from Model Dataset" dialog box pops up, where you can add model data and set parameters.
  2. Source Data: Perform operations like adding or deleting datasets via the toolbar.
    • Add: Click the Add button, select the target dataset in the pop-up selection dialog, and click OK. Return to the "Generate 3D Tiles from Model Dataset" dialog to see the selected dataset displayed in the list.
    • Select All: Select all datasets in the data list for batch operations, such as deletion and batch setting of tile parameters.
    • Invert Selection: Select the datasets in the data list that are not currently selected.
    • Delete: Remove the dataset from the current data list.
    • Use the Move to Top, Move Up, Move Down, and Move to Bottom buttons to adjust the order of datasets in the data list.
      Notes:
      • When batch setting tile parameters, after typing specific parameter values, you need to press the Enter key for them to take effect. Otherwise, batch assignment of the same parameter value may not work.
  3. Data List Area:
    • Dataset: Displays the name of the dataset used to generate 3D tiles.
    • Datasource: Displays the name of the datasource where the dataset used to generate 3D tiles is located.
  4. Basic Settings: Set basic parameters for the resulting tile data.
    • Tile Name: Enter the tile name in the text box to the right of "Tile Name", which is the name of the tile's root directory.
    • Storage Path: Enter the absolute storage path for the resulting tiles in the text box to the right of "Storage Path". This can be a local path or a network path. You can also select the path via the "Browse" button after the text box.
    • S3M Version: Used to set the version of the resulting tile data, including: S3M 1.0, S3M 2.0, S3M 3.0, and S3M 3.01. Among them, S3M 2.0, S3M 3.0, and S3M 3.01 support PBR materials.
    • Texture Compression Format: Currently supports four compression types: WebP, DXT (PC devices), CRN_DXT5 (PC devices), KTX2.0. Default is DXT (PC devices). Using different texture compression methods for data with different purposes can reduce the amount of video memory used by texture images.
      • WebP: Suitable for Web/PC general compressed texture format. Reduces total data volume and improves transmission performance.
      • DXT (PC devices): Suitable for PC (Personal Computer) general compressed texture format. Reduces video memory usage and improves rendering performance, but total data volume will increase.
      • CRN_DXT5 (PC devices): Slightly reduces video memory usage, greatly reduces total data volume, but requires longer processing time.
      • KTX2.0: Slightly reduces video memory usage, greatly reduces total data volume. Requires longer time than standard CRN for processing the same data.
    • Vertex Optimization Mode: When the S3M version is S3M1.0 or S3M2.0, "No Compression" is supported. When the S3M version is S3M3.0, both "MeshOpt Compression" and "No Compression" are supported.
      • Meshopt compression reduces the total data volume, benefiting front-end rendering, with a higher compression ratio for BIM data. However, this method is lossy compression. For strip-shaped single objects, it is recommended to split them before using it.
    • Attribute Storage Type: Supports S3MD, ATTRIBUTE, DB, and other types.
      • S3MD: Stored in JSON format, enabling quick extraction of all attribute information for a single object.
      • ATTRIBUTE: Stored in binary stream format, has a smaller file size, enabling quick extraction of specified field attribute information for multiple objects.
      • DB: Stored in DB large file format, only available when the S3M version is S3M 3.01. Supports fast attribute query for large-volume S3M tile objects on the web, and fast thematic map creation using attribute fields.
    • Thread Count: Sets the number of threads participating in tile generation to make it more efficient. When the thread count is set too high, tile generation may fail. It is recommended to set this value appropriately based on the specific computer configuration.
    • File Type: Sets the file type of the resulting tile data. Options include: S3MB, S3MBLOCK.
      • S3MB: An open, extensible compressed data format for spatial 3D model tiles, suitable for data transmission, exchange, and sharing.
      • S3MBLOCK: Only available when the S3M version is S3M 2.0 or above. For fine models generating tiles, by separating texture and skeleton storage, it can effectively solve the problem of excessively large tile files and improve loading speed. S3MBLOCK tiles only support ordinary materials.
    • Password: Only available when the file type is set to S3MBLOCK. Used to encrypt the resulting tile data. Password-protected 3D tile data requires entering the password when opened.
    • Coordinate Transformation: Maps data accurately from the source coordinate system to the target coordinate system through coordinate transformation. If not checked, the result data will retain the source coordinate system and no coordinate transformation will be performed.
      • Transformation Method: Sets the projection transformation method for the data, including Geocentric Translation (3-para), etc.
      • Projection Transformation Parameters: Sets the projection transformation parameters for the data, including transformation parameters, scale difference, rotation angles, offsets, rotation origin coordinates, etc.
      • Target Coordinate System: Sets the target coordinate system for the tile data through Re-project, Copy Coordinate System (Specify Datasource or Specify Dataset), Import Coordinate System File (*.shp, *.prj, *.mif, *.tab, *.tif, *.img, *.sit, *.xml) operations. After setting the target projection, the detailed information of the target projection will be displayed in the "Target Coordinate System" field.
        Notes:
        • If the source data uses a planar non-projected coordinate system, the resulting coordinate system can only be set to a planar non-projected coordinate system.
        • If the source data uses a geographic coordinate system or a projected coordinate system, the target projection cannot be set to a planar non-projected coordinate system.
  5. Tile Settings:
    • Tile Side Length: Sets the extent of a single tile. If the data precision is high, the tile side length can be appropriately reduced based on the default value; if the data is relatively coarse, the tile side length can be appropriately increased based on the default value.
    • Filtering Threshold: Sets the threshold used to filter out smaller child objects at coarse levels, thereby improving performance for large-scene data. For example, if the filtering threshold is set to 2, child objects with the longest side less than 2 meters are filtered out at the coarsest level, child objects less than 1 meter at the next coarsest level, and so on. Child objects at the finest level are not filtered.
    • Pyramid Partition Type: Sets the partition type for creating a tree pyramid for tiles, including: Quad-tree, Octree, and KD-tree. Among them, Quad-tree is suitable for city-level building partitioning; Octree is suitable for partitioning a single tall building, mainly used for BIM data; Using KD-tree enables adaptive partitioning of model data, without needing to set LOD levels, but it is recommended not to choose KD-tree for fine model data.
    • Tile Height: If the pyramid partition type is set to Octree, you can set this parameter to control the vertical dimension of the tile.
    • LOD Level Settings: Sets the Level of Detail for 3D tile display. Using multiple LODs can rationally allocate rendering resources during data rendering to achieve efficient scene display.
      • LOD Level Count: Sets the number of LOD levels for tiles, directly set in the numerical box.
      • Level: Displays the detail levels of the data, with data at each level having a different simplification ratio.
      • Simplify To: Simplifies the data at each level of the model according to the set percentage, unit is percentage %. A setting of 100 means all data details are retained without simplification. As the value decreases, the degree of simplification increases, and fewer data details are retained. This parameter is invalid if the dataset itself has LODs.
  6. Advanced Texture and Attribute Settings:
    • Texture Settings: Currently supports two texture settings: Multiple Textures and Single Texture. Multiple Textures supports generating overlay textures, while Single Texture only supports generating the first layer of texture.
    • Second Layer Texture Type: Currently supports two types: No Processing, Light and Shadow Texture. Select the parameter based on the data texture situation. When the model data needs to create night scene effects, it is recommended to select No Processing.
    • Texture Size Limit: Used to set the texture size, unit is pixels. Options include: 1024*1024, 2048*2048, 4096*4096.
    • Object ID Field: Sets the field that uniquely identifies the model object ID, default is SMID. It can be customized by selecting an attribute field (16-bit integer, 32-bit integer, or text type) from the model dataset via the drop-down menu.
    • Vertex Weight Mode: Provides four modes: None, Dataset Field, Height, and Original Feature Value. Among them, Dataset Field refers to using the specified attribute field as the object feature value field, Height refers to using height as the object feature value field, and Original Feature Value refers to using the model data's own feature value as the object feature value. After the resulting tile data is published as a service, based on the object feature value, layered coloring or display/hide control of the data can be performed on the web client.
    • Feature Value Field: Only available when Vertex Weight Mode is set to Dataset Field. Used to select an attribute field in the dataset as the object's feature value field.
    • Field Settings: Only available when Vertex Weight Mode is set to Dataset Field. Used to batch select attribute fields of the model dataset as the object's feature value fields. All attribute fields are selected by default.
    • Group Repeated Textures, With Border, With Normals, Instancing:
      • Group Repeated Textures: Used to set whether to group repeated textures for the data. When the data has a large number of repeated texture images, grouping repeated textures allows data to share one image to reduce resource consumption.
      • With Border: Used to generate the outline of 3D tiles. After loading into a scene, the border lines can be viewed via Style Settings operations.
      • With Normals: Used to set whether the data has normals. Surface normals are important properties of geometric surfaces, mainly used to produce lighting effects that conform to visual habits during rendering.
      • Instancing: Used to set whether the data is stored in instanced form. When the data contains a large number of shared objects, storing them as instances can reduce resource consumption by storing only one object plus spatial pose information (position, rotation, scale, etc.) for the object in memory.
  7. Texture and Attribute Advanced Settings:
    • Material Type: Used to set the material type of the resulting tile data, including: Ordinary Material, PBR Material, UE Material, Unity Material. If PBR materials exist in the model data, regardless of choosing Ordinary Material or PBR Material, the resulting tile data is generated in PBR material format. If the result data needs to create special effects in game engines (UE or Unity), you can check UE Material or Unity Material.
    • Material Association File:When the material type is UE Material or Unity Material, importing a *.json format material association file is supported. The material association file records the material mapping relationship between UE/Unity and the model dataset. When tile data is used in UE or Unity, it can directly map to the corresponding material, improving data visualization effects.
    • Generate Second Layer Texture Coordinates: Used to set whether to generate second layer texture coordinates for the result data. Used when the model's own side U/V values are inconsistent with the game engine's texture U/V values. It can be used to create self-illuminating texture maps.
    • Texture Horizontal/Vertical Size: After checking "Generate Second Layer Texture Coordinates", you can enter the horizontal and vertical size of the texture here, unit is meters.
  8. After parameter settings are complete, click the "Generate" button to execute the 3D tile generation operation. After execution completes, S3M tile data will be generated at the specified path.
Notes:
  • When creating new 3D tiles, it is recommended to generate different 3D tiles in different directories. This is because when generating 3D tiles, related data will be generated in the specified directory. If two 3D tiles are generated in the same directory, the two 3D tiles will use the same tile directory and tile files for data within the same longitude and latitude range.
  • When generating 3D tiles from models, if a single tile exceeds 5M, a prompt message will be output in the output window. When a single tile exceeds 5M, the following methods can be used to reduce tile size: compress textures, optimize vertices, limit texture size, reduce tile side length, change pyramid type to Octree, increase the simplification ratio of LOD levels.