Material Types

From TrainzOnline
Revision as of 20:01, 12 September 2017 by Windwalkr (Talk | contribs)

Jump to: navigation, search

Materials describe how a modelled surface will appear in the game. They specify a range of configurations and resources including classic material properties, textures and shaders. Each Material is an instance of a particular preset Material Type, from the selection described on this page.

This page describes content format v4.6.


Contents

Material Naming

A material name consists of a creator-supplied given name and a material type suffix. The material type is one of a set of supported types defined below, eg. 'm.onetex'. All material types begin with 'm.' The material type is manually appended to the name of the material within the creation program eg. Autodesk 3ds Max, it is not implied by the configuration of the material. Material type names in Trainz are not case sensitive.

For more info about configuring materials see Exporting with 3D Studio Max.

Material Examples

Download example assets below and drop them into Trainz to see what effect can be created using the Materials listed below:

- Rust - Download Asset. View the tutorial video for this asset HERE
- Paint - Download Asset. View the tutorial video for this asset HERE
- Creating Specular Maps - Download Asset. View the tutorial video for this asset HERE

Material Types

Trainz uses a Metallic/Roughness style PBR workflow. All materials are expressed in these terms, or (in the case of legacy materials) are converted into these terms using a best-effort approximation. PBR and the Metallic/Roughness workflow are discussed in great detail online, with a number of freely available presentations and demonstrations ranging from beginner material to advanced math. It is recommended that content creators read up on the subject before attempting to configure Trainz materials.


m.pbrmetal

m.pbrmetal is a generic opaque PBR material. This should be considered the starting point for any Trainz content creation which has no special needs.

m.pbrmetalmasked

m.pbrmetalmasked gives identical results to m.pbrmetal but adds masked opacity support.

m.pbrmetaldetail

m.pbrmetaldetail gives identical results to m.pbrmetal but adds support for a detail map.

m.notex

This is a legacy material, and should only be used where compatibility with older versions of Trainz is required.
m.notex is a non-textured material.

Opacity = Uniform opacity can be controlled in the material settings.

Full details here: m.notex

Mat notex.jpg

m.onetex

This is a legacy material, and should only be used where compatibility with older versions of Trainz is required.
m.onetex is a diffuse texture mapped material.

Opacity = Per-texel opacity can be controlled via the diffuse texture's alpha channel.

Full details here: m.onetex

Mat onetex.jpg

m.reflect

This is a legacy material, and should only be used where compatibility with older versions of Trainz is required.
m.reflect is a reflective material.

Full details here: m.reflect

Mat reflect.jpg

m.gloss

This is a legacy material, and should only be used where compatibility with older versions of Trainz is required.
m.gloss is a glossy reflective material.

Opacity = Uniform opacity can be controlled in the material settings.

Full details here: m.gloss

Mat gloss.jpg

m.tbumptex

This is a legacy material, and should only be used where compatibility with older versions of Trainz is required.
m.tbumptex is a bump mapped material.

Opacity = Per-texel opacity can be controlled via the diffuse texture's alpha channel.

Specular = Per-texel specular strength can be controlled via the normal texture's alpha channel.

Full details here: m.tbumptex

Mat tbumptex.jpg

m.tbumpgloss

This is a legacy material, and should only be used where compatibility with older versions of Trainz is required.
m.tbumpgloss is a bump mapped reflective material.

View the tutorial video on tbumpgloss HERE and download an example asset HERE to drop into Trainz to see what effect can be created using this material. The example asset is a "rust" type material.

Opacity = Uniform opacity can be controlled in the material settings.

Specular = Per-texel specular strength can be controlled via the normal texture's alpha channel.

Reflection = Per-texel blend strength of the reflection can be controlled via the diffuse texture's alpha channel.

Full details here: m.tbumpgloss

Mat tbumpgloss.jpg

m.tbumpenv

This is a legacy material, and should only be used where compatibility with older versions of Trainz is required.
m.tbumpenv is a bump mapped environment reflective material. In current versions of Trainz this is the preferred material for most models lit by world lighting, unless a particular effect is desired. Exceptions include tunnels and interiors.

View the tutorial video on tbumpenv HERE and download an example asset HERE to drop into Trainz to see what effect can be created using this material. The example asset is a "paint" type material.

Opacity = Uniform opacity can be controlled in the material settings.

Specular = Per-texel specular strength can be controlled via the normal texture's alpha channel.

Reflection = Per-texel blend strength of the environment map can be controlled via the diffuse texture's alpha channel.

Full details here: m.tbumpenv

Mat tbumpenv.jpg

Ground Texture Material

KIND Groundtexture assets make use of a custom material which offers features equivalent to m.pbrmetal. It is not possible to override the ground texture material.

Surveyor allows the user to paint multiple layers of ground texture with automated blending. Historically, this capability was used extensively to help hide the fact that ground textures were low resolution and tiled heavily. Overuse of this approach may induce substantial blurriness and reduce performance. Current-generation ground materials are high resolution and should not tile noticeably. For best performance and visuals, blending should be reserved for actual changes in surface material (eg. grass vs rocks vs mud) rather than to simulate texture detail.

Personal tools