Newbrict / engi

Oaktales engi fork
BSD 2-Clause "Simplified" License
0 stars 0 forks source link

Performance #8

Closed paked closed 9 years ago

paked commented 9 years ago

It has been found that on OSX (source @paked) and at least arch linux (source: @Newbrict) engi goes into what can only be described as a radical panic state when it is moved out of the main workspace (or taken out of focus). Usually after a few minutes it begins chewing up vast amounts of (presumably) CPU. During this phase, collision also seems to deactivate/not take effect. This is not confirmed on Windows (would love some confirmation xD please Windows users)

Newbrict commented 9 years ago

I found this is also an issue with glxgears ( an opengl test program ), it seems as though when the program is in the current workspace its resource allocation is limited, but when in another workspace it works as hard as possible....

paked commented 9 years ago

huh weir

Newbrict commented 9 years ago

So the reason this happens is because the renderer isn't limited by vsync when it's off the main workspace. to fix we just have to limit the framerate artificially

paked commented 9 years ago

Is there way we can only do this only while when it's off the main workspace?

paked commented 9 years ago

Or we could just pause the entire game while it is out of focus?

(Let's be real, in what situation do you actually want the game running while you aren't looking at it...

Newbrict commented 9 years ago

either way I want the frames rate limited. among other things. we could try listen for events and not render when it's out of the workspace.

Newbrict commented 9 years ago

In the new_physics branch the physics calculations are no longer affected by being off screen. frames still render without v sync limits though.

Newbrict commented 9 years ago

sick