Hi,
Hab diesen trick im GTAForum.com gefunden und möchte dass auch andere in den genuss kommen.
der originale post ist von MonkeyMHZ und ich muss sagen das ich durch diesen tweak endlich ein optisch gelungenes spiel zogge obwohl ich nur 320mb vram besitze high res high tex. und keine lade lags oder popups.
sry das ich zu faul zum übersetzen bin aber wofür gibt es :
Google Übersetzer
The Idea:
You've heard this rant a million times, GTAIV was future proofed all reflections and shadows are scaled with the resolution. A stupid yet seemingly unfix-able problem that makes the game a mess. Playing a game in 1024x768 or lower is not acceptable. If I wanted to do that I would pull out my P2/P3 with its 32/64mb graphic card. From looking at GTAIV, it has a lot of new technology but nothing that should struggle to run on 8800's or even 8600's. Its that resolution scaling, im sure of it!.
http://www.postimage.org/image.php?v=PqZPfFS
The Plan:
There must be a way to correct this mess. Lets look at our checklist.
- Configs/Settings Profiles in game directory? /fail.
- Will R*'s patch will add more options in? /fail.
Not long ago I figured out you can run in windowed mode in 800x600 and then stretch the window larger and it gets around R*'s quality scaling that would increase the reflection maps.etc that would lag the game and make objects/textures disappear and horrid pop-ins. It made the game look good because you weren't dealing with such a low resolution and the game played extremely well.
I wanted to look into this and see if you can achieve the same thing without stretched the window manually every time.
The Support:
After browsing the net, I noticed others used commandline.txt to set the size of their window, and some people have achieved resolutions over their memory limit without using -norestrictions and only using the resolution from the command lines. This instantly helped me find the answer I wanted.
How To Do It:
Theory:
Now my theory was that, if you have a memory limit on, and you enter a resolution in the command line that is unable to be achieved with that memory limit, it will still put you in that resolution, but the quality scaling will not be implemented. Therefore no disappearing objects/textures, no long or noticeable pop-in's, and less/no lag.
The trick is implementing the higher resolutions with you preferred graphic settings, by limiting your memory to just barely include the options you want, and then you force the resolution.
Steps:
1. Get rid of -nomemrestrict or any current commandlines you have. Run the game and let it die. When you run the game, go to the graphic options, turn your resolution to 800x600 or 1024x768 or whatever you want the reflection maps/resolution based quality to be at, I did 800x600 mainly because it looks simular to the rest and will give you the most performance. Use the rest of your memory budget in draw distance.etc.
2. If you cannot acheive the graphical settings you want with your currently memory budget do this next step. If you can, then you can skip this step.
make commandline.txt or append -availablevidmem (multiplier):
This command works like this, say I have 256mb vram. -availablevidmem 2.0 would make it say I have 512mb vram, its a multiplier.
So for getting our settings as we want it lets make a budget of 512mb vram, so -availablevidmem 2.0.
Open GTAIV, set resolution in the ingame settings to 800x600, set rest of the options to whatever you want (be reasonable).
Now continue to the next step.
3. Now you have your game set as you want it, but in a f-ugly resoltion, but we will fix that. Next step is to trick GTAIV, even people with 512mb graphic cards or even 1gb, this is even useful for them.
One of my buddies with a 8800GTX loves this tweak because it allows him to get much higher frames with very little to no graphical loss.
So now lets say all our desired settings ingame @ 800x600, use 650Mb. Ok. But say were now using a 1GB card so it says 650/1024Mb. This is a problem now because if we force -height 1080 -width 1920. We will end up with our ingame options changing to 1920x1080 giving us way more slowdowns because R* starts using that dam scaling reflection maps.etc with resolution.
So what we need to do now is limit the memory GTAIV sees to exactly the amount to run our game in 800x600 (or whatever quality refection maps.etc you want) with our desired settings.
So lets go back to our dilemma, we have a 1GB graphic card and the game only takes up 650mb with the settings we want in 800x600.
We can figure this out by doing some simple math.
1GB Card (650mb desired settings): 650/1024 = 0.635 (its 0.634 but give a tiny bit extra, just like a couple megabytes).
So you would use -availablevidmem 0.635 that would make the game detect you only have 650mb ram which barely fits the features you want in 800x600.
So now once we have figured that out your commandline.txt or your shortcut appending should look like this (depending on what resolution you want/your vidmem.etc):
-height 1080 -width 1920 -availablevidmem 0.65
and maybe you add stuff like (-framelimit, or -noblank or whatever).
*BUT DO NOT USE ANY UN-RESTRICTION (this includes the nomemrestrict and norestrictions or anything like that)!
4. Now when we start up our game. We will be in our desired resolution, and when we look in the game options it will say 800x600, even though we are in a way higher resolution and all your settings will be how you want them and your memory budget will be exactly the right amount or similar like 650/650 or 742/746.etc
Funny thing here you wont be able to go back cuz it will detect your memory budget is to low and the game is forcing a higher res, so you might not be able to leave the options screen now, so alt tab, and close the game. If all your settings looked right and it said 800x600 but was clearly in a higher res. Then you did everything right, if not, go retry.
5. Now restart the game and play. Yay, good fps, cheated GTAIV to not up the reflection quality with the resolution.
Additional Speed: If you happen to be running Vista x86/x64 and you have a directx10 capable graphic card. Do what elecg2 figured out. I tried creating empty/easy HLSL shaders and putting them in GTAIV to get rid of shadows and stuff but that didn't work.
However by doing what elecg2 tried, I got a huge performance increase,
Go to GTAIV folder, go into common, then shaders.
Backup everything in there <- !!!
Then copy the contents of win32_30_atidx10, and paste them into win32_30_nv8. Or just rename the folders, whatever makes you happy.
That gave me a significant performance boost and I have no graphical problems or abnormalities. Try it, if it causes you problems or decreased performance then just put it back to normal. With these steps you can get your game running beautifully in no time, or at least better than before.
Enjoy.
*Ill be adding screen shots tonight.
original post:
GTAForums.com -> ~! Ultimate GTAIV Performance Fix !~
Hab diesen trick im GTAForum.com gefunden und möchte dass auch andere in den genuss kommen.
der originale post ist von MonkeyMHZ und ich muss sagen das ich durch diesen tweak endlich ein optisch gelungenes spiel zogge obwohl ich nur 320mb vram besitze high res high tex. und keine lade lags oder popups.
sry das ich zu faul zum übersetzen bin aber wofür gibt es :
Google Übersetzer
The Idea:
You've heard this rant a million times, GTAIV was future proofed all reflections and shadows are scaled with the resolution. A stupid yet seemingly unfix-able problem that makes the game a mess. Playing a game in 1024x768 or lower is not acceptable. If I wanted to do that I would pull out my P2/P3 with its 32/64mb graphic card. From looking at GTAIV, it has a lot of new technology but nothing that should struggle to run on 8800's or even 8600's. Its that resolution scaling, im sure of it!.
http://www.postimage.org/image.php?v=PqZPfFS
The Plan:
There must be a way to correct this mess. Lets look at our checklist.
- Configs/Settings Profiles in game directory? /fail.
- Will R*'s patch will add more options in? /fail.
Not long ago I figured out you can run in windowed mode in 800x600 and then stretch the window larger and it gets around R*'s quality scaling that would increase the reflection maps.etc that would lag the game and make objects/textures disappear and horrid pop-ins. It made the game look good because you weren't dealing with such a low resolution and the game played extremely well.
I wanted to look into this and see if you can achieve the same thing without stretched the window manually every time.
The Support:
After browsing the net, I noticed others used commandline.txt to set the size of their window, and some people have achieved resolutions over their memory limit without using -norestrictions and only using the resolution from the command lines. This instantly helped me find the answer I wanted.
How To Do It:
Theory:
Now my theory was that, if you have a memory limit on, and you enter a resolution in the command line that is unable to be achieved with that memory limit, it will still put you in that resolution, but the quality scaling will not be implemented. Therefore no disappearing objects/textures, no long or noticeable pop-in's, and less/no lag.
The trick is implementing the higher resolutions with you preferred graphic settings, by limiting your memory to just barely include the options you want, and then you force the resolution.
Steps:
1. Get rid of -nomemrestrict or any current commandlines you have. Run the game and let it die. When you run the game, go to the graphic options, turn your resolution to 800x600 or 1024x768 or whatever you want the reflection maps/resolution based quality to be at, I did 800x600 mainly because it looks simular to the rest and will give you the most performance. Use the rest of your memory budget in draw distance.etc.
2. If you cannot acheive the graphical settings you want with your currently memory budget do this next step. If you can, then you can skip this step.
make commandline.txt or append -availablevidmem (multiplier):
This command works like this, say I have 256mb vram. -availablevidmem 2.0 would make it say I have 512mb vram, its a multiplier.
So for getting our settings as we want it lets make a budget of 512mb vram, so -availablevidmem 2.0.
Open GTAIV, set resolution in the ingame settings to 800x600, set rest of the options to whatever you want (be reasonable).
Now continue to the next step.
3. Now you have your game set as you want it, but in a f-ugly resoltion, but we will fix that. Next step is to trick GTAIV, even people with 512mb graphic cards or even 1gb, this is even useful for them.
One of my buddies with a 8800GTX loves this tweak because it allows him to get much higher frames with very little to no graphical loss.
So now lets say all our desired settings ingame @ 800x600, use 650Mb. Ok. But say were now using a 1GB card so it says 650/1024Mb. This is a problem now because if we force -height 1080 -width 1920. We will end up with our ingame options changing to 1920x1080 giving us way more slowdowns because R* starts using that dam scaling reflection maps.etc with resolution.
So what we need to do now is limit the memory GTAIV sees to exactly the amount to run our game in 800x600 (or whatever quality refection maps.etc you want) with our desired settings.
So lets go back to our dilemma, we have a 1GB graphic card and the game only takes up 650mb with the settings we want in 800x600.
We can figure this out by doing some simple math.
1GB Card (650mb desired settings): 650/1024 = 0.635 (its 0.634 but give a tiny bit extra, just like a couple megabytes).
So you would use -availablevidmem 0.635 that would make the game detect you only have 650mb ram which barely fits the features you want in 800x600.
So now once we have figured that out your commandline.txt or your shortcut appending should look like this (depending on what resolution you want/your vidmem.etc):
-height 1080 -width 1920 -availablevidmem 0.65
and maybe you add stuff like (-framelimit, or -noblank or whatever).
*BUT DO NOT USE ANY UN-RESTRICTION (this includes the nomemrestrict and norestrictions or anything like that)!
4. Now when we start up our game. We will be in our desired resolution, and when we look in the game options it will say 800x600, even though we are in a way higher resolution and all your settings will be how you want them and your memory budget will be exactly the right amount or similar like 650/650 or 742/746.etc
Funny thing here you wont be able to go back cuz it will detect your memory budget is to low and the game is forcing a higher res, so you might not be able to leave the options screen now, so alt tab, and close the game. If all your settings looked right and it said 800x600 but was clearly in a higher res. Then you did everything right, if not, go retry.
5. Now restart the game and play. Yay, good fps, cheated GTAIV to not up the reflection quality with the resolution.
Additional Speed: If you happen to be running Vista x86/x64 and you have a directx10 capable graphic card. Do what elecg2 figured out. I tried creating empty/easy HLSL shaders and putting them in GTAIV to get rid of shadows and stuff but that didn't work.
However by doing what elecg2 tried, I got a huge performance increase,
Go to GTAIV folder, go into common, then shaders.
Backup everything in there <- !!!
Then copy the contents of win32_30_atidx10, and paste them into win32_30_nv8. Or just rename the folders, whatever makes you happy.
That gave me a significant performance boost and I have no graphical problems or abnormalities. Try it, if it causes you problems or decreased performance then just put it back to normal. With these steps you can get your game running beautifully in no time, or at least better than before.
Enjoy.
*Ill be adding screen shots tonight.
original post:
GTAForums.com -> ~! Ultimate GTAIV Performance Fix !~
Zuletzt bearbeitet:




)