d3d9.dll - some things don't look right

Post » Sat Feb 19, 2011 10:18 am

I noticed that water effects and specular highlights on the road look a little bland compared to their fallout 3 counterparts. I took a look and screenshots without the d3d9.dll and my eyes couldn't see much of a difference in stills, but in motion I do believe something to be missing

I did some research on that file and it actually belongs to a commercial software called SwiftShader. ShiftShader's primary function is to emulate complex shader routines on the CPU, but when used in conjunction with a graphics card it is a speedier alternative to Microsoft's own d3d9.dll

Whoever has been saying that it has something to do with forcing directx 9 as opposed to 10/11 is full of [censored] because that's not what it does it all. It isn't even made by microsoft

Swiftshader can only handle up to pixel shader 2.1. This is fine for this game since AFAIK it hardly makes use of 3.0, but I think it does make some use of it hence the visual difference me and some users claim to see. You can probable achieve the same effect by swapping shaderpackage files in the shaders folder under the data directory but I'm not sure which ones are 2.0 only for which card manufacturer (different shader packages for nvidia/ati)

Update - I'm wrong

This dll was created by the lead programmer of swiftshader, but other than that it has nothing to do with swiftshader. The only thing it does is spoof a directx variable IDirect3D9::GetAdapterIdentifier into a 7900gs (or ATI with another version floating around)

That is why the size is so much smaller than the real d3d9.dll which I assume runs in parallel just fine. What I want to know is, what is the game trying to do differently on a GTX 460 (or any DX10/11 card) that causes performance to suffer? All the launcher settings are identical EXCEPT for renderinfo.txt.

HERE IS THE REASON FOR THE DROPPED FPS:

In your documents\my games\falloutnv folder is a file called rendererinfo.txt. When using the 7900gs spoof via the dll file, it will try to use nv4_disp.dll which is also what fallout 3 will try and use no matter what

I have an nvidia gtx 460 and THIS FILE DOES NOT EXIST ON MY SYSTEM, it's the main driver dll for nvidia's OLDER drivers. So without the .dll it will use nvd3dum.dll

This causes the slow down when NPCs are talking and it just might be the emotions (look at the eyes, they look different while talking)
User avatar
Nick Swan
 
Posts: 3511
Joined: Sat Dec 01, 2007 1:34 pm

Post » Sat Feb 19, 2011 4:16 am

http://www.transgaming.com/business/swiftshader/technology/
User avatar
Ross
 
Posts: 3384
Joined: Thu Aug 10, 2006 7:22 pm

Post » Fri Feb 18, 2011 8:00 pm

....is full of [Don't avoid the censor]....


Not quite. Mistaken? Yes. No need to be rude about it.

And I do believe I also said if I was mistaken, someone was free to correct me. Though I figured they would do so politely. (Silly me.)

Edit: Forgot the 'n' on mistaken.
User avatar
Ellie English
 
Posts: 3457
Joined: Tue Jul 11, 2006 4:47 pm

Post » Sat Feb 19, 2011 7:52 am

I noticed that water effects and specular highlights on the road look a little bland compared to their fallout 3 counterparts. I took a look and screenshots without the d3d9.dll and my eyes couldn't see much of a difference in stills, but in motion I do believe something to be missing
I did some research on that file and it actually belongs to a commercial software called SwiftShader. ShiftShader's primary function is to emulate complex shader routines on the CPU, but when used in conjunction with a graphics card it is a speedier alternative to Microsoft's own d3d9.dll
Whoever has been saying that it has something to do with forcing directx 9 as opposed to 10/11 is full of sheeeit because that's not what it does it all. It isn't even made by microsoft
Swiftshader can only handle up to pixel shader 2.1. This is fine for this game since AFAIK it hardly makes use of 3.0, but I think it does make some use of it hence the visual difference me and some users claim to see. You can probable achieve the same effect by swapping shaderpackage files in the shaders folder under the data directory but I'm not sure which ones are 2.0 only for which card manufacturer (different shader packages for nvidia/ati)

I agree, I wouldn't use this replacement .dll trick.
Those with stuttering and freezes are often trying to play with AA, or using high settings.
Which is okay, but you need the heavy hardware.
There is already plenty of dumbing down to be done in the settings, and common sense would tell you that using a more primitive d3d9.dll to force the situation is probably not the smart way to go.
Maybe if a PC didn't meet the minimum spec and I was trying to get it to play, I might use that.
But not on a modern rig.
See, guys are setting their settings dopey high, then the d3d9.dll forces the earlier lesser video modes, and the guy is happy.
His PC plays the game on Ultra!
When what they should be doing is turning off the AA and using the modern .dll with maybe medium or low settings.
A much more reasonable approach, but harder on the ego. :P
Regards
User avatar
Erich Lendermon
 
Posts: 3322
Joined: Sat Nov 03, 2007 4:20 pm

Post » Sat Feb 19, 2011 3:57 am

Sorry wolfpup, I shouldn't have been harsh. You found something that definitely works, but I'm afraid we're missing out on some more advanced shader techniques now. I'm also noticing artifacts with some of the bug splattering particle effects

I'm reading more about swiftshader and you can place a swiftshader.ini file along with the .dll and advanced settings (more ram, enable SSE 2,3, set the number of threads to render on) but I'm not sure if by default it auto-detects this or not. Might be worth playing around to get a further FPS boost if it even works

Gryphon, I'm pretty familiar with the Fallout 3 / NV launch settings (they're identical) and setting to low, medium, high, and ultra only chooses settings from default ini files located in the game's installation folder (labeled low.ini, medium,ini, high.ini, veryhigh.ini). Even if you set everything to low and turn bloom/hdr off, there is still massive FPS losses with NPCs talking or when fighting several people at once. The launcher allows you to adjust these manually as well (ultra sets everything at the highest though). There are settings for textures/fx, water, shadows, and LOD sliders. Even on a weak modern rig, there really isn't a difference with the shadow, LOD, and textur/fx settings. Mainly the water and of course AA (but not AF, AF really has no performance hit anymore and should be maxed out) and also a setting for transparency AA which is bugged in FO3/NV.

