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.

// NOTE: This is mostly identical to featuretable_mac.txt with a few differences 
// Should be combined into one table

//
// 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
RenderAvatarPhysicsLODFactor 1	1.0
RenderAvatarMaxNonImpostors 1   16
RenderAvatarMaxComplexity          1	350000
RenderAutoMuteSurfaceAreaLimit     1	1000.0
RenderCubeMap				1	1
RenderDelayVBUpdate			1	0
RenderFarClip				1	256
RenderFlexTimeFactor		1	1.0
RenderFogRatio				1	4.0
RenderGamma					1	0
RenderGlowResolutionPow		1	9
RenderGround				1	1
RenderMaxPartCount			1	8192
RenderObjectBump			1	1
RenderLocalLights			1	1
RenderReflectionDetail		1	4
RenderTerrainDetail			1	1
RenderTerrainLODFactor		1	2.0
RenderTransparentWater		1	1
RenderTreeLODFactor			1	1.0
RenderVBOEnable				1	1
RenderVBOMappingDisable		1	1
RenderVolumeLODFactor		1	2.0
UseStartScreen				1	1
UseOcclusion				1	1
WindLightUseAtmosShaders	1	1
WLSkyDetail					1	128
Disregard128DefaultDrawDistance	1	1
Disregard96DefaultDrawDistance	1	1
RenderTextureMemoryMultiple		1	1.0
RenderCompressTextures		1	1
RenderShaderLightingMaxLevel	1	3
RenderDeferred				1	1
RenderDeferredSSAO			1	1
RenderUseAdvancedAtmospherics 1 0
RenderShadowDetail			1	2
RenderUseStreamVBO			1	1
RenderFSAASamples			1	16
RenderMaxTextureIndex		1	16
RenderGLContextCoreProfile         1   1
RenderGLMultiThreaded       1   1


//
// Low Graphics Settings
//
list Low
RenderAnisotropic			1	0
RenderAvatarCloth			1	0
RenderAvatarLODFactor		1	0
RenderAvatarPhysicsLODFactor 1	0
RenderAvatarMaxNonImpostors 1   3
RenderAvatarMaxComplexity          1	35000
RenderFarClip				1	64
RenderFlexTimeFactor		1	0
RenderGlowResolutionPow		1	8
RenderLocalLights			1	0
RenderMaxPartCount			1	0
RenderObjectBump			1	0
RenderReflectionDetail		1	0
RenderTerrainDetail			1	0
RenderTerrainLODFactor		1	1
RenderTransparentWater		1	0
RenderTreeLODFactor			1	0
RenderVolumeLODFactor		1	1.125
WindLightUseAtmosShaders	1	0
RenderDeferred				1	0
RenderDeferredSSAO			1	0
RenderUseAdvancedAtmospherics 1 0
RenderShadowDetail			1	0
WLSkyDetail					1	48
RenderFSAASamples			1	0

//
// Medium Low Graphics Settings
//
list LowMid
RenderAnisotropic			1	0
RenderAvatarCloth			1	0
RenderAvatarLODFactor		1	0.5
RenderAvatarMaxComplexity   1	100000
RenderAvatarPhysicsLODFactor 1	0.75
RenderAvatarMaxNonImpostors 1   5
RenderFarClip				1	96
RenderFlexTimeFactor		1	1.0
RenderGlowResolutionPow		1	8
RenderMaxPartCount			1	2048
RenderObjectBump			1	1
RenderLocalLights			1	1
RenderReflectionDetail		1	0
RenderTerrainDetail			1	1
RenderTerrainLODFactor		1	1.0
RenderTransparentWater		1	1
RenderTreeLODFactor			1	0.5
RenderVolumeLODFactor		1	1.125
WindLightUseAtmosShaders	1	0
RenderDeferred				1	0
RenderDeferredSSAO			1	0
RenderUseAdvancedAtmospherics 1 0
RenderShadowDetail			1	0
WLSkyDetail					1	48
RenderFSAASamples			1	0

//
// Medium Graphics Settings (standard)
//
list Mid
RenderAnisotropic			1	1
RenderAvatarCloth			1	0
RenderAvatarLODFactor		1	1.0
RenderAvatarMaxComplexity   1	200000
RenderAvatarPhysicsLODFactor 1	1.0
RenderAvatarMaxNonImpostors 1   7
RenderFarClip				1	128
RenderFlexTimeFactor		1	1.0
RenderGlowResolutionPow		1	9
RenderMaxPartCount			1	4096
RenderObjectBump			1	1
RenderLocalLights			1	1
RenderReflectionDetail		1	0
RenderTerrainDetail			1	1
RenderTerrainLODFactor		1	2.0
RenderTransparentWater		1	1
RenderTreeLODFactor			1	0.5
RenderVolumeLODFactor		1	1.25
WindLightUseAtmosShaders	1	1
RenderDeferred				1	0
RenderDeferredSSAO			1	0
RenderUseAdvancedAtmospherics 1 0
RenderShadowDetail			1	0
WLSkyDetail					1	48
RenderFSAASamples			1	2

