Will it be C++ the preferred game dev language in 3 years from now?

Started by
54 comments, last by Satharis 10 years, 6 months ago

Hi adyrhan,
Reading all replies and thinking about it, I'd first try to find out where you want to be/ what your goal is. "Entering the game industry" honestly isn't very explicit. If you want to go for the AAA route, do you want to be developing:
- tech, engine code
- shaders
- ai code
- tools
- gameplay
... Etc

Depending on your goal, I'd go for the most common/used/best language for that specific subject.
If you go for do it all yourself, find out what you want to deliver and chose the language that will bring you that. Etc, depending on where you want to go.

Hope this helps

I think I'd like to be developing ai or gameplay, I'm still not sure, I guess I'd better try doing a little of all and then decide. AI and gameplay is what interest me the most, but I know what matters is the experience of the progress, and for that I'd have to try myself.

Thanks

Advertisement

We pretty much avoid C++ as much as possible these days - if it isn't required for a problem, then there's likely a better language for the job.

C# (with or without Unity) is a great contender for game development, for instance. But that's just my personal example; there's a vast array of languages that are OK for game development these days.

Of course, I'd expect AAA engines to have some C++ in them even in the future, but life in managed memory land is so much happier.

Edit: Cute anonymous people downrating. smile.png Come out of your caves uninformed cavemen.

I have a problem with people comparing C++ to C#. The language in C# is really meaningless. It's more about the .NET framework than anything else. However C++ doesn't even come close to anything like the .NET framework built-in. .NET really changed the idea of how we look at things like this yet no one seems to accept that lol.

I disagree. C# as a language (especially the later versions) has a lot of features that aren't in C++.

You can debate over the merits of things like dynamic, await and so on, but I don't think you can say that C# as a language is meaningless.

Even without the .Net framework, it's still a reasonably powerful language.

if you think programming is like sex, you probably haven't done much of either.-------------- - capn_midnight

Only think of Linux, Mac, IOS, Android, PS4, SteamOS etc. which are pretty much ~90% C++ or so. Sure foremost on Windows you could use other languages like C#, but who knows what market share this os will have in some years? Personally I'd have tried C#, if it would have been at least an open standard. I was interested in Java as well but never got into that.

@FGFS: You honestly think 90% of games "are C++" on the mobile platforms you mentioned? The underlying implementations are, but I can assure you the gameplay code is not. Read up on Unity, Corona, and other framworks. You're quite far off-track here. C++ more likely to be used for gameplay code in less than 10% of these mobile games. Heck, it will surprise me if it's more than 1% if making a point about being concise and excluding Objective-C (which retains popularity given it's Apple's official language and low level enough to be compared to C++). Now, if we discuss AAA games specifically, the figures will be somewhat higher, but you'll still be surprised how little C++ is actually used by mobile game developers directly.

Also, Linux & SteamOS are kind of irrelevant given that they run on similar hardware as to Windows, and when there's interest for developing games for these OSes similar tools are available (Unity, C# Mono, etc.)

Only think of Linux, Mac, IOS, Android, PS4, SteamOS etc. which are pretty much ~90% C++ or so. Sure foremost on Windows you could use other languages like C#, but who knows what market share this os will have in some years? Personally I'd have tried C#, if it would have been at least an open standard. I was interested in Java as well but never got into that.

C# is an iso and ECMA standard with an open specification, the more recent versions of C# has not been standardized by a third party(a new version of the standard is on its way though) but Microsoft does provide specifications for all versions up to C# 5.0 on their own.

.Net however is not standardized (core parts of it are included in the CLI standard) but probably shouldn't be either since large chunks of it are pointless on non desktop systems and others (such as GUI related classes) are tied heavily to the target platform.

If you're making cross platform applications in C# its best to use Mono on all platforms. it is fully compatible with C# 5.0 and has a few nice features that .Net lacks (Mono.SIMD and Mono.Tasklets are both pretty nice for game developers)

[size="1"]I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!

If C# would be fully open standard it would surely be included in Debian etc. As for example my x-plane plugin, it would be silly to ask users to download multiple

hundreds MB Mono runtime for a some kb plugin. As for Android you could use Java or C++, not sure about C#.

If C# would be fully open standard it would surely be included in Debian etc. As for example my x-plane plugin, it would be silly to ask users to download multiple

hundreds MB Mono runtime for a some kb plugin. As for Android you could use Java or C++, not sure about C#.

You can use C++ nearly anywhere (barring extremely limited embedded systems without proper compiler toolsets). Whether you want to and whether others do in practice is an entirely different matter. But I now know how much you know so it's fine I guess. ^^

As for Debian:


apt-get install mono

100 MB package shared among several applications? 0.01% of typical user's hard drive space, big deal.

If C# would be fully open standard it would surely be included in Debian etc. As for example my x-plane plugin, it would be silly to ask users to download multiple

hundreds MB Mono runtime for a some kb plugin. As for Android you could use Java or C++, not sure about C#.

C# works on both iOS and Android, there is also no need to pull in the entire mono package(atleast not on debian), mono-runtime is a 1-2MB download on debian (Depending on architecture), the core libraries are just a few extra MB and setting the dependencies properly in your .deb installer isn't that difficult.

[size="1"]I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!


C# works on both iOS and Android,

Seems you need to buy xamarin? If the mono runtime is that small i might have a look at it someday.

This topic is closed to new replies.

Advertisement