I think changing the .dll file to be whatever card you have (instead of the 7900 gs) will still fix the FPS at the expense of shader effects
User avatar
Albert Wesker
 
Posts: 3499
Joined: Fri May 11, 2007 11:17 pm

Post » Sat Feb 19, 2011 6:38 am

hell i cant even start the game with a newer D3D9.dll launcher just crashes not that i mind using the older one that works lol
User avatar
Alexis Acevedo
 
Posts: 3330
Joined: Sat Oct 27, 2007 8:58 pm

Post » Fri Feb 18, 2011 8:40 pm

Sorry wolfpup, I shouldn't have been harsh.


No sweat, I'm over it. :)

Over all I have had very few graphical issues. I had the same, very infrequent, minor issues with Oblivion/Fallout 3 without this dll file so I'm not confident saying that FNV's issue is due to it myself. I'm also not willing to play without it to find out either as it's running so sweet right now. :thumbsup: (Even with the quick FPS drops here and there on exterior cell transitions.)
User avatar
Adam Kriner
 
Posts: 3448
Joined: Mon Aug 06, 2007 2:30 am

Post » Fri Feb 18, 2011 8:26 pm

i'm glad someone started a thread on this subject. People are very quick to say "this dll fixed all my problems" without really understanding what this file actually does. After reading that link you posted i still don't really know what it does. lol
I have compared several screenshots both with and without this dll. There are definately differences, but overall the textures and object rendering are identical as far as i can tell. The most noticable difference for me is the that the bushy grass looks worse, and some details in the distance are jaggy (check out telephone polls and radio style towers). But like the OP said, the differences can't really be seen in still shots.
So for me, i can either use this dll, or drop the settings from "ultra" to "high". Both seem to have the exact same effect. I'm gonna try removing this dll for a few hours of gameplay and see which i prefer over long stretches of gameplay.

I would be interested to see what other differences people have found with using this dll.

-deluxxe
User avatar
Latino HeaT
 
Posts: 3402
Joined: Thu Nov 08, 2007 6:21 pm

Post » Sat Feb 19, 2011 3:19 am

I agree, I wouldn't use this replacement .dll trick.
Those with stuttering and freezes are often trying to play with AA, or using high settings.
Which is okay, but you need the heavy hardware.
There is already plenty of dumbing down to be done in the settings, and common sense would tell you that using a more primitive d3d9.dll to force the situation is probably not the smart way to go.
Maybe if a PC didn't meet the minimum spec and I was trying to get it to play, I might use that.
But not on a modern rig.
See, guys are setting their settings dopey high, then the d3d9.dll forces the earlier lesser video modes, and the guy is happy.
His PC plays the game on Ultra!
When what they should be doing is turning off the AA and using the modern .dll with maybe medium or low settings.
A much more reasonable approach, but harder on the ego. :P
Regards


