Driver Profile Settings

From Bo3b's School for Shaderhackers
Revision as of 20:56, 21 February 2015 by DarkStarSword (Talk | contribs)

Jump to: navigation, search

This page is a work in progress - feel free to expand it with extra knowledge, before & after screenshots, etc.


Contents

Tools

There are two tools that can be used to edit the game profiles:

NVIDIA Inspector (English mirror)

and

GeForce 3D Profile Manager

Note that NVIDIA Inspector has some bugs and limitations, which may prevent some settings from being displayed (e.g. almost any text setting) and in some cases edited in full (Helifax noted this prevents changes to 2DDHUDSettings from taking effect).


NVIDIA Inspector Custom Stereo Settings Names

Download this CustomSettingNames_en-EN.xml file to replace the one from NVIDIA Inspector, which will add all the settings listed on this page to the Stereo category.


The Mystery Stereo Setting 0x701EB457

This setting is known to be very important to stereo profiles.

Observations

- The mere existance of this setting on a DX9 profile will enable Stereo in windowed mode, regardless of the value.

- This setting is required to enable a lot of stereo related code in the driver.

- Certain other stereo settings (e.g. StereoTextureEnable) may be ignored without this setting.

Bit Definitions

0xFFFFFFFF UNKNOWN :(

Known Values

0x00000001 Seen in many stereo profiles created with Ctrl+F7
0x2241AB21 Used by many games (Aion, Prototype 2, ...)


Notable Settings

StereoTextureEnable (0x70edb381)

Believed to control the heuristics that determine which texture render targets are stereoised and which are not.

Observations

- Setting this to all F's will turn a game into mono, suggesting that some high bits might filter out some render targets, rather than enabling them.

Bit Definitions

Chiri determined a number of these (see this post)

0x00000001 [ET] = Stereoize render target textures which are of size or exceeding the size of the backbuffer (and are not square).
0x00000002 [ESMT] = Stereoize all non square render target textures smaller then backbuffer.
0x00000004 [ESQT] = Stereoize sqare render target textures.
0x00000008 [DBBST] = ???
0x00000010 [DBBS] = ???


StereoUseMatrix (0x70e34a78)

- Able to automatically fix halo type issues in many games

Known Values

0x1945B570 Used by Aion, Prototype 2, etc.


StereoFlagsDX10 (0x702442fc)

- Able to resolve mono depth buffer issues in DirectX 11 games, such as Far Cry 4 and Ryse: Son of Rome.

Bit Definitions

0x00004000 Fixes mono depth buffer issue in Far Cry 4 (SLI users can alternatively resolve this with custom SLI compatibility bits)
0x00000024 One of these two bits negated the separation value reported to 3Dmigoto in Far Cry 4, but not Max Payne 3?

Known Values

0x1C22FE24 Max Payne 3 (good profile to use for testing)


StereoCutoff (0x709a1ddf)

Present in almost all Stereo profiles, but meaning unknown. My complete guess is that it may be related to driver heuristics to decide when the stereo correction formula is applied (e.g. for UI elements)?

Observations

- Setting this to 0x00000000 broke shadows in Miasmata

More Settings

StereoConvergence (0x708db8c5)

Stores the convergence value of a profile. Unsure of encoding - sometimes interpreting this as a float gives a reasonable value, but other times it doesn't.

Comments (0x704d456e) - text

Stores the comments displayed in the green text by the driver. Sometimes this is clearly an ASCII string, other times it is gibberish, suggesting that it is not always encoded the same way.

Developer_Issues (0x704f5928) - text

Alternate setting for the comments displayed in the green text by the driver.

StereoMemoEnabled (0x707f4b45)

0x00000000 Green text disabled
0x00000001 Green text enabled

Compatibility Mode Settings

Helifax created a guide with more information about these settings: Guide: How to Enable and TWEAK 3D Compatibility Mode in any DX11 Game

2DDHUDSettings (0x709adada)

2DDConvergence (0x709adadb)

Disable2DD (0x709adadd)

2DD_Notes (0x709adadc) - text

Notes displayed when compatibility mode is enabled

VR Direct Settings

These settings have appeared in recent drivers and are believed to be related to VR Direct:

StereoVRConvergenceBias (0x708db8c6)

StereoVRRefreshRateOverride (0x708db8c8)

StereoVRVsync (0x708db8c9)

Key Bindings

These are believed to be key bindings due to their names. It has not been confirmed if these override the registry settings or are ignored. Some of these settings may not work at all in recent drivers.

There is a good guide for how these are encoded here: Modifying All 3D Vision Control Key Combinations as You Need

StereoToggle (0x70d76b8b)

StereoSeparationAdjustLess (0x705d1e02)

StereoSeparationAdjustMore (0x70ab8d32)

StereoConvergenceAdjustLess (0x70d4add7)

StereoConvergenceAdjustMore (0x701ed576)

SaveStereoImage (0x70121853)

WriteConfig (0x700498b3)

DeleteConfig (0x70c73ba2)

ToggleLaserSight (0x70b7bd1f)

LaserAdjustXPlus (0x70d8bae6)

LaserAdjustXMinus (0x7048b7dc)

LaserAdjustYPlus (0x7024eda4)

LaserAdjustYMinus (0x70fb9e1e)

GammaAdjustMore (0x703f4521)

GammaAdjustLess (0x70e8420c)

StereoVerticalAdjustMore (0x7087fe61)

StereoVerticalAdjustLess (0x703acfc6)

StereoHorizontalAdjustMore (0x70062f07)

StereoHorizontalAdjustLess (0x70871a39)

ToggleAutoConvergence (0x70085de3)

NOTE: AFAIK this was never implemented

ToggleAutoConvergenceRestore (0x703bc51e)

NOTE: AFAIK this was never implemented

RHWAtScreenMore (0x7066a22e)

RHWAtScreenLess (0x709139ad)

RHWLessAtScreenMore (0x704e4bca)

RHWLessAtScreenLess (0x70b378a1)

CutoffNearDepthLess (0x70d1bdb5)

CutoffNearDepthMore (0x7020c991)

CutoffFarDepthLess (0x704c9a46)

CutoffFarDepthMore (0x70fbc04d)

CutoffStepLess (0x704b45c7)

CutoffStepMore (0x700f2971)

GlassesDelayPlus (0x701fc5b4)

NOTE: Believed to no longer work in recent drivers

GlassesDelayMinus (0x70b8a743)

NOTE: Believed to no longer work in recent drivers

Unidentified Settings

These setting names were found in the driver, but their purpose or whether they are even functional is unknown:

Time (0x70ad05c8)

RunTimeName (0x701a8be4) - text

EnableConsumerStereoSupport (0x70cb9168)

StereoViewer (0x704915a1)

StereoViewerType (0x708f9ef7)

ShowAllViewerTypes (0x708e5cb4)

StereoAdjustEnable (0x70538ab1)

StereoDisableTnL (0x70633bd9)

StereoTransformationType (0x70c27e3c)

StereoSeparation (0x70933c00)

StereoSeparationStep (0x7082555b)

StereoConvergenceMultiplier (0x70efbb5b)

RHW2DDetectionMin (0x7029432b)

RHWGreaterAtScreen (0x702c861a)

RHWEqualAtScreen (0x70ab2e09)

RHWLessAtScreen (0x70381472)

AutoConvergence (0x702a0ab2)

AutoConvergenceAdjustPace (0x70bf3c6b)

StereoToggleMode (0x70d76b8c)

StereoSuggestSettings (0x706315af)

StereoUnsuggestSettings (0x7017861c)

FavorSZ (0x705faed7)

LaserSight (0x7058b6e1)

LaserSightFile (0x707ac50d)

LaserSightEnabled (0x7054837a)

LaserSightIndex (0x70da83c6)

LaserSightProperty (0x7032243a)

StereoPointer (0x70364596)

GameSpecific0 (0x702244b7)

StereoDefaultOn (0x70ab30a7)

FrustumAdjustMode (0x70a1411a)

MonitorSize (0x7086ebe9)

MaxMonitorSize (0x7032022c)

MaxVertexCount (0x709e4a94)

PartialClearMode (0x709794cc)

LaserXAdjust (0x7057e831)

LaserYAdjust (0x70225308)

LaserZAdjust (0x7014fca2)

StereoRefreshDefaultOn (0x702ba385)

MixedTnL (0x70bd11e0)

StereoGamma (0x70c8b5d1)

LineCodeColor (0x70dc4a12)

LeftAnaglyphFilter (0x70d51cd1)

RightAnaglyphFilter (0x70f4a930)

InterleavePattern0 (0x70b1c8cc)

InterleavePattern1 (0x7091a772)

StereoForceVSync (0x70aae185)

StereoColorKey (0x70e5773b)

ZDirection (0x70b17872)

StereoCompatibility (0x70a2000e)

LeftColorFilter0 (0x70ac6888)

LeftColorFilter1 (0x7090b6ca)

RightColorFilter0 (0x70b9a2f7)

RightColorFilter1 (0x70aca0cc)

SharpVPI (0x706e0041)

StereoMode (0x701baa09)

Watchdog (0x700a5654)

StereoOSDEnable (0x70f455aa)

StereoOrthoEnable (0x703564f6)

StereoNotSupported (0x709aa171)

ModesetWarning (0x70969bb0)

StereoFirstTime (0x70af6400)

StereoRefreshRate (0x70ded3c0)

GameConfigs (0x704a905a)

CompareEyes (0x70729e58)

CompareFrom (0x70efb726)

StereoImageType (0x7097906c)

SnapShotQuality (0x7004e7a6)

NoLockSubstitute (0x7005ad16)

PushbufSubstituteSize (0x7054fbf8)

DiscardHotkeys (0x70175566)

StereoLCDPatternType (0x707cfb97)

GlassesSwitchDelay (0x70057bb6)

StartZBit (0x7044d7a6)

DisableOnOutOfMemory (0x70c71508)

StereoWindowedEnable (0x709b3484)

AllowNonExclusiveStereo (0x702c7709)

Rhwinf (0x706e1913)

Rhwscr (0x70a4995c)

Zinf (0x70fc13ad)

Zscr (0x707f0e69)

InGameLaserSight (0x7064f0c2)

StereoCutoffDepthNear (0x7050e011)

StereoCutoffDepthFar (0x70add220)

EnableCE (0x702b8c95)

MediaPlayer (0x70a8fc7f)

StereoDX9 (0x70d10d2b)

StereoMsgVerticalOffset (0x70160ebf)

LaserSightTrigger (0x70031b88)

StereoLaserSightMaxCount (0x70bc864d)

StereoLaserSightCount (0x70077042)

StereoEasyZCheck (0x70b6d6ed)

StereoStrictLSCheck (0x709bc378)

StereoDisableAsync (0x70de5533)

EnablePartialStereoBlit (0x7096eced)

StereoNoDepthOverride (0x709dea62)

StereoShaderMatrixCheck (0x7044f8fb)

StereoLogShaders (0x7052bdd0)

StereoEpsilon (0x70e5a749)

DelayedStereoDesktop (0x7042eef1)

DX10VSCBNumber (0x70f8e408)

DX10DSCBNumber (0x70092d4a)

InGameLaserSightDX9States (0x706139ad)

StereoMiscFlags (0x70ccb5f0)

StereoHiddenProfile (0x70e46f20)

StereoLinkDll (0x70e46f2a) - text

EnableStereoCursor (0x70e46f2b)

CreateStereoDTAfterPresentNum (0x70a7fc7f)

Date_Rel (0x705fafec) - text

May contain the release date in the form YYYY-MM-DD 00:00:00

Game (0x70c8d48e) - text

Style (0x709cc5e0) - text

Publisher (0x706c7030) - text

Developer (0x703c4026) - text

API (0x70b5603f) - text

Usually contains "D3D" or sometimes gibberish (decoding issue?)

Value (0x7049c7ec)

Compat (0x7051e5f5)

PF_Issues (0x704cde5a) - text

P1SH0 (0x70998683) - text

V1SH0 (0x70e6a3cf) - text

PSH0 (0x7046516e) - text

VSH0 (0x708b7af8) - text

VSH1 (0x708b7af9) - text

VSH2 (0x708b7afa) - text

VSH3 (0x708b7afb) - text

VSH4 (0x708b7afc) - text

VSH5 (0x708b7afd) - text

VSH6 (0x708b7afe) - text

VSH7 (0x708b7aff) - text

VSH8 (0x708b7b00) - text

VSH9 (0x708b7b01) - text

VSH10 (0x708b7b02) - text