Dolphin, the GameCube and Wii emulator - Forums

Full Version: Same FPS, slower games?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7 8 9
Just pointing out.
I decided to try rev 3273 back to see about this.
The fps in games is the same in both that and any 34xx and greater rev.

Some games that use extensive use of graphics have that 'frameskipping', even if it actually is what PC games have (instead of updating the game with a 'tick' value of 1/60 seconds, it uses another value to keep up with the computer hardware, in Unreal Engine games it is a function called Tick( float Delta); called on all entities by a 'World' entity with a function called MainLoop)

Anyways, for those wii games that use this way of updating each frame: is it possible that revs 34xx fail to detect that the hardware is insufficient to keep up to with a perfect framerate and the games go on with the 1/60, 1/50, ect. formula? It might be the cause of which these games seem to be slower.

Whoever wants to try this out, just download a previous rev 33xx, 32xx and run brawl on any stage with 4 players, then do exactly the same (same config, stage, characters) on a 34xx or 35xx rev and you'll notice that FPS = Same, Game speed = Slower

I'm expecting to see if anyone can confirm this as well.

idkmybffjill

I have no idea what you just posed i didn't fell like reading, the bug there is pretty distracting..

*DON'T BLAME ME*

gcp111

(06-25-2009, 11:13 AM)idkmybffjill Wrote: [ -> ]I have no idea what you just posed i didn't fell like reading, the bug there is pretty distracting..

*DON'T BLAME ME*

dammit quit making me laugh


@topic: Sounds interesting, but what do you mean by
Quote:is it possible that revs 34xx fail to detect that the hardware is insufficient to keep up to with a perfect framerate
Do you mean Dolphin fails to detect sufficient hardware to run at an acceptable framerate?

idkmybffjill

sorry bro..
ill be outa here in a bit
(06-25-2009, 11:19 AM)gcp111 Wrote: [ -> ]@topic: Sounds interesting, but what do you mean by
Quote:is it possible that revs 34xx fail to detect that the hardware is insufficient to keep up to with a perfect framerate
Do you mean Dolphin fails to detect sufficient hardware to run at an acceptable framerate?

I'm saying that whatever tells the game to move on 1/xx (xx being your current fps) to make the game run in realtime is not working, it actually tells it to update the frame on 1/60 or 1/50 second.
If games like brawl work that way, it's because in some cases, it can't even reach the desired max framerate on a real wii, so, instead of updating physics and timers in a 1/50 (pal) seconds formula, it does 1/*current framerate* (quick explanation, it does differently). That way, game won't slowdown even on slow framerates.

Brawl in later revs can't see that we are not running on 50 fps (pal) all the time.

idkmybffjill

There's that bug again..

I'm sorry. What?

cmccmc

dammit why won't the bug die. I keep on clicking the screen but it won't die

idkmybffjill

Tee-Hee
I'll explain better:

This is a quick way of showing how a game works, you have the main world, the entities (weapons, enemies, you, etc), the rendering system.
A game follow this logic:

Main World >
Update All entities physics and other stuff >
Send packets for netplay >
Tell the render system to make a snapshot of the player's current point of view > (different games handle this in many different ways like: Pre Render, Render Overlays, Post Render for old Unreal Engine)

That whole process is usually done 60 times a second, greater if you disabled the 60 fps limit, lesser if your pc isn't strong enough.
Say, (1/60)s is 0.017s.
The game follows the logic, updates everything and checks how much time it took:
If the time is < 0.017s (fast pc), on a 60fps limited game, it will wait until time equals 0.017s to update again, otherwise it will go on updating as fast as it can.
If the time is > 0.017s (slow pc), the next update will be updated with a different Time value (the one that it actually took, the one > 0.017s, let's call it DELTA)

In a game, a projectile moves with a speed of 100 m/s, when that projectile is 'updated' will be placed away in the direction it is going by a 100m * DELTA. On a fast pc, DELTA is tiny, on a slow pc, DELTA is huge, but in the end, we'll see the projectile moving the same speed on both computer regardless their FPS. (Yes, objects don't 'move', they are relocated every frame in games)

gcp111

(06-25-2009, 11:39 AM)CacoFFF Wrote: [ -> ]I'm saying that whatever tells the game to move on 1/xx (xx being your current fps) to make the game run in realtime is not working, it actually tells it to update the frame on 1/60 or 1/50 second.

Oh. I have no clue about the Wii/GC or even PPC, but are you saying games update themselves based on a hardware timer, and that timer isn't being emulated properly? I dunno Tongue


also kill the bug, it's weird
Pages: 1 2 3 4 5 6 7 8 9