Open yumtako opened 1 year ago
You mentioned on discord that you set your framerate target to 120fps but you capped your game at 90fps and would dip below that. How many of these issues still apply with a proper framerate target set?
You mentioned on discord that you set your framerate target to 120fps but you capped your game at 90fps and would dip below that. How many of these issues still apply with a proper framerate target set?
That only happened with the bike scene, and i retested afterward with a proper frametarget set (set to 90) all of the issues that i've mentioned still occur, except for the gun animation slowdown, which i've removed from the issue list.
BTW it seems the games still have some remnants of 50Hz/60Hz speed switching from the X360 version built into it, eg things like:
That GameIs50Hz
function (0x140001E40 in MGS3 1.0.0) probably would have been great to look through xrefs for to get an idea of what should be changed based on framerate, sadly in MC that func was gutted and replaced with return false
, and seems their compiler folded all the same return false
functions together, so now there's 500+ xrefs to that which are mostly not speed related :(
Maybe would be possible to go through each of them and mark down things that do look related, would probably take some effort though.
(alternately the function for that in X360 should have far less refs since it was left intact there, could be worth looking at to get an idea of things - iirc to find it in X360 you can look for what calls VdQueryVideoMode
)
Maybe you noticed this already though, but felt it was worth bringing up just in case.
BTW it seems the games still have some remnants of 50Hz/60Hz speed switching from the X360 version built into it, eg things like:
That
GameIs50Hz
function (0x140001E40 in MGS3 1.0.0) probably would have been great to look through xrefs for to get an idea of what should be changed based on framerate, sadly in MC that func was gutted and replaced withreturn false
, and seems their compiler folded all the samereturn false
functions together, so now there's 500+ xrefs to that which are mostly not speed related :(Maybe would be possible to go through each of them and mark down things that do look related, would probably take some effort though. (alternately the function for that in X360 should have far less refs since it was left intact there, could be worth looking at to get an idea of things - iirc to find it in X360 you can look for what calls
VdQueryVideoMode
)Maybe you noticed this already though, but felt it was worth bringing up just in case.
I did notice this, yes. I had actually hooked the function and forced it to return true (while also ignoring the specific calls that crashed), and I didn't see any difference in FPS/gamespeed. I may have been doing the hook too late though.
In the X360 version, when the refresh rate is at 50hz GV_TimeBase is set to 6 (default is 5, so 20% higher). The problem with higher refresh rates is that we can't divide the time base evenly. For example, 120hz would be 2.5, but GV_TimeBase is an integer (which is typecasted to a float in many places...). The X360 version is a good place to look though to find the problematic areas, so thanks for reminding me, but there are over 100 xrefs to go through :(
All tests done with TargetFrameRate set to 120. also, thank you so, so much for making this. i've wanted this type of thing for eons.
Stuff that is definitely broken:
First Person swimming is entirely broken and actually makes the game unpleasant to play at times (mainly in the area with spotlights after The Pain fight)Viewbobbing while swimming (third and first person)Walking in the box. if you don't notice it, try moving the camera up and down while boxwalking.Snake throws food too far (i have two ideas why: due to the lack of pressure sensitive buttons, the longer you hold the attack button the further the food is thrown, this could be messed up by the fps unlock OR it could simply be that food physics is capped with fps)Stuff that might be broken:
aiming in first person (with gun) seems to be slightly faster than it should be. feels too snappy, i guess maybe something tied to the floatiness/slowdown of the aiming (time from when you stop holding the trigger to when the aim stops moving)the stuff below was tested with TargetFrameRate set to 100
Bike segment/shagohod issues:
Stuff found by Strafe:
Certain guards are off-sync, especially Cobra Unit