Skip to content

Texture settings

A texture parameter in a material has a sampler type (Color, Normal, Masks …), and the texture you put into it must have settings that fit, or the material fails to compile with errors such as Sampler type is Masks, should be Color. With Fix texture settings on, Material Smith changes the settings of every texture it assigns so that it fits its parameter.

  • Only during Create, and only with Fix texture settings on (the default). The preview never changes anything.
  • Only textures that are assigned to a parameter: the first texture of each map in the set. Not Used textures, unrecognized textures and extra textures of the same map are left alone.
  • Before you click Create, What will happen lists the changes per texture, for example T_Rock_ORM: compression …, sRGB off., and the Texture fixes tile counts the textures that will change.
  • With Save assets on, the changed textures are saved. Otherwise they are left modified and unsaved.

With Fix texture settings off, nothing is changed and each texture that doesn’t fit gets a warning instead: T_Rock_ORM does not fit the Masks sampler (needs …). Turn on Fix texture settings.

With the Material Smith master:

Map Sampler type Compression sRGB
Base Color, Emissive Color Kept if it is a color compression, otherwise Default On
Normal Normal Normalmap Off
Packed (ORM …) Masks Masks Off
Roughness, Metallic, Ambient Occlusion, Opacity, Height Alpha Alpha (BC4, one channel) Off

The roughness, metallic, ambient occlusion, opacity and height maps are single channel maps: the master reads their red channel, and Alpha compression stores one channel in BC4.

For every map, Material Smith also sets:

  • Virtual Texture Streaming: on for the virtual texture master M_Smith_Standard_VT, off for M_Smith_Standard. See Virtual textures.
  • Flip Green Channel: on for normal maps marked OpenGL (green up).
  • Texture group: textures in the 8-bit or 16-bit data texture group are moved to World (normal maps to WorldNormalMap), because those groups force a data sampler type.

With a custom master, the sampler type of each parameter is read from your material, and the texture is fitted to it:

Sampler type Compression sRGB
Color Kept if it is a color compression, otherwise Default On
Linear Color Kept if it is a color or HDR compression, otherwise Default Off
Normal Normalmap Off
Masks Masks Off
Grayscale Grayscale On
Linear Grayscale Grayscale Off
Alpha Alpha Off

The virtual texture versions of these sampler types get the same settings plus Virtual Texture Streaming on. Other sampler types are not set up; the texture gets a warning.

“Color compression” means any compression except Normalmap, Masks, Grayscale, Alpha, Distance Field Font and the HDR and floating point formats. A BC7 base color map, for example, keeps BC7.

An HDR texture on a Color sampler is not changed. It gets the warning … is an HDR texture, but the parameter expects an sRGB color texture.

Normal maps whose names end with an OpenGL ending (NormalGL, Normal_GL, Nor_GL, NormalOpenGL, Normal_OpenGL), or that you mark with OpenGL (green up) in the details, get Flip Green Channel turned on. Material Smith never turns Flip Green Channel off, so a normal map you flipped yourself stays flipped.

With the Material Smith master, the variant is chosen per set:

  • If every map of the set already streams as a virtual texture, the set uses M_Smith_Standard_VT and the textures keep Virtual Texture Streaming on.
  • Otherwise the set uses M_Smith_Standard. If some of its maps are virtual textures, What will happen says so, and Fix texture settings turns virtual texture streaming off for them.

With a custom master, virtual texture streaming follows the sampler type of each parameter.

After changing a texture, Material Smith checks again which sampler type the texture needs. If it still doesn’t fit, the run reports … still does not fit the … sampler after the change.

Texture sRGB Compression Other
Packed textures (T_Name_ORM …) Off Masks Compressed without alpha unless an alpha channel is used. Virtual texture streaming is on if any source texture uses it.
T_Smith_Default_Packed Off Masks No alpha.
T_Smith_Default_Mask Off Alpha

See Channel packer and Master material.