There is a 93 page thread over at the Creative forums about the huge fps hit many suffered after switching to an XFi card - even after a nuke & pave - in BF2 at the ultra high, XFi specific audio setting. While this couldve been expected some, not unfairly, questioned Creatives ad-copy stating an FPS increase when using the new gen cards. Much gnashing of teeth ensued.
Creative techs visted the thread irregularly offering suggestions that for the most part didn't pan out. Finally some enterprising soul found that the OpenAL dll file that BF2 uses is, well, old. If you copy the OpenAL.dll from win/sys32 and rename it to the BF2 dll there is a measureable increase in sustained FPS and general smoothness in-game. I recommend this fix to anyone using the XFi card wanting a better experience:
1. Go to: C:\WINDOWS\system32\wrap_oal.dll
2. copy wrap_oal.dll
3. paste it on the desktop
4. rename wrap_oal.dll into BF2OpenAL.dll Check to make sure it's version 1.1 (right click, properties...version tab Open AL 1.1). If it's not update your chipset drivers then update your sound card drivers. If that still doesn't update it to 1.1 go here
Click Here For Download
5. Go to: X:\Program Files\EA GAMES\Battlefield 2
6. Copy BF2OpenAL.dll in the Battlefield 2 directory
7. Right click in that directory and select "PASTE"
8. It will make a copy called "Copy of BF2OpenAL.dll
9. Delete BF2OpenAL.dll in the Battlefield 2 directory
10 Copy BF2OpenAL.dll from desktop into: X:\Program Files\EA GAMES\Battlefield 2
11. Go to: C:\...\My Documents\Battlefield 2\mods\bf2\cache\(delete all cache file)
12. Go to: C:\...\My Documents\Battlefield 2\dmp\*.dmp --delete all files with a *.dmp extension.
13. when you enter the server pull down the command box. For me I use the "~" key.
14. Type renderer.drawfps 1 (some of you may need to hit the spacebar twice to move it once...don't ask it's stupid).
15. Also type game.lockfps 999
165. Play BF2 and see if you notice an increase or sustain frame rate in BF2
Play game.
Credit for the instructions goes to Eastcoasthandle.
Creative techs visted the thread irregularly offering suggestions that for the most part didn't pan out. Finally some enterprising soul found that the OpenAL dll file that BF2 uses is, well, old. If you copy the OpenAL.dll from win/sys32 and rename it to the BF2 dll there is a measureable increase in sustained FPS and general smoothness in-game. I recommend this fix to anyone using the XFi card wanting a better experience:
1. Go to: C:\WINDOWS\system32\wrap_oal.dll
2. copy wrap_oal.dll
3. paste it on the desktop
4. rename wrap_oal.dll into BF2OpenAL.dll Check to make sure it's version 1.1 (right click, properties...version tab Open AL 1.1). If it's not update your chipset drivers then update your sound card drivers. If that still doesn't update it to 1.1 go here
Click Here For Download
5. Go to: X:\Program Files\EA GAMES\Battlefield 2
6. Copy BF2OpenAL.dll in the Battlefield 2 directory
7. Right click in that directory and select "PASTE"
8. It will make a copy called "Copy of BF2OpenAL.dll
9. Delete BF2OpenAL.dll in the Battlefield 2 directory
10 Copy BF2OpenAL.dll from desktop into: X:\Program Files\EA GAMES\Battlefield 2
11. Go to: C:\...\My Documents\Battlefield 2\mods\bf2\cache\(delete all cache file)
12. Go to: C:\...\My Documents\Battlefield 2\dmp\*.dmp --delete all files with a *.dmp extension.
13. when you enter the server pull down the command box. For me I use the "~" key.
14. Type renderer.drawfps 1 (some of you may need to hit the spacebar twice to move it once...don't ask it's stupid).
15. Also type game.lockfps 999
165. Play BF2 and see if you notice an increase or sustain frame rate in BF2
Play game.
Credit for the instructions goes to Eastcoasthandle.