amd phenom II x4 3.8
4 gigs of ram
2 5870's in crosfire

It's not my ego its the game. I get under 10fps or less with NPC's on the screen. Unacceptable for my rig and for that matter anyone who has built a rig in the last 4 years. You should be able to crank the (censored) out of this game on a rig like mine. One of my graphic cards sits at 30 percent while my other sits idle.
User avatar
Katie Pollard
 
Posts: 3460
Joined: Thu Nov 09, 2006 11:23 pm

Post » Sat Feb 19, 2011 6:24 am

How about some comparison shots at different times of day? I did a few comparisons when first trying the DLL and when I checked screenshots they looked identical, but I didn't try too many places at different times. The issues previously mentioned concern AA. With the replacement DLL there is no alpha anti-aliasing so all of foliage looks nasty.
User avatar
Wayne W
 
Posts: 3482
Joined: Sun Jun 17, 2007 5:49 am

Post » Sat Feb 19, 2011 3:05 am

Well I dug a little deeper and now I'm the one full of sheeeit because it doesn't use swiftshader, it was merely made by a developer of swiftshader (and if you open it in a hex editor, the reason it mentions swiftshader is it was meant to run along side it if you rename the swiftshader d3d9.dll) so ignore most of what I said about it and the .ini settings

It was created last year and posted originally here:

http://www.oldblivion.com/sm/index.php?topic=5831.msg76421#msg76421
http://www.oldblivion.com/sm/index.php?topic=5831.msg77247#msg77247

The reason why it was created was to spoof the graphics card recognized by the game:

I merely changed the result of the IDirect3D9::GetAdapterIdentifier method. Basically it tells the application the name of the graphics card. It's incorrect to use that information to determine the card's capabilities (there are separate methods for that), but that's what the FaceGen component of Fallout 3 is doing.

That's the only thing it does, hence the small size. Since the real dll is also still loaded, that is probably why the game continues to work

So, to summarize - the lead developer of swiftshader created a hack of sorts to spoof the graphics cards detected by the game. The detected graphics card has nothing to do with low,med,high,ultra settings in the launcher, but does have an effect on what shader package is loaded and whether to use nvidia or ati. Since the rendererinfo text files are the game for my gtx 460 and the fake 7900gs, then what the heck is the game holding back from us with DX10/11 cards? Is it really the emotions on the face, more advanced shaders? I'm curious to know why...
User avatar
Holli Dillon
 
Posts: 3397
Joined: Wed Jun 21, 2006 4:54 am

Post » Fri Feb 18, 2011 11:04 pm

How about some comparison shots at different times of day? I did a few comparisons when first trying the DLL and when I checked screenshots they looked identical, but I didn't try too many places at different times. The issues previously mentioned concern AA. With the replacement DLL there is no alpha anti-aliasing so all of foliage looks nasty.


My screenshots look identical.. Something seems off when it's in motion though, maybe it's all in my head because I know we had to change something to get it run better

Alpha anti-aliasing definitely works, in the launcher just choose transparency multisampling or force it in your video card profile. On my gtx 460 , none of the forced AA settings work in the nvidia control panel, I have to use nvidia inspector and add the falloutnv.exe to fallout 3's profile to get it to work.

Using the in-game method there is a dithering checkerboard pattern less apparent at higher resolutions, but it definitely makes the grass better. Unfortunately it destroys the blood textures and makes the game much less bloody
User avatar
stephanie eastwood
 
Posts: 3526
Joined: Thu Jun 08, 2006 1:25 pm

Post » Sat Feb 19, 2011 8:26 am

IIt is though that the NPC lag issue is due to DX10/11 in some way. Exactly what isnt know, but the dll basically tricks the game into thinking you have a card that is DX9 only, thus eliminating any possability of DX10/11.

This temporary fix isnt for people with low end computers, but more for people who under normal conditions, should have no problems playing the game. And I stress temporary, cus the developers better fix this issue, but till then, any degrading in quality it may cause, it is well worth it rather then playing a slideshow of a game just because there is an NPC in view.
User avatar
A Boy called Marilyn
 
Posts: 3391
Joined: Sat May 26, 2007 7:17 am

Post » Sat Feb 19, 2011 3:34 am

