I’ve started a Paper2D game in C++ as a Windows 64-bit application. So far I have a white background sprite and a spaceship sprite which can be moved left and right across the screen. The camera is set to orthographic.
Temporarily I have set the project settings to a fixed frame rate of 120FPS. This is to prove my point, whereas normally it will be 60FPS.
Ok, all the tick functions (camera, background and spaceship pawn) correctly receive a DeltaTime of 0.008 seconds, so in theory all looks good.
Now, on my Alienware gaming PC, I compile or package the project and the game runs perfectly, very fast @120FPS, whether I use the discrete GPU or run off the integrated graphics.
The bad news is that the same game built on my HP all-in-one PC or on my Surface Pro 4, runs really slowly. Both PCs are fairly low-spec, but that shouldn’t matter for a small game. Even though the tick functions receive the correct DeltaTime of 8ms, the actual game runs s-l-o-w, fluctuating anywhere between 20-60FPS for example (I know this because I output the actual time in milliseconds taken between each tick). So nowhere near 120FPS! Because of this, the input response is also very slow.
If I package up the game on the HP, then take it across to my fast Alienware, again, it seems to run slowly om the Alienware. Even bringing the packaged game from the Alienware (which ran fast) to my HP, the game runs slow on the HP.
I have coded the same game in App Game Kit 2 in C++ and it runs @120FPS perfectly on the HP PC and is very responsive to input. So no problems here with the computer obviously.
I don’t actually know what is going on. I tried setting the graphics performance to scalable in the config file, but this makes no difference.
So what is the story with UE4?