i've been studying C++ for 11 months and I would still consider myself quite
"inexperienced" in the field.
C++ is the most industry standard language. Even though I have seen company's looking
for C# programmers a lot lately (for server side development)
Java is more used for small time applications (such as mobile games) rather
than grand scale projects. Java support OpenGL as well as Direct X.
The fact that garbage collection is not up to programmer in Java, hurts it
more than it helps. While it does make life easier for the programmer. It
slows down your program and (at rare times) leads to some nasty bugs in
the program
Take a look at Employment areas for Software Engineers
EA Sports
Blizzard
Bethesda Softworks
Bungie
What do you notice in all of these ? they all require that you have extensive
knowledge of C++. There's bound to be changes in the future in where
framework languages will get more recognition into the game industry.
Languages such as Java and C# are still fairly new compared to C/C++.
And in the end it's really all about preference. In my opinion nothing could
ever be
too complicated for the human mind and grasping something
as C/C++ is far from impossible.
If you really love programming than you will go to any means to learn what
you love to do. Even if it does mean learning something difficult.