Yeah.. we should really lower our settings because our rigs can't possibly handle the game. Gpu's 30-35%, cpu >25% usage and the game run terribly without the d3d9.dll

I know I could dump down some settings and run the game fine without the dll, but for some reason I worrie that my computer would go to sleep mode while playing.
User avatar
Julia Schwalbe
 
Posts: 3557
Joined: Wed Apr 11, 2007 3:02 pm

Post » Fri Feb 18, 2011 10:33 pm

Sytem specs:

Intel Core 2 Quad Q660 2.4 GHz
2 Gigs Ram
500 Gig Hard Drive
Nvidia GTS 250 (Equal to a 9800+) 1 GB (260.99 Driver)
Direct X (9.0c Updated)
Windows XP SP3
(OS is set up for performance - No background programs, etc...)


Without the .dll fixed that was offered on this Forum - New Vegas would have been unplayable. The stutter was so noticeable regardless of what the in games settings where. Lowering everything to the Lowest setting (800x600 - everything set to low or off) did not help with the stuttering issue. It was not until the .dll fix (Thankyou) that New Vegas became playable. The visual differents are minor and a great trade off - in respects to having stutter and being unplayable.

I never had problems like this with fallout 3. Fallout 3 runs fine on the above system (With Quad Core .ini fix for interior crashes) with no stutter at all.

Not having the .dll is not an option for many - and that would include me.

Game runs fine now with .dll fix.

Futhermore, with the New Nvidia 260.99 drivers - fixes the AA white Block Flashes.
User avatar
Latino HeaT
 
Posts: 3402
Joined: Thu Nov 08, 2007 6:21 pm

Post » Fri Feb 18, 2011 11:05 pm

based on my experience you lose significant image quality when using the dll . kinda cripples the new cards its trying to help. I don't have stuttering though so whatever it takes to play a fun game without annoyances. With the 260.99 nvidia driver i ditched it. still slow but smoother fps. may lower my settings next time and see how it plays and looks
User avatar
natalie mccormick
 
Posts: 3415
Joined: Fri Aug 18, 2006 8:36 am

Post » Sat Feb 19, 2011 2:35 am

I overlooked something. Check this out, take the .dll out temporarily and run the game (actually go in game otherwise this won't work). No exit and copy out rendererinfo.txt from mygames\falloutnv folder

Move .dll back and do the same thing. Notice at the top there is a difference

WIth the dll and spoofed 7900gs:

nv4_disp.dll

With my actual gtx 460:

nvd3dum.dll

Don't know what the difference between the two is but I do know that I do not have an nv4_disp.dll on my system at all

Update - nv4_disp.dll is the old name for nvidia's display driver. Nv3dum.dll is the new name.... I think. A 32-bit version resides in the windows\sysWOW64 and a 64-bit version entitled nvd3dumx.dll is in the system32 folder. I tried copying them to the fallout folder and also copying the 64-bit one and renaming it but graphics still stutter with the .dll

Nvidia must be mapping calls to nv4_disp.dll some where....
User avatar
Marine Arrègle
 
Posts: 3423
Joined: Sat Mar 24, 2007 5:19 am

Post » Fri Feb 18, 2011 10:07 pm

Also using the .dll

Like most i was concerned about quality when i saw my 20-30 fps go up to a near constant 60, i did side by side screens of a few different times of day and locations but wasn't really able to see a difference.

Although when doing some run a rounds i too seem to notice a higher overall quality using the default settings, seems to be better lighting and shader detail, also using the .dll gives me the sun flickering when moving behind objects... but using the default settings the sun and lighting works as expected without the flicker.

In the end though, for me at least, using the .dll provides a much smoother and enjoyable experience even with the sun flicker, and hardly perceivable quality difference ;)

Win-7
i7 860
GTX 295
4gbs ram

***EDIT***
DX10 would be pretty worthless in FNV as it has no world object shadows.
User avatar
Stephanie I
 
Posts: 3357
Joined: Thu Apr 05, 2007 3:28 pm

Post » Fri Feb 18, 2011 11:44 pm

i just tried again without the dll, and using the toggleemotions command. fps shot up to 60. So now i have two options ;)

btw, does anyone know exactly what the NPC facial animations are/look like/do? i've tried talking to NPCs both with and without this feature on, and cannot tell what it actually does.
User avatar
Steph
 
Posts: 3469
Joined: Sun Nov 19, 2006 7:44 am

