old-school nvidia s3d game profile tweaking advice

Discussion of legacy stereoscopic 3D gaming hardware and software (e.g. NVIDIA XP stereoscopic 3D drivers).
Post Reply
User avatar
iondrive
Sharp Eyed Eagle!
Posts: 367
Joined: Tue Feb 10, 2009 8:13 pm

old-school nvidia s3d game profile tweaking advice

Post by iondrive »

Hi all (all three of you :) ),

Well, so many years have passed since I started toying with the old nvidia s3d drivers but I still learn something once in a while. So, sorry this is so late in coming, but on the off-chance it might help someone, I thought I'd post what I've learned. Plus, I think there's a good chance that you can use some info here and apply it to new-school nvidia 3d-vision so w/o further ado, let's get started.


Making ".reg" files for your games:

Much of what I have to say involves editing the registry and you should know how to share s3d game profiles from this other thread:

http://www.mtbs3d.com/phpBB/viewtopic.php?f=97&t=5944" onclick="window.open(this.href);return false;


For newbies:

Basically you want to make a ".reg" file for each game you want to play and edit it with Wordpad to include any extra settings that don't automatically get included when you use the registry's export function. Then name that file something appropriate, put it in a convenient place and double-click it whenever you want to change your settings to that game. An illustration follows.


Start with a simple registry export:

Let's take "Aliens vs Predator Classic 2000" for example ($5 on Steam). This gets saved in the registry under AvP_Classic and if you find good s3d settings for the Alien for example, you can use nvidia's "save settings" hotkey, exit the game, start regedit, export the "AvP_Classic" entry and save it to a file called "AvP-2K-Alien.reg" and it should look something like this: (shortened for clarity, StereoConvergence is the most important entry)

Code: Select all

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\NVIDIA Corporation\Global\Stereo3D\GameConfigs\AvP_Classic]
"StereoConvergence"=dword:449bf631

Now include the game's preferred separation value:

There's something missing from the above. It saves your convergence setting but not your separation setting. Unfortunately, separation is a global variable and not a per-game settable thing so how can you make it so that your reg file changes it to what you want for that game since some games need different separation values? You have to edit your reg file to change the global separation value like this:

Code: Select all

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\NVIDIA Corporation\Global\Stereo3D]
"StereoSeparation"=dword:00000030

[HKEY_LOCAL_MACHINE\SOFTWARE\NVIDIA Corporation\Global\Stereo3D\GameConfigs\AvP_Classic]
"StereoConvergence"=dword:449bf631
Now your reg file changes both separation and convergence values even though they are in two different places in the registry. By the way, "StereoSeparation"=dword:00000030 actually means 48% since it's hex. (older drivers use floating point binary or something. This is with 162.50.) For winXP, you should just be able to look in the [HKEY_LOCAL_MACHINE\SOFTWARE\NVIDIA Corporation\Global\Stereo3D] registry directory and copy the separation value from there so you don't really need to know hex although sometimes the value might not be right for some reason. Make sure you use the "save settings" 3d hotkey and that should make it right. Even though this approach changes your global separation value, it should be fine as long as all of your reg files have their own separation values in them and you double-click the right reg file each time you switch to a new game.


Include more settings if you want:

"AvP Classic 2000" is a great example for me since there's so much it illustrates. For example, I like the marine to have a high Gamma to brighten things up since it's often uncomfortably dark for him so I include the StereoGamma entry in my reg file:

Code: Select all

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\NVIDIA Corporation\Global\Stereo3D]
"StereoSeparation"=dword:00000003
"StereoGamma"=dword:3fd9999b

[HKEY_LOCAL_MACHINE\SOFTWARE\NVIDIA Corporation\Global\Stereo3D\GameConfigs\AvP_Classic]
"StereoConvergence"=dword:463e15a4
"StereoGamma"=dword:3fd9999b corresponds to a gamma setting of 1.7 and, like separation, it's a global variable that you can copy out of the grandparent registry directory so you don't need to know how to convert binary floating point.


You can even include per-game hotkey settings:

One of the nice things about the nvidia s3d driver is that you have gamma control hotkeys so I decided to keep the default gamma at 1.0 (3f800000) and give the user handy gamma hotkey controls: "Z" (5a) for darker and "C" (43) for brighter since it's hard to find one good gamma value for all situations. Good values for the dark makes the light places too bright and good "light" values make the dark too dark. You can think of these controls as intensity controls on a marine's night-vision goggles. It works pretty good.

