How long would it take me to learn how to program games in C++
a.) a simple 2d game.
b.) a complex 2d game, with scrolling etc.
c.) a 3d game.
i would be grateful if you could tell me how long it took you to program games like this, and what area's would be useful to learn if i wanted to make them.