C++ as a primary game programming language

Started by
3 comments, last by Washu 12 years, 2 months ago
Tell me, guys, who caused this mess and why newbies keep choosing C++ as their primary game programming language? Personally, I think, C++ is still too low level to be good for games, as it's strong-typed and static and it's good for low-level stuff. Games are high level and they really want weak dictionaries and dynamic MVC, along with many other paradigms.

Also, I was recently told that JavaScript would feature a class-based OOP. What? Yes, it's a feature, but still... what the heck? It's JavaScript! It's prototype-based system! It's awesome! Why does it need (please don't blame) a low level feature, taken from other low-level or static-typed languages? Personally, I think, you need to implement classes when you can't achieve it other way, i.e. dynamically.

Yes, I heard it once. Some said that programming in C++ is cool. But why? Is writing high-level stuff in low-level language cool? In my experience, it causes lots of pain to others and to yourself. What are the other reasons folks can't find when they choose learning low-level languages when they actually need dynamic and high-level?

Seriously, guys, tell me, what's going on.

Yours faithfully,
Nerijus Ramanauskas
See what I look like at LinkedIn.
See what I do for ngmoco:) and On5.
See what I do for The Mocosel Community (follow us at Twitter).
Advertisement
C++ works. Out of the hundreds/thousands of games released each year, how many use C++? Personal opinion or prejudice does not outweigh the evidence of years of experience with a proven platform.

That said, I can see that you're coming at it from the perspective of fairly high level game logic. Yes, that is needed (and yes, C++ may not be the best language for that), but there is also a lot of very low level data mangling needed too. That's where a low level language capable of operating on bits and bytes really shines - you get more functionality, better performance and potentially in fewer lines of code too.

Direct3D has need of instancing, but we do not. We have plenty of glVertexAttrib calls.

There are many things I don't like about C++, but it being too low level is not one of them. A lot of low-level functionality can be wrapped neatly in classes and then the code that uses those classes is high level, and it doesn't matter that it's written in C++.

If you happen to be more productive in some other language, by all means use it.

Yes, that is needed (and yes, C++ may not be the best language for that), but there is also a lot of very low level data mangling needed too. That's where a low level language capable of operating on bits and bytes really shines - you get more functionality, better performance and potentially in fewer lines of code too.

Yes, but isn't it what a good game engine should take care of? Yes, I agree, sometimes you need play with your bits. But still, this could be transformed into a high-level module of a game engine which would perform things you (less or more) actually need.

Yours faithfully,
Nerijus Ramanauskas
See what I look like at LinkedIn.
See what I do for ngmoco:) and On5.
See what I do for The Mocosel Community (follow us at Twitter).
As per: http://www.gamedev.net/blog/563/entry-1467700-the-famous-language-thread-list/


This one enjoys fairly significant popularity. (Note that only threads containing significant discussion are included.)

1) Professional Games Made In C#?
2) Java for game development?
3) Java----C/C++
4) c++ or c#
5) Question about Java Vs. C# Vs. C++
6) Java Games?
7) Java is fast?
8) Secondary Language:VB or Java?
9) What makes C++ so powerful?
10) C# games and cheating...
11) Is C# good enough for system utility programming
12) MC++ vs. C#
13) Which language is best for a 3d Games Engine?
14) C# vs C++ as a choice for development
15) Is Java the Future?
16) why C# and not Java?
17) What do you think of the D language?
18) my c++ d c# benchmark!
19) The Definitive Guide to Language Selection
20) Sharp Java
21) C++ or C#?
22) C++ or C#?
23) Java disadvantages
24) C++ or C#?
25) Visual C++.net vs Visual C#.net
26) C# - huh?
27) which language should i learn?
28) C or C++ or C#
29) learn C or C++ ??
30) Is C still useful in gamedev?
31) Why C# XNA When Everyone Wants C/C++
32) JIT compiled code vs native machine code
33) C++ or C?

This particular list is my top ten, because of the sheer frequency with which they occur. 12 days, 10 threads.
1) c++ or c# (5/1/06)
2) Java for game development? (5/2/06)
3) Java Games? (5/3/06)
4) Java----C/C++ (5/3/06)
5) MC++ vs. C# (5/4/06)
6) What makes C++ so powerful? (5/9/06)
7) C# games and cheating... (5/9/06)
8) Is C# good enough for system utility programming (5/9/06)
9) Which language is best for a 3d Games Engine? (5/11/06)
10) C# vs C++ as a choice for development (5/12/06)
[/quote]

In time the project grows, the ignorance of its devs it shows, with many a convoluted function, it plunges into deep compunction, the price of failure is high, Washu's mirth is nigh.

This topic is closed to new replies.

Advertisement