Code: Select all

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\NVIDIA Corporation\Global\Stereo3D]
"StereoSeparation"=dword:00000003
"StereoGamma"=dword:3f800000
"GammaAdjustLess"=dword:0000005a
"GammaAdjustMore"=dword:00000043

[HKEY_LOCAL_MACHINE\SOFTWARE\NVIDIA Corporation\Global\Stereo3D\GameConfigs\AvP_Classic]
"StereoConvergence"=dword:463e15a4

How to get the right keycodes for hotkeys:

Once again, these are global values so they may need resetting later which means you should make a "reset-settings.reg" file. More on that later. The way to get these numbers (5a for Z and 43 for C) is to google keycodes or just use the nvidia desktop control panel and set those things to the keys you want, hit "apply" and then look in the registry for those values.


Multiple reg files for the same game:

You may have guessed by now that this game may need multiple reg files if the marine needs different s3d settings from the alien or the predator. Well, you guessed right and it's no problem. Just do each creature one at a time and save settings in a differently-named reg file. In this case it's AvP-2K-Alien.reg, AvP-2K-Marine.reg, and AvP-2K-Predator.reg for the three different races you can be in this game. Just double-click the right one before you start playing as that race. It seems complicated and alot of trouble but most games are not like this and it's worth it anyway in my opinion. I've also encountered games where certain levels need different settings than other levels. Just make extra reg files for those odd levels. I really wish I could have written this 10 years ago if only nvidia had helped us more with this stuff.


Registry settings info:

Obviously, you need to know more about the registry entries in order to include them in your reg files and there're threads about them that I'll link to later. Often you can guess at the meaning of the setting but there are many that are non-obvious.

The links:
http://forums.nvidia.com/index.php?showtopic=95306" onclick="window.open(this.href);return false;
(I basically never visit nvidia's forums anymore)

http://www.mtbs3d.com/phpbb/viewtopic.php?f=7&t=3355" onclick="window.open(this.href);return false;
(locked)


Resetting your settings:

So after you're done with the marine using "Z" and "C" for gamma controls, you probably want to reset them so make a "reset-settings.reg" file and double-click it. This example file resets separation to 50%, gamma to 1.0, "increase-gamma" to Control-G, and "decrease-gamma" to Alt-G. Just add whatever you need and set it to whatever is appropriate for you. Also, you could just go to the nvidia desktop control panel and hit the "restore defaults" button on the hotkey configuration pane.

Code: Select all

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\NVIDIA Corporation\Global\Stereo3D]
"StereoSeparation"=dword:00000032
"StereoGamma"=dword:3f800000
"GammaAdjustLess"=dword:00000447
"GammaAdjustMore"=dword:00000247
"AvP Classic 2000" game profile:
For a fuller discussion on "AvP Classic 2000", see the game profile for it that I haven't made yet. :) I'll link to it once it's done.


Comments in your reg files:

Just recently I've decided to (and learned how to) include comments in my reg files. Just start a line with the semi-colon and put your comments there and it will help you and others understand things that you've put there.


Whew, I think that's it for this post.

Happy profiling,

--- iondrive ---

PS: please say "thanks" if you found this useful so I know I didn't waste my time.
Last edited by iondrive on Mon May 10, 2010 3:52 am, edited 3 times in total.
User avatar
iondrive
Sharp Eyed Eagle!
Posts: 367
Joined: Tue Feb 10, 2009 8:13 pm

the "Suggest Settings" hotkey

Post by iondrive »

Well, I've finally worked on understanding what the heck the "Suggest Settings" hotkey does as well as the "Unsuggest Settings" too. It turns out that it looks like some kind of temporary save-point regarding 3d setting adjustments. It may turn out to be handy once in a while. Here's the beef:

