Arcane University:NetImmerse Format/Texture Slots

The Beyond Skyrim Wiki — Hosted by UESP
< Arcane University:NetImmerse Format
Revision as of 21:21, 30 November 2025 by Gamma Metroid (talk | contribs) (transparency/opacity terminology)
Jump to: navigation, search
NifSkope uses zero-based numbering, so the first slot is Slot 0, the normal map slot is Slot 1, etc.

Textures are defined in the BSShaderTextureSet block of a nif file. They are ordered from zero to seven, and what texture is used in which slot depends on the shader type used by that mesh. It is also important to note that these are in nif order. In the CK TextureSet records, the order of the slots is different, but they are named.

Slot 0: Diffuse

This texture is the base texture of the mesh and contains the main coloring your texture will use as well as the opacity information in the alpha channel. All other textures will only be detail additions and effects.

  • Compression:
    • Use BC1 if transparency is not needed, or if only full transparency (clipped alpha or "cutout alpha") is needed.
    • Use BC3 or BC7 if the texture needs smooth gradients in transparency.
  • Suffix: none

Slot 1: Normal/Specular

The normal map adds the illusion of depth and detail to a mesh, while keeping the poly count low. Normal maps are baked from a high poly onto a low poly model, either with xNormal or a texture program. Learn more general information on normal maps at Mesh Maps Explained and Normal Map on Polycount Wiki. Skyrim uses tangent space normal maps by default, but can accept model space normal maps by adding the Model Space Normals shader flag. See the Polycount Wiki article for Normal Map Technical Details for information on the different between tangent space and model space normals.

The alpha channel of the normal texture contains the specular map. This controls the brightness of the specular highlight of each texel, where black (zero) is minimum intensity (no specular highlight), and white (1.0 or 255) is maximum intensity. See the GIMP article for an example of how to create this combined texture. Since the alpha channel is more commonly used for opacity, it will usually be displayed as such in image editing or preview programs. When using model space normals, the specular map is pulled from Slot 7 instead.

  • Compression: Use BC3 (Skyrim) or BC7 (Special Edition) because of the importance of the alpha layer in this file.
  • Required properties:
    • BSLightingShaderProperty > Shader Flags 1: SLSF1_Specular (for specular only)
  • Appearance Controller(s)
    • BSLightingShaderProperty > Specular Strength: Multiplier on specular highlight intensity.
    • BSLightingShaderProperty > Specular Color: The color of the specular highlight.
    • BSLightingShaderProperty > Glossiness: Inverse width of the specular highlight. Higher values are narrower, lower values are wider.
  • Suffix: _n or _msn, for tangent space or model space normals respectively

Slot 2: Glow

This slot is most commonly used for an Emissive Map by the Glow Shader. The game will apply this RGB texture additively, so it may wash out the diffuse color if it is too strong. Importantly, a glow map and environment map cannot both be used on the same mesh. If you have a mesh for which you want to use both effects, you have to split it into parts, or overlay a partially transparent mesh.

Soft Lighting, also called "wrapped diffuse," adds a glow through the object to simulate light being diffused and passing through the object. This is good for simulating translucence on objects such as leaves. Rim lighting is only visible when light is on the opposite side of the mesh and simulates light bending around the object and lighting it at the edges. These two effects are enabled by their respectively named shader flags. Rim lighting takes precedence over soft lighting. Soft lighting intensity is controlled by "Lighting Effect 1" and Rim lighting intensity is controlled by "Lighting Effect 2."

  • Compression: BC1
  • Required properties:
    • BSLightingShaderProperty > Shader Type: Glow Shader
    • BSLightingShaderProperty > Shader Flags 1: SLSF1_Own_Emit
    • SLSF1_Environment_Mapping disabled
    • BSLightingShaderProperty > Shader Flags 2: SLSF2_Glow_Map
    • For Soft Lighting: SLSF2_Soft_Lighting
    • For Rim Lighting: SLSF2_Rim_Lighting (Rim lighting overwrites soft lighting)
  • Appearance Controller(s):
    • BSLightingShaderProperty > Emissive Multiple
    • BSLightingShaderProperty > Emissive Color
  • Suffix: _g

