Hello! I am new here, and I have a quick question.
I know a lot of C++ (Obviously not everything, and I am constantly learning more), and I hope to be a game programmer in the near future.
As for game programming, is DirectX necessary? I am not asking if I should learn another library, etc. I am asking if, in order to be, for example, a "Gameplay programmer", is directX necessary to learn?
I have looked at job postings for such a job, and most say "Great c++ programming skills" as a requirement, but never direct x. Some say "Experience with DX9 2.0 or above level Shaders and HLSL a plus", but a PLUS is not a REQUIREMENT. I realize it would probably be a great increase in my ability to land a job.
So, my question is, In order to work at a game studio as a gameplay programmer, is it necessary to know DirectX?
No, DirectX is really only useful if you're applying as a graphics programmer, and have been in the game industry for years. A junior programmer will almost always end up as a gameplay programmer. You will be expected to learn their game engine; which could be a custom engine or something like Unreal or Unity. Each of these engine will isolate you from the underlying OS and graphics API.
...go ahead and learn that DX or OGL.
I would argue that your time would be better spent finding a graphics API (SDL, Cocos2d-x, HaXE NME, etc.) Using low level graphics APIs requires learning more about the OS than is really necessary. Most of these problems are already solved in SDL or Cocos2d-x.