Let's say you've found some good settings but would like to find better and you want to use your "good" settings as a starting point. The Windows operating system lets you set Restore-points that you can return to later if things go bad and that's what you can do with these settings. Forget the words "suggest" and "unsuggest". Think "set" and "restore". Start with your "good" values, hit the "suggest settings" hotkey to set your restore point and your 3d settings will be stored temporarily in some buffer somewhere. Hitting either of the "unsuggest" or "write configuration" hotkeys will take you out of "restore-able" mode but "unsuggest" will act as a restore function and restore your 3d settings to what they were back when you originally hit the "suggest settings" hotkey. Hitting the "suggest" hotkey multiple times in a row with different 3d settings does not create multiple restore points. Only the 3d settings for the first hit will be remembered. I actually wish iZ3D and TriDef had something like this. The way I suggest using this is to hit the "set" hotkey right after the "restore" hotkey each time you use it otherwise you forget to re-set the settings after you restore. Think of them as one function that you hit two keys to use. This way your "good" settings will always be restorable. If you use macros with some speedpad or other controller, you can set one keystroke to trigger both things in sequence and things will be easier for you.

Quirks:
Hitting "suggest" might make your HUD disappear if you're using the frontplane to make it 2d. It seems to disable the RHWGreaterAtScreen value but I think you can normally work around that if it happens so this function can still be handy.

Suggested StereoConvergenceMultiplier:
Using the "suggest" hotkey changes this value but I'm unable to see any good results from trying to use it. It turns out you can make a StereoConvergenceMultiplier entry in your game's 3d registry entry but whatever I set it to, things always look the same. My advice is to just ignore it and don't play with it. It won't show up unless you create it anyway. I found it in the C:\NVSTEREO.LOG files.

OK, now the biggest mystery remaining is how to use the "autoconvergence" hotkey. It always seems to do nothing except create an "AutoConvergenceAdjustPace" in the game's 3d registry entry. I've played with different values but it always seems to do nothing.

Later all,

--- iondrive ---
User avatar
iondrive
Sharp Eyed Eagle!
Posts: 367
Joined: Tue Feb 10, 2009 8:13 pm

keycodes for odd preset hotkeys

Post by iondrive »

hi again,

I keep lernin' stuff and I've got to stop sometime.
Most of this post is copied from the iZ3D topic here on MTBS3D but it turns out it's applicable to old nvidia as well.

keycodes:
What if you want to set the Tab key to be a preset hotkey? You can't do it in the control panel because when you hit it, it takes you away from the text box. The same goes for "escape" and "return" keys but if you edit your profile, it turns out that you can use these keys for 3d settings after all. Here are the keycodes for some "odd" keys you may want to use. You can stick these in some reference file as a reminder. These are all decimal values so make sure you have the "decimal" radio-button pushed after you double-click the registry entry you want to edit. After you enter the decimal value, you can see the hex value and get it from there if you want. I have marked the things I haven't tested or are unsure about.

letters A-Z are keycodes 65-90
non-numpad number keys 0-9 are keycodes 48-57
"Space" keycode is 32
"Backspace" keycode is 8
"Tab" keycode is 9
"Caps-Lock" is 20 but you can just enter in the control panel. I suggest this for screenshots.

I'm unsure how well these work. I will try them as the need arises.
both "enter" and "numpad enter" use keycode "13"
"esc" keycode is 27 and could be good for StereoToggle
"Shift, Control, Alt" are +256, +512, and +1024 respectively
"Left-Shift" keycode is "272" (256+16)
"Left-Control" keycode is "529" (512+17)
"Left-Alt" keycode is "1042" (1024+18)


the escape key: (untested)
As noted, you might want to consider the escape key as a ToggleStereo key since it's used for menus, your screen would go 2d whenever you escaped to the menu and then back to s3d when you escape back but I think this might cause problems if you get "out of sync" with a double-escape at some point. It's just something to consider for some games where the menu gives you problems if it's in s3d.

Shift, Control, and Alt: (untested)
Usually, these are like modifiers but you can use them as isolated hotkeys if you want. The number comes from the keycode + the modifier keycode so Ctrl by itself is more like Ctrl-Ctrl and similar goes for Alt-Alt and Shift-Shift. Get it?

Your screenshot hotkey:
Tab or Backspace are good choices since these keys are big and easy to find and hit quickly although I've used Shift-something once when a magical ability was triggered with the shift key and I wanted a screenshot of it.

later,

--- iondrive ---
Last edited by iondrive on Wed May 12, 2010 1:45 am, edited 2 times in total.
crim3
Certif-Eyed!
Posts: 642
Joined: Sat Sep 22, 2007 3:11 am
Location: Valencia (Spain)

