version 34
// The version number above should be incremented IF AND ONLY IF some
// change has been made that is sufficiently important to justify
// resetting the graphics preferences of all users to the recommended
// defaults.  This should be as rare an event as we can manage.

//
// Generates lists of feature mask that can be applied on top of each other.
//
//		//		Begin comments
//		list <name>
//		Starts a feature list named <name>
//		<name> <available> <recommended>
//		<name> is the name of a feature
//		<available> is 0 or 1, whether the feature is available
//		<recommended> is an F32 which is the recommended value
//
// For now, the first list read sets up all of the default values
//

//
// All contains everything at their default settings for high end machines
// NOTE: All settings are set to the MIN of applied values, including 'all'!
//
list all
RenderAnisotropic				1	1
RenderAvatarCloth				1	1
RenderAvatarLODFactor			1	1.0
RenderAvatarMaxComplexity		1	500000
RenderAvatarMaxNonImpostors		1	24
RenderAvatarPhysicsLODFactor	1	1.0
RenderCubeMap					1	1
RenderDelayVBUpdate				1	0
RenderFarClip					1	512
RenderFlexTimeFactor			1	1.0
RenderFogRatio					1	4.0
RenderGlowResolutionPow			1	9
RenderGround					1	1
RenderLightingDetail			1	1
RenderMaxPartCount				1	8192
RenderObjectBump				1	1
RenderReflectionDetail			1	3
RenderTerrainDetail				1	1
RenderTerrainLODFactor			1	3.0
RenderTransparentWater			1	1
RenderTreeLODFactor				1	1.0
RenderUseStreamVBO				1	1
RenderVolumeLODFactor			1	3.0
MeshLODBoostFactor				1	3.0
RenderWaterReflections			1	1
UseOcclusion					1	1
WindLightUseAtmosShaders		1	1
WLSkyDetail						1	48
RenderTextureMemoryMultiple		1	1.0
RenderCompressTextures			1	0
RenderShaderLightingMaxLevel	1	3
RenderDeferred					1	1
RenderDeferredSSAO				1	1
RenderShadowDetail				1	2
RenderFSAASamples				1	16
RenderMaxTextureIndex			1	16

//
// Low Graphics Settings
//
list Low
RenderAnisotropic				1	0
RenderAvatarCloth				1	0
RenderAvatarLODFactor			1	0
RenderAvatarMaxComplexity 		1	100000
RenderAvatarMaxNonImpostors    	1   3
RenderAvatarPhysicsLODFactor	1	0
RenderFarClip					1	64
RenderFlexTimeFactor			1	0.25
RenderGlowResolutionPow			1	4
RenderLightingDetail			1	0
RenderMaxPartCount				1	1024
RenderObjectBump				1	0
RenderReflectionDetail			1	0
RenderTerrainDetail				1	0
RenderTerrainLODFactor			1	1
RenderTransparentWater			1	0
RenderTreeLODFactor				1	0.25
RenderVolumeLODFactor			1	1.5
MeshLODBoostFactor				1	0.0
RenderWaterReflections			1	0
WindLightUseAtmosShaders		1	0
RenderDeferred					1	0
RenderDeferredSSAO				1	0
RenderShadowDetail				1	0
RenderFSAASamples				1	0

//
// Mid1 Graphics Settings
//
list Mid1
RenderAnisotropic				1	0
RenderAvatarCloth				1	1
RenderAvatarLODFactor			1	0.5
RenderAvatarMaxComplexity		1	100000
RenderAvatarMaxNonImpostors    	1   8
RenderAvatarPhysicsLODFactor	1	0.25
RenderFarClip					1	96
RenderFlexTimeFactor			1	0.5
RenderGlowResolutionPow			1	6
RenderLightingDetail			1	1
RenderMaxPartCount				1	2048
RenderObjectBump				1	1
RenderReflectionDetail			1	0
RenderTerrainDetail				1	1
RenderTerrainLODFactor			1	1.0
RenderTransparentWater			1	1
RenderTreeLODFactor				1	0.5
RenderVolumeLODFactor			1	2.0
MeshLODBoostFactor				1	1.0
RenderWaterReflections			1	0
WindLightUseAtmosShaders		1	0
RenderDeferred					1	0
RenderDeferredSSAO				1	0
RenderShadowDetail				1	0
RenderFSAASamples				1	2