//
// Medium High Graphics Settings (deferred enabled)
//
list MidHigh
RenderAnisotropic			1	1
RenderAvatarCloth			1	0
RenderAvatarLODFactor		1	1.0
RenderAvatarMaxComplexity   1	250000
RenderAvatarPhysicsLODFactor 1	1.0
RenderAvatarMaxNonImpostors 1   9
RenderFarClip				1	128
RenderFlexTimeFactor		1	1.0
RenderGlowResolutionPow		1	9
RenderMaxPartCount			1	4096
RenderObjectBump			1	1
RenderLocalLights			1	1
RenderReflectionDetail		1	0
RenderTerrainDetail			1	1
RenderTerrainLODFactor		1	2.0
RenderTransparentWater		1	1
RenderTreeLODFactor			1	0.5
RenderVolumeLODFactor		1	1.375
WindLightUseAtmosShaders	1	1
RenderDeferred				1	1
RenderDeferredSSAO			1	0
RenderUseAdvancedAtmospherics 1 0
RenderShadowDetail			1	0
WLSkyDetail					1	48
RenderFSAASamples			1	2

//
// High Graphics Settings (deferred + SSAO)
//
list High
RenderAnisotropic			1	1
RenderAvatarCloth			1	0
RenderAvatarLODFactor		1	1.0
RenderAvatarMaxComplexity   1	300000
RenderAvatarPhysicsLODFactor 1	1.0
RenderAvatarMaxNonImpostors 1   11
RenderFarClip				1	128
RenderFlexTimeFactor		1	1.0
RenderGlowResolutionPow		1	9
RenderMaxPartCount			1	4096
RenderObjectBump			1	1
RenderLocalLights			1	1
RenderReflectionDetail		1	0
RenderTerrainDetail			1	1
RenderTerrainLODFactor		1	2.0
RenderTransparentWater		1	1
RenderTreeLODFactor			1	0.5
RenderVolumeLODFactor		1	1.5
WindLightUseAtmosShaders	1	1
RenderDeferred				1	1
RenderDeferredSSAO			1	1
RenderUseAdvancedAtmospherics 1 0
RenderShadowDetail			1	0
WLSkyDetail					1	48
RenderFSAASamples			1	2

//
// High Ultra Graphics Settings (deferred + SSAO + shadows)
//
list HighUltra
RenderAnisotropic			1	1
RenderAvatarCloth			1	0
RenderAvatarLODFactor		1	1.0
RenderAvatarMaxComplexity   1	350000
RenderAvatarPhysicsLODFactor 1	1.0
RenderAvatarMaxNonImpostors 1   16
RenderFarClip				1	128
RenderFlexTimeFactor		1	1.0
RenderGlowResolutionPow		1	9
RenderMaxPartCount			1	4096
RenderObjectBump			1	1
RenderLocalLights			1	1
RenderReflectionDetail		1	0
RenderTerrainDetail			1	1
RenderTerrainLODFactor		1	2.0
RenderTransparentWater		1	1
RenderTreeLODFactor			1	0.5
RenderVolumeLODFactor		1	1.75
WindLightUseAtmosShaders	1	1
RenderDeferred				1	1
RenderDeferredSSAO			1	1
RenderUseAdvancedAtmospherics 1 0
RenderShadowDetail			1	2
WLSkyDetail					1	48
RenderFSAASamples			1	2

//
// Ultra graphics (REALLY PURTY!)
//
list Ultra
RenderAnisotropic			1	1
RenderAvatarCloth			1	1
RenderAvatarLODFactor		1	1.0
RenderAvatarMaxNonImpostors 1   16
RenderAvatarPhysicsLODFactor 1	1.0
RenderFarClip				1	256
RenderFlexTimeFactor		1	1.0
RenderGlowResolutionPow		1	9
RenderLocalLights			1	1
RenderMaxPartCount			1	8192
RenderObjectBump			1	1
RenderReflectionDetail		1	4
RenderTerrainDetail			1	1
RenderTerrainLODFactor		1	2.0
RenderTransparentWater		1	1
RenderTreeLODFactor			1	1.0
RenderVolumeLODFactor		1	2.0
WindLightUseAtmosShaders	1	1
WLSkyDetail					1	128
RenderDeferred				1	1
RenderDeferredSSAO			1	1
RenderUseAdvancedAtmospherics 1 0
RenderShadowDetail			1	2
RenderFSAASamples			1	2

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

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

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

list Intel
RenderAnisotropic			1	0
RenderFSAASamples			1	0
RenderGLMultiThreaded       1   0
RenderGLContextCoreProfile         1   0

// AMD cards generally perform better when not using VBOs for streaming data
// AMD cards also prefer an OpenGL Compatibility Profile Context
list AMD
RenderUseStreamVBO			1	0
RenderGLContextCoreProfile         1   0


