Train Simulator NEXT
In This Topic
    makeMap
    In This Topic

    makeMap is a tool to convert images into textures for graphics cards for use with Direct3D 12 bases game engines. It is using the current technical capabilities using DirectStorage for high performance data transfer from disk to video memory.

    Location

    The tool is located in the [root]/Tools/ directory.

    Supported Formats

    makeMap does support these input formats:

    Loader Extension
    Train Simulator NEXT Map1 *.map
    Microsoft Train Simulator *.ace
    Dovetail Games Train Simulators *.TgPcDx
    Direct Draw Surface, full compatibiliuty1 *.dds
    Windows provided decoder *.bmp *.gif *.ico *.jpg *.png *.tif *.wmp
    *.heic
    FreeImage *.jif *.jpg *.jpe *.jng *.koa *.iff *.lbm
    *.mng *.pbm *.pcd *.pcx *.pgm *.ppm *.ras
    *.tga *.targa *.tiff *.wap *.wbmp *.wbm *.psd
    *.cut *.xbm *.xpm *.hdr *.g3 *.sgi *.rgb
    *.rgba *.bw *.exr *.j2k *.j2c *.jp2 *.pfm
    *.pct *.pict *.pic *.3fr *.arw *.bay *.bmq
    *.cap *.cine *.cr2 *.crw *.cs1 *.dc2 *.dcr
    *.drf *.dsc *.dng *.erf *.fff *.ia *.iiq
    *.k25 *.kc2 *.kdc *.mdc *.mef *.mos *.mrw
    *.nef *.nrw *.orf *.pef *.ptx *.pxm *.qtk
    *.raf *.raw *.rdc *.rw2 *.rwl *.rwz *.sr2
    *.srf *.srw *.sti *.x3f *.webp *.jxr *.wdp
    *.hdp

    1) Also export.

    Textures must have a size in width and height of a multipe of 256 pixels.

    Calling Conventions

    Drag and drop an image or map, multiple images or maps or a directory onto the app.

    You may also call makeMap manually:

    makeMap <file or directory>
                (<num_mips i>)
                (<min_mip_size i>)
                (<compression (None|BC1|BC2|BC3|BC7)>)
                (<quality (High|Normal|Low)>)
                (<dds>)
                (<convert_dxt>)
                (<outdir directory>)
                (<rg>)
                (<r>)
                (<2C>)
                (<bump>)
                (<1C>)
                (<Version>)
                (<uncompressed>)
                (<pass_dds>)
                (<help> or <?>)

    Arguments

    Argument Description Remarks
    alpha_bit If a pixel does not have a alpha value of 255, the pixel is set to be transparent.
    bump Stores only the red and green channel and encodes the normals to a sphercial map coordinate.
    compression Sets the texture compression base type. Read below. None, BC1, BC2, BC3 or BC7.
    Default: BC7.
    convert_dxt Converts outdated BC1, BC2 or BC3 textures back to raw data.
    dds Export the image always as a dds file. Default: Source Dir.
    min_mip_size The minimum accepted size for a mip level. Default is 256.
    num_mips The maximum number of MIP maps for a texture. Default is 32.
    no_alpha Removes the alpha channel from the texture data.
    no_gdeflate Forces the map exporter not to use the gdeflate compression for DirectStorage convertes textures.
    outdir The output directory.
    pass_dds Loads the file and stores the non-converted data in a dds file.
    quality Defines the quality of the compression algorithm. Low, Normal or High.
    Default: High.
    r Stores only the red channel in the same format.
    rg Stores only the red and green channel in the same format.
    1C Stores only the red channel as a floating point texture.
    2C Stores only the red and green channel in the same format.
    uncompressed Does not compress the texture.
    version Sets the map file version to export. 1.0, 1.1 or current.
    Default: current
    help / ? Prints the version and a link to this documentation.

    Remarks

    Textures must have a size in width and height of a multipe of 256 pixels.

    If you pass a Map file, the file will be converted back to a dds file. The tool will overwrite an existing file. Bump maps wont be converted back from spherical coordinates to a DirectX left handed format currently.

    If possible you should work with png and exr files. Also working with dds files may be okay but not optimal for resource file sizes.

    If a file has one of these suffixes, the following configurations will be applied:

    Suffix Applied configuration
    _albedo compression BC7
    _bump bump compression BC7
    _diffuse compression BC7
    _emissive compression BC7
    _nml bump compression BC7
    _pbr 2C compression BC7
    _subsurface 1C compression BC7

    If bump is passed, the application assumes the input data to be a XYZ-normalized normal map in DirectX format (left handed). The converter works only with rgba 8-bit unsigned-integer or rgba 16-bit floating-point formated textures.

    If compression <type> is passed, you should use BC7. This code tries to apply a modern compression method for the channel data. Also conversion to BC6 is automatically supported. The applied data format depends on the input type.

    Note that a conversion from BC1, BC2 or BC3 to BC7 implies some minor quality loss.

    The uncompressed flag forces the map file exporter not to compress the image data with DirectStorage, even it would be possible. In some cases this flag is required, i. e. the map will be used for a User Interface or as a data source.

    System Requirements

    Component Requirement
    Graphics Card OpenGL 4.2 compatible, Direct3D 12.2 compatible, DirectStorage 1.2 compatible
    Main Memory 100MB+ free main memory or more
    Operating System Windows 10 22H2 or newer