Texture.cfg (FSX)

From FSDeveloper Wiki
Jump to: navigation, search

FSX implements a new method to reduce the -

  • Amount of disk-space required to create aircraft containers.
  • Processing & memory overheads incurred by loading & unloading identical textures from different repaints.
  • Minimize the texture load impact for the multi-player environment.

N.B.
It is important you understand the impact of missing textures, or mis-matched texture file extensions.
Please first read - Texture - Missing (FSX)

Overview

Pre FSX

Every aircraft repaint required a full complement of the model's textures to be present in every texture livery folder.
There was a basic fallback option, utilising the FS\texture folder for textures common across all aircraft & scenery.

In FSX

FSX utilises an enhanced Texture Fallback Scheme.
In its most basic form, an aircraft model only requires a single folder containing all that model's textures.
This folder is that aircraft's default texture fallback folder.

Each livery's repaint folder then need only contain those textures different from the default.
Plus a text file named texture.cfg, and that livery's thumbnail.jpg

NB


   The default texture fallback folder    

   MUST not be called directly

   from any [fltsim.N] texture= entry.    

texture.cfg

The texture config file contains references to the relative paths of the various fallback folders.
These references are ranked in order of fallback #.
Fallback.#= supplemental texture directories outside of the current livery's texture folder

The standard texture.cfg files have 3 fall back paths,
but can cascade any number of fallbacks listed.
e.g. The FSX Acceleration FA-18 uses additional fallback.# lines.

A copy of the texture.cfg is placed in every livery's texture folder.
Fallback texture files do not override textures found in the texture folder originally being called.

thumbnail.jpg

A small image of that aircraft livery for display in the select aircraft dialog.

The required format is a 256x128 pixel jpg.

Bugs

There are a couple of minor issues -

  1. An acknowledged 'bug' that sometimes causes FSX -
    • To lose track of where common textures are located.
    • thumbnail.jpg images to become out of synch with their parent folder.
    • Multiplayer users to sometimes see other player's, or their own, aircraft displaying incorrect liveries, (generally the fallback livery).
    • To display some legacy aircraft incorrectly, as their texturing depends on accessing default files
      e.g. GlobalEnv_*.dds
      which by default are located in -
      C:\Program Files\Microsoft Games\Microsoft Flight Simulator X\Texture
  2. An incorrect path error in the FSX default aircraft's fallback.3 reference, (varies with some models see below), where paths refer to an MS 'development folder', i.e. not present on a user's system.

Inclusion of an appropriate texture.cfg will correct these.

Fix - Overview

The solution for all models is to -

  • Use the ..\texture folder only for common textures, (a full texture set).

i.e. This default texture fallback folder must not be called directly from any [fltsim.N] texture= entry.

  • And for every livery -
    • Have dedicated ..\texture.variation folders contining only the unique textures.
    • Correct the texture.cfg file to utilise the correct fallback paths.

Fix - For Existing Models

To fix this issue for pre-existing 3rd party, or FSX default aircraft.
For the sake of simplicity only, in the following example I've used the numbering system adopted for FSX default aircraft.

Folder Structure

The aircraft folder structure should be -

	..\texture
		all common textures, (including those for the 'default livery')
		texture.cfg
	
	..\texture.0
		contains no textures, (default livery is held in ..\texture)
		texture.cfg
		thumbnail.jpg
	
	..\texture.1
		livery 1 unique textures only 
		texture.cfg
		thumbnail.jpg
	
	..\texture.2
		livery 2 unique textures only 
		texture.cfg
		thumbnail.jpg

The additional folder ..\texture.0 acts as the unique livery reference for that livery previously referenced by ..\texture

aircraft.cfg

Generally, in the aircraft.cfg this was accessed by -

	[fltsim.0]
	texture=

Which would now become -

	[fltsim.0]
	texture=0

I said generally, as some default FSX aircraft have non-rational numbering applied.

texture.cfg

Example below corrects the reference for FSX default aircraft's fallback.3 path.

	fallback.1=..\texture
	fallback.2=..\..\..\..\Scenery\Global\texture
	fallback.3=..\..\..\..\Texture

Warning -
FSX Acceleration's FA-18, and other 3rd. party aircraft use additional fallback.# lines.
You should edit those aircraft's texture.cfg files manually.

Also see fallback.Z below.

Fix - For New models

Proposed methodology for new models -

For example:

    ..\texture.common
        all common textures.dds
    ..\texture.Livery1
        all unique textures for Livery1.dds
        thumbnail.jpg
        texture.cfg
    ..\texture.Livery2
        all unique textures for Livery2.dds
        thumbnail.jpg
        texture.cfg


texture.cfg

    [fltsim]
    fallback.1=..\texture.common
    fallback.2=..\..\..\..\Scenery\Global\texture
    fallback.3=..\..\..\..\Texture

fallback.Z

The last row is the path to FSX's root Texture folder,
e.g. fallback.Z=..\..\..\..\Texture
Where Z generally is 3

In this example, fallback.Z provides a valid path to the following common textures -

    Fresnel_Ramp.dds
    FresnelTest.bmp
    FresnelWater.bmp
    GENFresnel.dds
    GlobalEnv_AC_Chrome.dds
    GlobalEnv_AC_Chrome_32.dds
    GlobalEnv_AC_Chrome_64.dds
    GlobalEnv_AC_Chrome_128.dds
    GlobalEnvTest.dds

Related

Internal

External

Placeholder text