The trouble with PC development
For all the progress made on my Pong clone in my late night session, there’s been something niggling me about it ever since.
It just seems a bit… jerky.
Being completely new to this, my first instinct is that I must be doing something wrong. Something in my code, something in how I’ve set up the window, or how I’ve written my timing loop, must be making the animation less smooth than I’d like.
So I tried a few alternatives - enabling vsync, disabling vsync, changing the timing routine to run to framerate rather than to an absolute timer. None of which made the game any smoother, and some of which actually succeeded in making it even jerkier than ever.
A couple of hours later I was back to square one. Mooching around the SFML forums I stumbled on someone else who’d been having the same problem. He’d posted some source code, which looked very like mine. Forumites advised him that the code looked fine. He then compiled a binary and sent it to someone else to test on their machine. They reported back no jerkiness. The conclusion seemed to be that the SFML libraries just don’t work particularly well with his graphics chipset - which happens to be the same onboard Intel chipset that I have on the laptop I’ve been coding on.
This, it seems to me, is the trouble with developing for PCs. There are so many different devices out there that you can never assume any two of your end users will ever have exactly the same setup.
Some of these variables I’m already learning to adjust for - making my game work with various possible display sizes, for instance. Others, like this jerkiness issue, I’m less thrilled with and will have to keep an eye on.
For now I’m going to soldier on with what I have - it’s not that jerky, now I look at it more closely - but if it becomes more of a problem when I start on bigger, more ambitious projects I may have to bail out on SFML and try one of the alternatives.