Per creare un gdr singleplayer si potrebbe anche usare il Java ma ti consiglio ti concentrarti sul C/C++.
Vai alla tua libreria preferita (meglio se grande e fornita) e comprati un bel librone (librONE, quelli cha paghi 50€) sul C o sul C++; se hai soldi la cosa migliore sarebbe comprarne due, uno che si contentri sul C e l'altro sull'astrazione e la funzione delle classi nel C++.
Leggilo/i ed inizia ad assimilarne il contenuto.
Per provare quello che leggi nel libro ti dovrai scaricare un compilatore ed un IDE; ti consiglio la gratuita accoppiata Mingw(compilatore C/C++) + Dev-C++(IDE, ovvero l'interfaccia grafica).
Poi ti dovrai cercare una libreria che ti permetta di gestire con un certo livello di astrazione l'input(la tastiera, il mouse) e l'output(l'audio, il video). Qui ti consiglio Allegro.
Una volta scaricato Allegro segui le istruzione che trovi nel readme, molto attentamente(anche perchè questa è un operazione che dovrà diventare di routine per te) ed installalo.
Allegro ha un bel manuale che ti potrai/dovrai leggere con calma e nella normale installazione ci sono vari esempi di cui puoi leggere il sorgente per vedere come sono fatti.
Per eventuali(probabili) dubbi posta qui o mandami un pm.
Stai per iniziare un lungo cammino, giovane padawan...