Skip to content

mesh-compiler v1.1.0

Compare
Choose a tag to compare
@pwalig pwalig released this 06 Sep 14:17
· 48 commits to main since this release

New mesh-compiler release: v1.1.0

Release notes

  • constants can be now defined in preambles
  • longer names and alternative spellings for variable types and constant types:
    • i, indice - indice
    • v, vertex - vertex
    • n, normal - normal
    • t, tangent - tangent
    • b, bitangent - bitangent
    • tex_coord - texture coordinate / uv set 0
    • uv0 - uv set 0
    • uv1 - uv set 1
    • uv2 - uv set 2
    • uv3 - uv set 3
    • uv4 - uv set 3
    • uv5 - uv set 5
    • uv6 - uv set 6
    • uv7 - uv set 7
    • float - 4 byte floating point
  • new constant value types:
    • char - 1 byte character
    • short, int2 - 2 byte integer
    • int, int4 - 4 byte integer
    • long, int8 - 8 byte integer
    • ushort, unsigned_short, uint2, unsigned_int2 - 2 byte unsigned integer
    • uint, unsigned_int, uint4, unsigned_int4 - 4 byte unsigned integer
    • ulong, unsigned_long, uint8, unsigned_int8 - 8 byte unsigned integer
    • double - 8 byte floating point
    • long_double - 8 or 16 byte (depending on compiler) floating point
  • new variable types:
    • vertex_color0 - vertex color 0
    • vertex_color1 - vertex color 1
    • vertex_color2 - vertex color 2
    • vertex_color3 - vertex color 3
    • vertex_color4 - vertex color 4
    • vertex_color5 - vertex color 5
    • vertex_color6 - vertex color 6
    • vertex_color7 - vertex color 7
  • from now on variable type indicator and suffix must be separated by a dot ..
  • from now on constant type indicator and value must be separated by :.
  • from now on buffer definition must end before fields definitions
  • buffer preamble end specifier ;

Deprecated

  • old single character variable and constant type indicators for following types:
    • c - texture coordinate / uv set 0
    • 0 - uv set 0
    • 1 - uv set 1
    • 2 - uv set 2
    • 3 - uv set 3
    • 4 - uv set 3
    • 5 - uv set 5
    • 6 - uv set 6
    • 7 - uv set 7
    • f - 4 byte floating point value

Usage note

For usage refer to wiki. In case something changes: here is a quick usage note that takes into account state of the compiler at the point of release:

Run program with arguments:

mesh-compiler.exe [file to compile] <path to .format file> <output file name>
[file to compile] is mandatory other two are optional.

Program can be run with flags:

  • -f <path to .format file>
  • -o <output file name>

to pass arguments out of order or skip them entirely.

default <path to .format file> is .format
default <output file name> is {file}_{mesh}.mesh

If program was run with no arguments:

mesh-compiler.exe

then > symbol will appear at which point you can enter commands in a same manner as passing arguments when running the program:

for example:
> <file to compile> <path to .format file> <output file name>

or with flags:
> <file to compile> -o <output file name>

> q - closes application

Pattern file naming

This release supports: {file}, {scene} and {mesh} pattern naming parameters.

Format file syntax support

For .format file syntax refer to wiki. Syntax might change. At point of release:

  • default value size: 4 bytes
  • default size counting base: 4 bytes

Inside Assets

mesh-compiler.zip contains already built executable file
source-code.zip contains source code at point of release