Skip to content

Releases: pwalig/mesh-compiler

mesh-compiler v2.1.0

08 Oct 18:48
Compare
Choose a tag to compare

New mesh-compiler version: v2.1.0

Release notes:

  • new value types:
    • bone_id
    • bone_weight
  • .format intepreter now throws error when unit name collides with a key-word

Usage

for usage refer to wiki

Inside Assets

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

mesh-compiler v2.0.0

17 Sep 13:56
Compare
Choose a tag to compare

New mesh-compiler version: v2.0.0

Release notes:

  • complete rework of .format file syntax:
    • format file is now unit based
    • units can be nested
    • key-words and fields can now have different types (float, int, long etc.)
    • constants can now be of any type
    • now fields can be specified with no suffixes
  • skeletons and animation export is now supported
  • add unit testing

Usage

for usage refer to wiki

Inside Assets

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

mesh-compiler v1.1.1

07 Sep 15:45
Compare
Choose a tag to compare

New mesh-compiler release: v1.1.1

Release notes

  • new alternative spellings for following constant types:
    • float8 - 8 byte floating point
    • float16 - 8 or 16 byte (depending on compiler) floating point
  • ability to check mesh-compiler version
  • better compilation error messages
  • checking constant values for correctness

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>
  • -d - print debugging information

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

Check version

If you run the program with just -v or --version version of the mesh compiler will be printed to the console.
Version can be also queried after > symbol

> --version
v1.1.1

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

mesh-compiler v1.1.0

06 Sep 14:17
Compare
Choose a tag to compare

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

mesh-compiler v1.0.0

07 Jul 20:24
Compare
Choose a tag to compare

First mesh-compiler release

Functionality so far...

  • compiling whole files into separate mesh files each containing one mesh
  • output file contents customization with .format files
  • inserting constant values into file, supported types:
    • 4 byte integers and floats
  • output file pattern naming ( {file}_{mesh}.mesh )
  • run program with arguments
  • console like behaviour when run without arguments

In plans...

  • support for more data types:
    • 1, 2, 4, 8 byte integers
    • 8 byte floats
    • strings
    • binary data
  • constant values in preambles
  • export vertex colors
  • compile textures
  • compiling entire folders with one call

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>
if program was run with no arguments:
mesh-compiler.exe
then > symbol will appear at which point you can enter commands:
> <file to compile> <path to .format file> <output file name>
> q - closes application

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

Format file syntax support

For .format file syntax refer to wiki. Syntax will be expanded. At point of release supported syntax includes:

  • key-words (size and counting bases (1, 2, 4, 8 bytes) also supported):
    • buffc
    • buffs
    • entrya
    • entryc
    • entrys
    • fielda
    • fielde
    • fieldc
    • fields
  • field types: i, v, t, b, n, c, 0, 1, 2, 3, 4, 5, 6, 7, f
  • field suffixes: 0, 1, 2, 3, x, y, z, r, g, b, a, u, v, w
  • 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