Re: old-school nvidia s3d game profile tweaking advice

Post by crim3 »

Whenever I look for info about this in google your posts at various forums are at the search results. So thanks! :)

Yesterday I was wondering how the hotkeys are stored in the register in a dword value, and the explanation was already here.
Zalman Trimon ZM-M220W / Acer H5360 with Another Eye2000 shutters / nVIDIA GTX760
User avatar
iondrive
Sharp Eyed Eagle!
Posts: 367
Joined: Tue Feb 10, 2009 8:13 pm

Re: old-school nvidia s3d game profile tweaking advice

Post by iondrive »

excellent, thanks for responding.

You know what's funny. Sometimes I try to research something by typing in a phrase in Google and I see some of the results are my own posts! I'm looking for new information, not my own posts! It's funny but I take it as a compliment although I could take it as meaning that I'm the only one in the world who cares about this stuff. ha.

Here are some links to my threads on Registry entry info although you probably found them already. Funnily enough, the MTBS3D forum post got locked while the one on nvidia didn't. I basically never visit nvidia's forum anymore since I don't feel welcome there since they don't have a place for old-school nvidia driver users.

http://forums.nvidia.com/index.php?showtopic=95306" onclick="window.open(this.href);return false;

http://www.mtbs3d.com/phpbb/viewtopic.php?f=7&t=3355" onclick="window.open(this.href);return false;

C-ya,

--- iondrive ---

PS: Oh, hey. I was thinking of starting a thread asking people to tell me how much of this info is still applicable to new-school drivers but maybe you could tell me. Are things still pretty similar? Still no multiple preset hotkeys with nvidia? They still use registry entries like this to store game settings? Thanks. I don't have 3d-vision obviously. Nor vista, nor 7 and I'm going to try living without them for as long as I can. :) I'm pretty happy with XP/98se. ha.
crim3
Certif-Eyed!
Posts: 642
Joined: Sat Sep 22, 2007 3:11 am
Location: Valencia (Spain)

Re: old-school nvidia s3d game profile tweaking advice

Post by crim3 »

iondrive wrote:PS: Oh, hey. I was thinking of starting a thread asking people to tell me how much of this info is still applicable to new-school drivers but maybe you could tell me. Are things still pretty similar? Still no multiple preset hotkeys with nvidia? They still use registry entries like this to store game settings? Thanks. I don't have 3d-vision obviously. Nor vista, nor 7 and I'm going to try living without them for as long as I can. :) I'm pretty happy with XP/98se. ha.
It looks pretty much the same in structure and value names, also for game profiles.
There is a new register key under stereo3D and in there there a value called 3dvision, but it doesn't seem to do much when changing it. That's the main difference overall: some values that could be changed before and have an effect now are ignored, or reset to the default value.
Zalman Trimon ZM-M220W / Acer H5360 with Another Eye2000 shutters / nVIDIA GTX760
User avatar
iondrive
Sharp Eyed Eagle!
Posts: 367
Joined: Tue Feb 10, 2009 8:13 pm

Re: old-school nvidia s3d game profile tweaking advice

Post by iondrive »

OK,

That's pretty much what I expected. At least the strategy of having one or more reg file per game is still valid so that's good.

Keycodes:
Just a little warning, if you google for a list of keycodes, you might get a list that doesn't apply to our situation here. I've found other keycode lists that differ so I guess they are for Mac or Linux/Unix. A correct keycode list should have 8 for the Backspace key. Another list I've found has 8 assigned to F11.


More tweaking advice: the Dual-Mono issue
Dual-Mono is what I call the effect you see with newer games where each eye sees it's own image but those two images are identical with no difference in parallax. Usually, you can use convergence to slide the images left and right but when you bring them together, they match up perfectly even with max separation. If you have these symptoms with a game, the thing to try is StereoTextureEnable. Add this to the game's 3d settings registry entry, set it to "1" and it might help fix that issue. It works with Prince of Persia, Warrior Within and X-blades and others but it doesn't always work. If it doesn't work, I would still leave it in and try to shut off post-processing effects first in the game's menus, then in the game's config files. That's the strategy for this problem. Good luck.


--- iondrive ---
Post Reply

Return to “Nvidia Legacy Drivers”