//
// Mid2 Graphics Settings
//
list Mid2
RenderAnisotropic				1	0
RenderAvatarCloth				1	1
RenderAvatarLODFactor			1	0.5
RenderAvatarMaxComplexity		1	150000
RenderAvatarMaxNonImpostors    	1   12
RenderAvatarPhysicsLODFactor	1	0.50
RenderFarClip					1	128
RenderFlexTimeFactor			1	1.0
RenderGlowResolutionPow			1	8
RenderLightingDetail			1	1
RenderMaxPartCount				1	4096
RenderObjectBump				1	1
RenderReflectionDetail			1	0
RenderTerrainDetail				1	1
RenderTerrainLODFactor			1	1.0
RenderTransparentWater			1	1
RenderTreeLODFactor				1	0.75
RenderVolumeLODFactor			1	2.0
MeshLODBoostFactor				1	1.0
RenderWaterReflections			1	1
WindLightUseAtmosShaders		1	0
RenderDeferred					1	0
RenderDeferredSSAO				1	0
RenderShadowDetail				1	0
RenderFSAASamples				1	2

//
// High1 Graphics Settings
//
list High1
RenderAnisotropic				1	1
RenderAvatarCloth				1	1
RenderAvatarLODFactor			1	1.0
RenderAvatarMaxComplexity		1	200000
RenderAvatarMaxNonImpostors    	1   16
RenderAvatarPhysicsLODFactor	1	0.75
RenderFarClip					1	192
RenderFlexTimeFactor			1	1.0
RenderGlowResolutionPow			1	9
RenderLightingDetail			1	1
RenderMaxPartCount				1	6172
RenderObjectBump				1	1
RenderReflectionDetail			1	1
RenderTerrainDetail				1	1
RenderTerrainLODFactor			1	2.0
RenderTransparentWater			1	1
RenderTreeLODFactor				1	1.0
RenderVolumeLODFactor			1	3.0
MeshLODBoostFactor				1	1.5
RenderWaterReflections			1	1
WindLightUseAtmosShaders		1	1
RenderDeferred					1	0
RenderDeferredSSAO				1	0
RenderShadowDetail				1	0
RenderFSAASamples				1	4

//
// High2 Graphics Settings
//
list High2
RenderAnisotropic				1	1
RenderAvatarCloth				1	1
RenderAvatarLODFactor			1	1.0
RenderAvatarMaxComplexity		1	250000
RenderAvatarMaxNonImpostors    	1   16
RenderAvatarPhysicsLODFactor	1	1.0
RenderFarClip					1	256
RenderFlexTimeFactor			1	1.0
RenderGlowResolutionPow			1	9
RenderLightingDetail			1	1
RenderMaxPartCount				1	8192
RenderObjectBump				1	1
RenderReflectionDetail			1	2
RenderTerrainDetail				1	1
RenderTerrainLODFactor			1	2.0
RenderTransparentWater			1	1
RenderTreeLODFactor				1	1.0
RenderVolumeLODFactor			1	3.0
MeshLODBoostFactor				1	2.0
RenderWaterReflections			1	1
WindLightUseAtmosShaders		1	1
RenderDeferred					1	0
RenderDeferredSSAO				1	0
RenderShadowDetail				1	0
RenderFSAASamples				1	4

