FALLOUT NEW VEGAS
Alternate D3D9 fix for ATI plus D3D9Gen by Aleksei Vasiliev
New Vegas » Bug Fixes
Added: 22/10/2010 - 05:31PM
Updated: 06/01/2011 - 02:36AM

1,332 Endorsements

0.3 Latest version

64,977 Unique D/Ls

99,807 Total D/Ls

510,937 Total Views

Uploaded by AlekseiVasiliev

Description

Last updated at 2:36, 6 Jan 2011 Uploaded at 17:31, 22 Oct 2010

Short desc: Alternate D3D9.dll which results in better performance/compatibility for users of recent ATI cards by properly configuring FaceGen. Also available is a generator of semi-customized DLLs. See below for which you should use.

Note: After the 2010/11/9 patches, this fix might be obsolete. Make sure your game is patched, and see if this makes it run better or not.

Modern ATI cards, below the 5000 and 6000 series: Use the "D3D9 dll for ATI" file, or D3D9Gen. Either should work.

ATI Radeon 5000 or 6000 series cards: Use D3D9Gen, in the optional files section, to prevent graphical glitching.

Cards from NVIDIA, Intel, old ATI cards, etc.: Use D3D9Gen, in the optional files section of the Files tab.

See a fullsize comparison image here: http://www.newvegasnexus.com/downloads/images/34970-1-1287967262.jpg

Install: Drop this in your Fallout New Vegas directory.
This should be \Steam\steamapps\common\fallout new vegas\

Troubleshooting/crashing:
- Xfire reportedly causes FNV to crash if you are using this
- Using two+ monitors may cause this to crash, use only one monitor
- Yes, it is SUPPOSED to detect your card as an NVIDIA 8800GS. Don't worry!
- Be sure to try the Nvidia version if this one doesn't work: http://newvegasnexus.com/downloads/file.php?id=34778 (even if you're on ATI)
- Or if you're feeling experimental, grab my beta D3D9Gen from the Files and use that.

Why does this work?
Fallout decides its render path (how it does the graphics) based on two things. The first is the name of your videocard. This is an incredibly bad idea for a number of reasons; Fallout can guess information about your card wrong because of this. This DLL lies to Fallout about what card you have, which can result in somewhat better performance, but it isn't a major issue unless it's drastically wrong, which will cause glitches.
The second (and far more important) thing it bases its decision on is something internal to the DLL; since I'm not the original creator I can't say what else it tells Fallout. From what I've read, it tells Fallout's FaceGen system to use a certain method that generally works much better for everyone. FaceGen is what causes the slowdown when looking at NPCs.

Here's a comparison of different RenderInfo files, which Fallout generates based on your videocard. Showing only important lines.


Standard FO NV, with my ATI HD 4870:
Renderer Device Information:
ATI Radeon HD 4800 Series
aticfx32.dll
RenderPath : BSSM_SV_2_B
PStarget : ps_2_b
PS2xtarget : ps_2_b
Shader Package : 17


Normal D3D9 perf fix:
Renderer Device Information:
NVIDIA GeForce 7900 GS
nv4_disp.dll
RenderPath : BSSM_SV_2_A
PStarget : ps_2_a
PS2xtarget : ps_2_a
Shader Package : 13

Notice how those lines don't match? It's detecting the wrong shaders for my card.


My mod of the modded DLL:
Renderer Device Information:
NVIDIA Geforce 8800 GS
aticfx32.dll
RenderPath : BSSM_SV_2_B
PStarget : ps_2_b
PS2xtarget : ps_2_b
Shader Package : 17


The card being detected doesn't matter. Now all the detected information matches a modern ATI card. This should improve compatibility/performance with ATI cards.

And yes, this DLL fix works. Steady 60FPS with it, crap FPS without.


(Original creator of the DLL is unknown -- might be a guy named c0d1f1ed)