ScoreHero
Home | Forum | Wiki
Inbox [ Login ]Inbox [ Login ]
SearchSearch MemberlistMemberlist
ProfileProfile Log inLog in
[REL]Performance fix for GH games on ATI/AMD cards (Final Release)
Goto page 1, 2, 3, 4, 5  Next
 
Post new topic   Reply to topic    ScoreHero Forum Index -> Software
View previous topic :: View next topic  
Author Message
eydee  





Joined: 24 Jul 2008
Posts: 56

PostPosted: Sat Aug 22, 2009 8:17 am    Post subject: [REL]Performance fix for GH games on ATI/AMD cards (Final Re Reply with quote

2017 notice:

The reason of the dead links is file sharing hosts deleting the content and all of my accounts associated with it. The reason is unknown and they wouldn't tell. At some point I just got tired of it and stopped making new accounts and reuploading this.

For future reference, this mod does what many others do these days, runs the game in borderless fullscreen mode. This is all you need to fix the performance on AMD cards. There isn't any kind of magic here.

If you can no longer find a working mirror for this, any other mod that runs games in borderless fullscreen mode should work.


Original post:

Performance fix for Guitar Hero games on ATI/AMD cards
Created by Eydee (C) 2009, Beta v0.3 (24-08-2009) promoted to final release after more than 3 years.

Applies to:

- Guitar Hero 3: Legends of Rock (PC)
- Guitar Hero: Aerosmith (PC)
- Guitar Hero: World tour (PC)
- Windows Vista (x86 and x64)
- Windows 7 (x86 and x64)
- Windows 8 (x86 and x64)
- ATI/AMD Radon video cards. I have personal experience with 4k and 6k series cards, they all have this problem.

Description of the issue:

After the Relese of ATI/AMD Catalyst 9.5 drivers some Windows Vista and Windows 7 users experienced serious performance drop with the games mentioned above. In most cases the game became unplayable forcing the people to stick with outdated drivers. Although the issue has been reported to AMD through the official channels by numerous people, we are still waiting for the official fix in the drivers.

2013 notice:
Now it's 2013. After almost 4 years the issue hasn't been fixed yet.

This solution is meant to:

- Increase performance of ATI/AMD cards on Windows Vista/7/8 when playing these games
- Make the games reach the same performance level as with nVidia cards
- Fix/Work around the bug which was introduced in Catalyst 9.5 (and still persent as of 2013)
- Fix unplayable practice mode in GH: Aerosmith on Windows Vista/7/8
- Implement aspect ratio correction for analog non-widescreen monitors when configured correctly

It is not meant to:

- Increase performance when the target machine is not capable of running the game properly
- Fix the serious bugs in the games, especially the initial European release of GH: World Tour
- Increase performance in Windows XP

Known limitations, bugs:

- I have limited hardware resources for testing, so I cannot guarantee that it will work for you, sorry
- It doesn't work if you use a different font DPI (for Windows) from the default one.

Note to people with UAC (User Account Control) enabled (Default setting in Vista/7/8):
The DLL saves its settings into the game directory. If you install the game into "C:\Program Files (x86)..." and you put only the d3d9.dll file into the game folder, saving settings may fail unless you run the game at least once as admin. I included the ini file in the reuploaded zip to avoid this issue. Windows will copy it to "C:\Users\<<Username>>\AppData\Local\VirtualStore\<<GameInstallPath>>". If you need to change settings, edit the file located there.

System requirements:

- Any of these games installed and configured correctly.
- Microsoft Visual C++ 2008 SP1 Redistributable Package (x86)

Installation, usage:

Always delete the previous version before using the new one. Remove both the DLL and the ini file.

Just drop the d3d9.dll in the GH folder where the executable is located. The game will load this file instead of the one supplied with DirecX. This file will load the DirectX file then and change the way the game is displayed.

On the first run the file should create a d3d9-3.ini file. This contains 3 settings by default. Note that changing the config file is not recommended.

bChangeRes:

Default value: 1 (true) RESOLUTION MODE

The game will look exactly how it looks originally, you shouldn't notice anything else except for the performance difference and the limitations/bugs. The DLL will handle the screen resolution changes instead of the game/DirectX.

Other setting: 0 (false) ASPECT RATIO MODE

This is for analogue monitors with an aspect ratio of 4:3 or 5:4. Set the desktop resolution to 1280x1024 or 1280x960 and the in-game resolution to 1280x720. You'll get a nice letterboxed widescreen image.

Unused setting: -1

This is an untested setting. The DLL won't touch the screen resolution and the game window in any way. It is only for compatibility testing.

bForceRf:

Refresh rate overriding, set to 60 by default. Do not change this unless it is necessary. When the 60 Hz mode fails to initialize, the DLL will silently try the refresh rate of the desktop. Refresh rate overriding is skipped if this is set to 0.

bShowActivated:

Defaults to 0. If it's set to 1 a red rectangle will appear in the corner of the screen so you can make sure that the file is loaded and working.

Some notes:

I hope that AMD will fix this and this project will become useless. In the meantime feel free to use it and report back (even if it's working fine). Also don't forget to report the issue to AMD on the official channel listed below. Report the practice mode bug in GH: Aerosmith separately as it happens with every driver release and on all ATI cards AFAIK. Please don't forget that the Windows XP drivers have no known issues with the Guitar Hero games, so if the game's not working properly on your XP system then most likely PEBKAC.

Links:

The official thread of the issue on game.amd.com:
DEAD LINK REMOVED

Where you should keep reporting the issue:
http://www.amd.com/report

Visual C++ 2008 SP1 redistributable:
http://www.microsoft.com/downloads/details.aspx?familyid=A5C84275-3B97-4AB7-A40D-3802B2AF5FC2&displaylang=en

And finally...

DOWNLOAD LINK: FINAL RELEASE: v0.3 (24-08-2009)
https://www.dropbox.com/s/7lafbgqryq1uo4k/d3d9.zip


Now install the latest Catalyst and start playing :)

------------------------------
Changelog:

v0.3:
Resolution manager code rewritten from scratch
Implemented ALT+TAB feature
Fixed an issue when the game resizes itself to 1760x1448 regardless of screen resolution
Added ability to check if the file is loaded
Changed refresh rate handling
Added version information to the file
Fixed an issue where the DLL couldn't load or create the ini file when the active directory was different from the game directory

(2013 Notice: This can be considered a final version as it's been unchanged for more than 3 years. I don't know of serious bugs or ways to improve it, so I won't touch anything unless requested.)

v0.2:
First released version
Added configurable options
Added screen resolution management

v0.1:
Unreleased first build capable to run only at a fixed resolution


Last edited by eydee on Sat Feb 25, 2017 11:55 am; edited 11 times in total
Back to top
View user's profile Send private message
rsm  





Joined: 22 Aug 2009
Posts: 8

PostPosted: Sat Aug 22, 2009 3:15 pm    Post subject: Thanks Reply with quote

Finally, I can upgrade from the 9.4's!!!!


I'll report back once I get to try this.



Thank you so much Eydee, both my 4870 and me owe you big time.
Back to top
View user's profile Send private message
sebway  





Joined: 27 May 2009
Posts: 9

PostPosted: Sat Aug 22, 2009 3:51 pm    Post subject: Reply with quote

Oh god thank you so much eydee !!! this is exactly what i was looking for !

my system :
Quad Core Q9950 2.83Ghz
Ati HD4850 512MB GDDR3
6GB Ram DDR3 (1066MHZ)

With Catalyst 9.4 i could 'play' this game at 1280x768 with some minor lag and only in some stages, now with this little dll file i can run it in 1680x1050 on any stage completely lag-free with Catalyst 9.8 !!!!!

Thank you !!!!
Back to top
View user's profile Send private message
rsm  





Joined: 22 Aug 2009
Posts: 8

PostPosted: Sat Aug 22, 2009 5:04 pm    Post subject: Reply with quote

Eydee I'm having the following issue:

Using cat 9.8, upgrading to the latest visual c++, trying to run the game at 1920x1080, it seems like the image is blown up and I can only see the upper left corner of the screen.

Ini settings are at default for the dll. Changing the bchangeres to 0 apparently resizes it wrong and places my mouse over the show desktop button on win7 so I get stuck with gh running on the taskbar and me starting at the desktop. If i alt tab to it, i get a black screen.

Changing the bchangerf doesn't affect it.

Here's a screenshot:

There's actually more visible on the screenshot than what I actually get on screen, but it's still chopped as you can see.
Back to top
View user's profile Send private message
eydee  





Joined: 24 Jul 2008
Posts: 56

PostPosted: Sat Aug 22, 2009 6:00 pm    Post subject: Reply with quote

What is your desktop resolution? What resolution is set in the game? What resolution does your monitor report? And what is the native resolution of the monitor?
I need all this information and maybe I can find out what the problem is.

And try disabling the refresh rate setting as well. Maybe your monitor reports that it doesn't support 60Hz on that resolution.

EDIT:
I managed to reproduce the problem. For some season the resolution cannot be changed. Your in-game resolution is not the same as the desktop (I think) and there is some kind of bug in the graphics driver or the monitor driver conflicts with the DDI information of the monitor.

I set my desktop to 1280x1024 (native) and the resolution of a D3D app (I used 3DMark06) to 1920x1080 (not native but the monitor can display it). Switching to 3D mode failed and I didn't even use this DLL.

So switching the resolution fails for some reason but the bug is not in the DLL. I may include a warning message in later versions if the resolution change fails.

SOLUTION/WORKAROUND:
Open CCC, go to Desktop and Displays, Open the dropdown menu with the little triangle on the monitor and select Configure. On the Attributes tab uncheck the "Use Extended Display Information Data (EDID)......" and set your maximum resolution and refresh rate manually. It solves the problem for me.

What happens if you use the very same settings and delete my DLL from the game directory?
Back to top
View user's profile Send private message
rsm  





Joined: 22 Aug 2009
Posts: 8

PostPosted: Sun Aug 23, 2009 12:18 am    Post subject: Reply with quote

First of all, thank you for doing all this and actually helping me out with this issue. You are very kind.

Now on with the issue: this is definitely weird...


I'm using a panasonic plasma hdtv as my monitor.

My desktop is set to the same resolution, and the monitor does support 60hz at 1920x1080. I had already set the refresh rate manually in CCC to be at 60Hz.

Also, I went to the CCC page you said, and I don't have the checkbox for EDID, the only checkbox on the attributes page is "Enable ITC processing". The display is connected through HDMI.

When I delete your DLL from the game directory with my current settings, it loads up fine, however the microstutters are still present when playing. I'm not sure if that's what you were asking though, so please correct me if this isn't what you needed.

Thanks again.
Back to top
View user's profile Send private message
eydee  





Joined: 24 Jul 2008
Posts: 56

PostPosted: Sun Aug 23, 2009 5:24 am    Post subject: Reply with quote

That's interesting, I never knew that TVs can act that weird. I'll definately think about this. The thing that I suggested could have helped if you were using a monitor. The problem must indeed be caused by my file. I still need to know what happens if you play around with the in-game resolution. Does it happen to be a dual monitor setup or is the HDTV the only display device?

EDIT:

OK, I found the bug, in the game actually.
When the game calls IDirect3DDevice9::Reset it sometimes sets the window size to 1760x1448 for some reason. So even at 1920x1080 a portion of the screen gets off the screen. I have already implemented to code to correct this, it will be in the next update soon. It is not really a bug because the game wasn't designed to run in this mode.
Back to top
View user's profile Send private message
Reakt00r  





Joined: 18 May 2009
Posts: 641

PostPosted: Sun Aug 23, 2009 1:27 pm    Post subject: Reply with quote

eydee, thank you VERY much. I can now run the game at full 60fps with no slowdowns on 1920x1200. It works perfectly ;D
Back to top
View user's profile Send private message MSN Messenger XBL Gamertag: Reakt00r PSN Name: Reakt00r
rsm  





Joined: 22 Aug 2009
Posts: 8

PostPosted: Sun Aug 23, 2009 3:13 pm    Post subject: Reply with quote

Eydee, thanks, that's great to hear! Take your time.


Also the hdtv is the only display device, and if I play around with the in game resolution, it doesn't matter if I pick 800x600 or anything in between, the same thing happens.
Back to top
View user's profile Send private message
Zaom  





Joined: 16 Aug 2009
Posts: 4

PostPosted: Sun Aug 23, 2009 4:32 pm    Post subject: Reply with quote

That's odd.. it made GHWT stage play worse but it fixed GHA practice mode bug. :/

system:
Win7 x64, Intel Core 2 Quad Q8400, 8GB ram, ATI HD4890
Back to top
View user's profile Send private message
Elmand  





Joined: 28 Oct 2007
Posts: 120
Location: UK

PostPosted: Sun Aug 23, 2009 4:34 pm    Post subject: Reply with quote

I freaking love you. I had the stuttering problem for ages and was on the brink of uninstalling GH3. This has done the job and the game now runs smoothly on max settings at 1920x1080 .
_________________
Mallrat wrote:
MaddogMonty wrote:
BlazeDGO wrote:
In For Whom the Bell Tolls can anyone tell which one's bass and which one's guitar? I think they may have actually charted the bass intro on bass.
How dare they!
And these sons of bitches thought they could get away with it.....
Back to top
View user's profile Send private message XBL Gamertag: Elmand
eydee  





Joined: 24 Jul 2008
Posts: 56

PostPosted: Mon Aug 24, 2009 5:39 am    Post subject: Reply with quote

A new update is out, check out the first post.
Back to top
View user's profile Send private message
rsm  





Joined: 22 Aug 2009
Posts: 8

PostPosted: Mon Aug 24, 2009 11:54 pm    Post subject: Reply with quote

Eydee: thanks for the update, however I'm still having issues.

If I let bchangeres at it's default value of 1, when I try to start the game, I get a black screen with a lot of flickering and horizontal lines popping up with a view of my desktop. I never get to see the intro videos or the menu of the game itself unless I alt tab. When the GHWT window is not in focus, I can see the game loading up and the intro videos, however, the blown up issue is still there, with only the upper left hand part of the screen showing. I cannot go back to the game as the black full screen with desktop flickering reappears, and I must alt tab and terminate the game.

bchangeres at values 0 or -1 get rid of the black flickering and I can interact with the game. However the blown up issue is still there.

The refresh rate setting doesn't help with the problem.

Just for testing, I set bshowactivated to 1 and the red rectangle shows up.


Any ideas? Maybe it's a problem with my pc?
Back to top
View user's profile Send private message
eydee  





Joined: 24 Jul 2008
Posts: 56

PostPosted: Tue Aug 25, 2009 5:50 am    Post subject: Reply with quote

rsm:

I'm sorry to hear that it still doesn't work for you. When the black screen / flickering happens with default settings, it should work. What is your GPU / memory clock speed when running in this mode?. Does it switch to 3D speed decently?

I need to know 2 other things:

1. When you see the upper left corner only, what is the resolution reported by your tv? Is it 640x480? I've already asked that btw.

2. What happens if you untick the "Hide modes that this monitor cannot display" checkbox in desktop=>screen resolution=>advanced settings=>monitor?
Back to top
View user's profile Send private message
rsm  





Joined: 22 Aug 2009
Posts: 8

PostPosted: Tue Aug 25, 2009 4:43 pm    Post subject: Reply with quote

Hi Eydee, thanks for reply once again.

The card does switch to 3d speeds. When I launch the game, even during the black scree/flickering, I alt tab out to CCC over drive and it reports 750/900 for the core/mem.

Nowhere in the TV's menu is there an info page that displays the current resolution it's running at. However, I believe it is still 1920x1080 since when I alt tab the game keeps running in the background (I can still see the videos running, etc), and my desktop is still at 1920x1080.

When I went to untick the "hide modes this monitor cannot display" I noticed something weird.
First of all I must take back what I said in my previous post, the forcerf setting on your ini DOES affect the issue. If I change bchangeres to 0, the black screen+flicker still occurs UNLESS I change the forcerf setting to 0. While bchangeres is at 1, forcerf at either 0 or 60 doesn't get rid of the blackscreen+flicker.

More weirdness: ATI CCC reports the desktop res and refresh rate at 1920x1080 at 60Hz. When I went to untick the "hide modes...." check box on the windows advanced settings for the resolution in the monitor tab, the refresh rate set there is at 59Hz!. Even with the unsupported modes hidden, 60Hz is an option there. I chose it, clicked apply, but the setting doesn't seem to stick. When I open up the menu again, it's back at 59Hz.

Unticking the checkbox just gave me a couple more options in the lower end (25Hz, 24i, etc).
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    ScoreHero Forum Index -> Software All times are GMT
Goto page 1, 2, 3, 4, 5  Next
Page 1 of 5

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum




Copyright © 2006-2024 ScoreHero, LLC
Terms of Use | Privacy Policy


Powered by phpBB