Étant donné que vous utilisiez Game Maker, je suppose que vous êtes sous Windows, alors sautez au plus profond avec le SDK direct-x. Les exemples fournissent le code source et vous donnent également un aperçu de la puissance dont vous disposez. Ce n'est pas parce que vous voulez faire un jeu 2D que vous devez vous en tenir à une bibliothèque 2D, à un moment donné, vous voudrez probablement faire quelque chose que la bibliothèque ne met pas en œuvre en elle-même (shaders ou rotations ou quelque chose de aléatoire que vous venez de BESOIN pour votre projet).
SDL - et probablement SFML et Cinder - fournit une approche de haut niveau "qui a éliminé les bases" pour être un moteur, de sorte que vous auriez tout le pouvoir de le faire à partir de zéro (vous pourriez donc avoir des shaders de pixels en SDL), mais vous ne sauriez pas comment les choses ont été faites. Vous feriez alors du vrai C ++ dans un cadre d'aide, ce qui vous aidera à faire avancer les choses, mais ne vous sera pas d'une grande aide pour vous apprendre à développer des jeux si vous travaillez dans une entreprise de développement de jeux.
SDL, SFML et même Cinder sont tous des moyens intelligents d'éviter de se familiariser avec les choses difficiles en C ++. Ils enveloppent normalement OpenGL, ce qui est utile pour savoir si vous voulez coder des graphiques pour des machines non-Windows, mais il y a des tonnes de ressources pour faire le travail dans Direct-X aussi (probablement plus car le virus Windows s'est propagé à tous les coins de la monde).
Si vous ne voulez pas apprendre les choses sérieuses, alors très bien, mais sinon, n'ayez pas peur de commencer à partir d'une application Win32 brute.
Je vous suggère, pour plus de confort, de commencer avec tous les différents packages d'assistance que vous pouvez trouver, mais dirigez-vous vers l'écriture de votre propre moteur de rendu. L'écriture d'un moteur est très amusante et peut vous fournir une ressource à regarder dans vos futurs projets. Rien ne crée un bon code comme la sagesse de mal le faire dans le passé.