//
// Ultra graphics
//
list Ultra
RenderAnisotropic				1	1
RenderAvatarCloth				1	1
RenderAvatarLODFactor			1	1.0
RenderAvatarMaxComplexity		1	350000
RenderAvatarMaxNonImpostors    	1   24
RenderAvatarPhysicsLODFactor	1	1.0
RenderFarClip					1	256
RenderFlexTimeFactor			1	1.0
RenderGlowResolutionPow			1	9
RenderLightingDetail			1	1
RenderMaxPartCount				1	8192
RenderObjectBump				1	1
RenderReflectionDetail			1	3
RenderTerrainDetail				1	1
RenderTerrainLODFactor			1	2.0
RenderTransparentWater			1	1
RenderTreeLODFactor				1	1.0
RenderVolumeLODFactor			1	3.0
MeshLODBoostFactor				1	2.0
RenderWaterReflections			1	1
WindLightUseAtmosShaders		1	1
RenderDeferred					1	1
RenderDeferredSSAO				1	1
RenderShadowDetail				1	2
RenderFSAASamples				1	4

//
// Class Unknown Hardware (unknown)
//
list Unknown
RenderShadowDetail				1	0
RenderDeferred					1	0
RenderDeferredSSAO				1	0
RenderUseAdvancedAtmospherics	1	0

//
// Class 3 Hardware
//
list Class3
RenderVolumeLODFactor		1	3.0

//
// Class 4 Hardware
//
list Class4
RenderVolumeLODFactor		1	3.0

//
// Class 5 Hardware
//
list Class5
RenderVolumeLODFactor		1	3.0

//
// VRAM > 512MB
//
list VRAMGT512
RenderCompressTextures		1	0

// "Default" setups for safe, low, medium, high
//
list safe
RenderAnisotropic			1	0
RenderAvatarCloth			0	0
RenderAvatarMaxComplexity	1	80000
RenderAvatarMaxNonImpostors	1	16
RenderObjectBump			0	0
RenderMaxPartCount			1	1024
RenderTerrainDetail 		1	0
RenderReflectionDetail		0	0
RenderWaterReflections		0	0
WindLightUseAtmosShaders	0	0
RenderDeferred				0	0
RenderDeferredSSAO			0	0
RenderShadowDetail			0	0

//
// Graphics card based feature masks
//
list OpenGLPre30
RenderDeferred				0	0
RenderMaxTextureIndex		1	1

list Intel
RenderAnisotropic			1	0
RenderFSAASamples			1	0

// AMD/ATI cards generally perform better when not using VBOs for streaming
// data.
list ATI
RenderUseStreamVBO			1	0


/// Tweaked NVIDIA

list NVIDIA_GeForce_7000
RenderShaderLightingMaxLevel	1	2
list NVIDIA_GeForce_7100
RenderShaderLightingMaxLevel	1	2
list NVIDIA_GeForce_7200
RenderShaderLightingMaxLevel	1	2
list NVIDIA_GeForce_7300
RenderShaderLightingMaxLevel	1	2
list NVIDIA_GeForce_7400
RenderShaderLightingMaxLevel	1	2
list NVIDIA_GeForce_7500
RenderShaderLightingMaxLevel	1	2
list NVIDIA_GeForce_7600
RenderShaderLightingMaxLevel	1	2
list NVIDIA_GeForce_7700
RenderShaderLightingMaxLevel	1	2
list NVIDIA_GeForce_7800
RenderShaderLightingMaxLevel	1	2
list NVIDIA_GeForce_7900
RenderShaderLightingMaxLevel	1	2

list NVIDIA_GeForce_Go_7200
RenderShaderLightingMaxLevel	1	2
list NVIDIA_GeForce_Go_7300
RenderShaderLightingMaxLevel	1	2
list NVIDIA_GeForce_Go_7300_LE
RenderShaderLightingMaxLevel	1	2
list NVIDIA_GeForce_Go_7400
RenderShaderLightingMaxLevel	1	2
list NVIDIA_GeForce_Go_7600
RenderShaderLightingMaxLevel	1	2
list NVIDIA_GeForce_Go_7700
RenderShaderLightingMaxLevel	1	2
list NVIDIA_GeForce_Go_7800
RenderShaderLightingMaxLevel	1	2
list NVIDIA_GeForce_Go_7900
RenderShaderLightingMaxLevel	1	2