Post » Fri Feb 18, 2011 8:30 pm

i just tried again without the dll, and using the toggleemotions command. fps shot up to 60. So now i have two options ;)

btw, does anyone know exactly what the NPC facial animations are/look like/do? i've tried talking to NPCs both with and without this feature on, and cannot tell what it actually does.



=O
Brilliant!! ty ill have to have a look see, and yes what exactly do these animations look like?>
User avatar
Amy Smith
 
Posts: 3339
Joined: Mon Feb 05, 2007 10:04 pm

Post » Sat Feb 19, 2011 2:29 am

The .dll file is only compatible with dx9 ?

Fallout NV is only an dx9 game so shouldnt notice any difrence then.

So what quality are ppl talking about we loose ?

Forget dx10 and dx11 cause the game dont touch that normaly eighter.

Edit: when you don`t use the dll file it will use dx10 or dx11 (depends what your gfx card suport) and it will emulate dx9.

Now with the dll file it automaticly uses dx9 from the 7900gs card as it thinks you have installed.
User avatar
Marina Leigh
 
Posts: 3339
Joined: Wed Jun 21, 2006 7:59 pm

Post » Sat Feb 19, 2011 6:44 am

I have been using the temp fix on my rig and I am right down the middle between best and min. The one and only thing I have seen it do is change from ultra high to medium and changes how and when distance objects load. I don't think its the cure buy a placebo until the vaccine comes out. Just my 2 cents or whatever you want to call it.

All and if you don't want to DL it from the mirror sites go to nexus and they have it there. :fallout:
User avatar
^_^
 
Posts: 3394
Joined: Thu May 31, 2007 12:01 am

Post » Sat Feb 19, 2011 6:40 am

IIt is though that the NPC lag issue is due to DX10/11 in some way. Exactly what isnt know, but the dll basically tricks the game into thinking you have a card that is DX9 only, thus eliminating any possability of DX10/11.

This temporary fix isnt for people with low end computers, but more for people who under normal conditions, should have no problems playing the game. And I stress temporary, cus the developers better fix this issue, but till then, any degrading in quality it may cause, it is well worth it rather then playing a slideshow of a game just because there is an NPC in view.



Nope...

If it wasn't for dll fix I'd have half the fps and terrible stuttering.

My rig is not low end by any means and absolutely crushes any game out there...the only game that gives it a run for it's money is Metro 2033 ( And New Vegas ,,lol )

Fallout 3 plays flawlessly....

New Vegas runs pretty good with the fix...but could be better.

19x12
4AA
16AF
V-sync on
Ultra
HDR..etc.

60 fps ( I am using the ATI version of the dx9.dll fix because it fixes some of graphical errors caused by the first one )

It's not my rig...it's the game.

i7 920 @ 3.4
9 g ddr 3 1333
5970 OC
SSD
Win 7

It;s a stupid dll error that some how got through testing....and that"s it !

I had to replace the atimgupld.dll library with a 64 bit version to get rid of poor performance, HDR flickering and green water reflection caused by Crossfire in FO 3..once I did that it ran / runs flawlessly.

Thinking about doing it again. for New Vegas.

New Vegas was released in an awful state...there is no excuse.

The atimuguld.dll library exchange changes the ATI profile so it thinks it's running the Crysis 64 bit profile....made a huge difference !
User avatar
Lory Da Costa
 
Posts: 3463
Joined: Fri Dec 15, 2006 12:30 pm

Post » Sat Feb 19, 2011 7:59 am

what is the "ati" version of the fix? Is your fix for crossfire only? I thought the only thing to do right now was to use the dll.
User avatar
Killah Bee
 
Posts: 3484
Joined: Sat Oct 06, 2007 12:23 pm

Post » Sat Feb 19, 2011 8:07 am

I just want to add that the dll fix does not work for me I saw no change when I tried it I put it in the right folder, it did nothing . The only thing that has helped is the temo command in the consul and changing the fsplitDistanceMult to 1.5000, (Thanks to the dude who posted that) however the stutter is still shows up there especially around lots of npcs but at lest the game is playable, or I should say more playable, I hope this issue is fixed by a patch soon, 260GTX win 7 64bit, 4 Gig menory, 3.01 GHZ dul core AMD64.
User avatar
Lavender Brown
 
Posts: 3448
Joined: Tue Jul 25, 2006 9:37 am

Next

Return to Fallout: New Vegas