// IF YOU ARE A MODDER do not distribute this file with your mod. Create a new
// file `MyMod.cfg` that has the same structure as this one but only containing
// options you are overriding.

TextureReplacer
{
	// Texture compression reduces textures size to 1/6 or 1/4 and hence reduces
	// graphics card memory usage and improves performance (less data transferred
	// to the GPU).
	// Possible options: `always`, `never` and `auto`. Auto means it is enabled
	// unless Active Texture Management mod is detected.
	isCompressionEnabled = auto

	// Generate mipmaps for PNGs and JPEGs in certain directories (specified in
	// the next option) to a fix KSP bug that doesn't generate mipmaps for these
	// images and makes them look ugly under sharp angles.
	// Possible options: `always`, `never` and `auto`. Auto means it is enabled
	// unless Active Texture Management mod is detected.
	isMipmapGenEnabled = auto

	// List of regular expressions that trigger mipmap generation when matching
	// the path of a texture that is missing mipmaps. These should cover all model
	// textures but not UI icons. The strings are case-sensitive on all platforms.
	// The list must be space- and/or comma-separated and in one line.
	// Duplicated lists are joined.
	generateMipmaps = /FX/ /Parts/ /Props/ /Spaces/
	generateMipmaps = ^ART/ ^ASET(_Props)?/ ^FASA/ ^KAS/Textures/
	generateMipmaps = ^Lionhead_Aerospace_Inc/ ^Regolith/Assets/ ^RetroFuture/
	generateMipmaps = ^SnacksPartsByWhyren/ ^UmbraSpaceIndustries/

	// Some textures (all JPEGs, PNGs and TGAs plus MBM tagged as "readable") are
	// kept loaded in RAM. Since this feature is rarely actually needed those
	// textures can be unloaded just before the main menu.
	// Possible options: `always`, `never` and `auto`. Auto means it is enabled
	// unless Active Texture Management mod is detected.
	isUnloadingEnabled = auto

	// Prevent unloading for textures whose paths match the following regular
	// expressions. Some mods access and modify textures, so those shouldn't be
	// unloaded.
	// The list must be space- and/or comma-separated and in one line.
	// Duplicated lists are joined.
	keepLoaded = /Agencies/
	keepLoaded = ^BoulderCo/(Clouds|Atmosphere)/ ^CommunityResourcePack/
	keepLoaded = ^CustomBiomes/PluginData/CustomBiomes/ ^KittopiaSpace/Textures/
	keepLoaded = ^Kopernicus/Textures/ ^Romfarer/textures/
	keepLoaded = ^WarpPlugin/PlanetResourceData/

	// Additional paths for general texture replacement. Contents of these
	// directories are treated as if they were in `TextureReplacer/Default/`.
	// Do not forget the final `/` after the last directory.
	// The list must be space- and/or comma-separated and in one line.
	// Duplicated lists are joined.
	paths =

	// Skinning quality for animated meshes. It defines how many bones should be
	// when interpolating vertices of animated meshes.
	// `auto`  - default (no change).
	// `bone1` - do not interpolate (each vertex is only tied to a single bone).
	// `bone2` - interpolate vertices between 2 bones at most.
	// `bone4` - interpolate vertices among 4 bones at most.
	skinningQuality = auto

	// Dump material/texture name pairs to log when performing general texture
	// replacement pass. Log entries are of the form
	//
	//   [<materialName>] <textureName>
	//
	// This option is intended for texture pack designers.
	logTextures = false

	// Dump names of all meshes with corresponding shaders on parts with
	// TRReflection part module.
	// This option is intended for part designers.
	logReflectiveMeshes = false

	// Enable toolbar icon that activates GUI for customising Kerbals.
	isGUIEnabled = true

	// Reflection type. Possible options are `none`, `static` and `real`. Static
	// reflections reflect environment map from `EnvMap/` directory while real
	// reflections use dynamically generated environment map that reflects the
	// actual environment of a part.
	// This is only initial setting for new games! Use the GUI to change it later.
	reflectionType = real

	// Resolution of cube texture faces that is used for real reflections.
	reflectionResolution = 128

	// One face of one environment map is updated once in `reflectionInterval`
	// rendered frames.
	reflectionInterval = 2

	// Replace helmet visor shader to support reflections (EVA only).
	isVisorReflectionEnabled = true

	// Reflection colour. Reflection is multiplied by this RGB colour before it is
	// added to the visor colour.
	visorReflectionColour = 0.5 0.5 0.5

	// Remove IVA helmets in safe situations (landed/splashed and in orbit).
	// This is only initial setting for new games! Use the GUI to change it later.
	isHelmetRemovalEnabled = true

	// Spawn a Kerbal on EVA in his/her IVA suit without helmet and jetpack when
	// in breathable atmosphere (+ sufficent pressure).
	// This also enables "Toggle EVA Suit" option in Kerbal's context menu.
	// This is only initial setting for new games! Use the GUI to change it later.
	isAtmSuitEnabled = true

	// Minimum air pressure required for Kerbals to wear their IVA suits on EVA.
	atmSuitPressure = 50

	// List of planets/moons with breathable atmospheres where Kerbals can wear
	// their IVA suits on EVA.
	// The list must be space- and/or comma-separated and in one line.
	// Duplicated lists are joined.
	atmSuitBodies = Kerbin Erin Sanctum

	// Convert all females to males but apply female textures on them to emulate
	// pre-1.0 females. Disabling this feature should restore "legacy" females
	// back to real females.
	forceLegacyFemales = false

	CustomKerbals
	{
		// Custom heads and suits for specific Kerbals. Entries are of the form:
		//
		//   name = gender headTex [suitDir]
		//
		// where `gender` is either `M` or `F`, `headTex` is an image (without
		// extension) inside `Heads/` and `suitDir` is a subdirectory inside `Suits/`
		// containing textures for a suit. `DEFAULT` keeps the default head/suit
		// textures from `Default/` and `GENERIC` assigns a generic head/suit using
		// the same rules as for the generic Kerbals. If `suitDir` is missing then
		// `GENERIC` is assumed.
		//
		// Examples:
		//
		//   Huey Kerman    = M head1 Suit1
		//   Dewey Kerman   = M head2 DEFAULT
		//   Louie Kerman   = M head3
		//   Donald Kerman  = M DEFAULT DEFAULT
		//   Daisy Kerman   = F DEFAULT
		//   Scrooge Kerman = M GENERIC Suit2
		//
		// THESE SETTINGS ARE OVERRIDDEN BY PER-GAME SETTINGS SET IN THE GUI!
		//
	}

	GenericKerbals
	{
		// Prevent the following heads from being assigned to generic Kerbals.
		// The list must be space- and/or comma-separated and in one line.
		// Duplicated lists are joined.
		excludedHeads =

		// Prevent the following suits from being assigned to generic Kerbals.
		// The list must be space- and/or comma-separated and in one line.
		// Duplicated lists are joined.
		excludedSuits =

		// Female heads. Texture names inside `Heads/` (without extensions).
		// The list must be space- and/or comma-separated and in one line.
		// Duplicated lists are joined.
		femaleHeads =

		// Female suits. Directory names inside `Suits/`.
		// The list must be space- and/or comma-separated and in one line.
		// Duplicated lists are joined.
		femaleSuits =

		// Eye-less heads. Eyes will be hidden for those heads, so one can paint
		// custom ones on the head texture.
		// The list must be space- and/or comma-separated and in one line.
		// Duplicated lists are joined.
		eyelessHeads =
	}

	ClassSuits
	{
		// Class-specific suits.
		//
		//   className = suitDir
		//
		// where `className` is `Pilot`, `Engineer` or `Scientist` and `suitDir` is
		// a suit directory from `Suits/`, `DEFAULT` or `GENERIC`.
		// Custom experience traits are supported too. `className` must match `name`
		// property in a `EXPERIENCE_TRAIT` configuration.
		//
		// Examples:
		//
		//   Pilot     = Suit1
		//   Engineer  = DEFAULT
		//   Scientist = GENERIC
		//
		// THESE SETTINGS ARE OVERRIDDEN BY PER-GAME SETTINGS SET IN THE GUI!
		//
	}

	CabinSuits
	{
		// Cabin-specific suits. These are enforced even if a Kerbal has a custom
		// suit. Entries are of the form:
		//
		//   partName = suitDir
		//
		// where `partName` is the name of a part (`name = ...` in `part.cfg`) and
		// `suitDir` is a suit directory from `Suits/`, `DEFAULT` or `GENERIC`.
		//
		// NOTE: Any underscores in `partName` must be replaced by periods.
		//
		// Examples:
		//
		//   Mark1Cockpit = PilotSuit
		//   crewCabin    = DEFAULT
		//
	}
}