This slot is also used for skin tint textures by the Skin Tint shader type. This is a rendering effect that simulates the diffusion of light inside a translucent medium. The effect can be seen as an extension on the principles of translucency and is appropriate for realistically simulating a wide range of materials including wax, marble, liquids (like milk), plant leaves, fruit, snow, and most importantly, human skin.

  • Compression: BC1
  • Required Properties:
    • BSLightingShaderProperty > Shader Type: Skin Tint
    • BSLightingShaderProperty > Shader Flags 1: SLSF1_FaceGen_RGB_Tint
  • Suffix: _sk

This slot is also used as a subsurface color map which is used by the Multilayer Parallax shader type.

Slot 3: Height / Parallax

This slot is used for a true Height/Parallax Map by the Parallax shader type (not to be confused with the MultiLayer Parallax shader). It does not function in vanilla SSE, so it requires the SSE Parallax Shader Fix SKSE Plugin, or ENB. This is a greyscale image in RGB format. Height is determined by the darkness or lightness of each pixel as follows:

  • Mid gray (RGB 127,127,127) is zero depth and height, Black is maximum depth, White is maximum height.
  • Compression: BC1
  • Required Properties:
    • BSLightingShaderProperty > Shader Flags 1: SLSF1_Parallax
  • Shader Type: Heightmap
  • Suffix: _p

Slot 4: Environment / "cubemap"

The Environment Map shader simulates reflections using a prerendered environment texture. This saves processing power compared to real time reflections. The environment texture and environment mask texture work in concert to achieve this effect. The environment texture is also known as a cubemap, since the environment is rendered onto the texture in a cube projection, with each layer or page of the texture containing a different face of the cube. They are ordered +x, -x, +y, -y, +z, -z.

  • Compression: BC1
  • Required Properties:
    • BSLightingShaderProperty > Shader Type: Environment Map
    • BSLightingShaderProperty > Shader Flags 1: SLSF1_Environment_Mapping
    • BSLightingShaderProperty > Shader Flags 2: SLSF2_Glow_Map disabled
  • Appearance Controllers:
    • BSLightingShaderProperty > Environmental Map Scale, 1 is normal intensity, Less than 1 is lower intensity, Greater than 1 is higher intensity.
  • Suffix: _e

Slot 5: Environment Mask

The environment mask is a single channel (grayscale) texture which controls the intensity of the cubemap per texel. Zero is no cubemap, 1.0 or 255 is full intensity. This effect is applied additively.

  • Compression: BC1 (Skyrim) or BC4 (Special Edition)
  • Required Properties:
    • An environment/cube map is required.
    • BSLightingShaderProperty > Shader Type: Environment
    • BSLightingShaderProperty > Shader Flags 1: SLSF1_Environment_Mapping
  • Appearance Controllers:
    • BSLightingShaderProperty > Environmental Map Scale: Multiplier. 1 is normal intensity, less than 1 is lower intensity, greater than 1 is higher intensity,
  • Suffix: _m or _em (no difference)

Slot 6: Multilayer (Inner Layer Diffuse)

In the Multilayer Parallax shader, this slot contains the diffuse color of the inner layer.

  • Compression: BC1
  • Suffix: _i

Slot 7: Backlight Mask / Subsurface Tint / Specular

The back lighting shader is an effect similar to the Glow Shader, except it only glows when lit from behind. This is useful for faking translucency, like showing the bones in a dragon’s wings yet letting light bleed through the skin.

  • Compression: BC1
  • Required properties:
    • BSLightingShaderProperty > Shader Flags 2: SLSF2_Back_Lighting
  • Appearance Controller(s):
    • BSLightingShaderProperty > Emissive Multiple
    • BSLightingShaderProperty > Emissive Color
  • Suffix: _b or _bl

This slot is also used for subsurface tint color in the Multilayer Parallax shader.

This slot is also used for the specular map when using a model space normal map.