Allegro, OpenGL.. or even DirectX?

This is a discussion on Allegro, OpenGL.. or even DirectX? within the C++ Programming forums, part of the General Programming Boards category; Ok, i am trying to get into game programming. Taking a double course so to speak. Atm my C++ knowledge ...

Allegro, OpenGL.. or even DirectX?

Ok, i am trying to get into game programming. Taking a double course so to speak. Atm my C++ knowledge is limited, however i am learning more any chance i get. Please don't say focus on one thing and nothing else, it would prob be best, but going knee deep into book after book on improving my c++ skill and whatnot would drive me insane. So I'm taking mostly C++ with a bit of API on the side.

Now for the question, Which route do you think i should go with? Allegro, which is what i am currently doing. I have not tried OpenGL in full force, nor DirectX. However from the tiny bit i have skimmed of OpenGL tutorials Allegro seems FAR easier.
Now i am not looking for sheer ease of use, i am more looking for longterm efficiency and effectiveness. So, with those two in mind, which should i put all my API effeort into? Allegro, OpenGL, or DirectX?

From what i hear, DirectX is the hardest. I am not scarred away by how hard something is, however it would be nice if i could make some progress without learning say 1000 lines of code to put an image up, and then 1012 lines to make the img dance.

So with all i have said in mind, which do you think? After i go knee deep in as many tutorials i can find in whichever API i choose, i am sure i'll be buying a few books on said API. So commitment is not an issue, just understanding it all is hehe.