most games

Started by
6 comments, last by Ravuya 17 years, 10 months ago
In the name of god Hi. why most games programing by c++ but dosenot use c#?
Advertisement
C# is new. C++ has many libraries. People have lots of code in C/C++. C# doesn't exist on all systems. A C compiler is easier to build for embedded systems.

Besides many other languages are used besides C++.
C# is relatively very new. C++ developers also have many libraries of their own code to reuse. C++ has a popularity which will not be overturned any time soon, IMO.

EDIT: Too slow. ._.
when you do something right, people won't be sure you've done anything at all.
For the same reasons most game developers didn't jump on the Java Craze 5 years ago, and probably won't move when the Foobar++ craze starts in 5 years.

- Existing investment (codebase, trained staff) makes us reluctant to change. If I have to port all my engine, tools, pipeline, and re-train my staff, I'd better be getting something REALLY good out of it.

- Harder to find external APIs (physics, rendering, audio, network, etc) for the new language. Most only have C/C++ bindings

- Doesn't support all platforms we're interested in (consoles, handheld, linux, etc)

- Developers are reluctant to trade run-time cost for development-time gains (so, while I can develop some stuff faster with C#, it comes at a runtime cost due to the interprented code, garbage collection, etc).

- Game development doesn't actually benefit that much from SWING/Forms (we do our own UIs, and it's really only our tools that use a 'windows' look and feel).

Ultimately, it's a mix of conservative attitudes towards source (many developers resisted the move to C++ for the longest time), and financial reasons (if I code it in C#, I can't reliably run it on anything by Win platforms, and even then I'll be dependent on the runtime being installed (which isn't always true), or be willing to install it (which isn't always feasible).

So... don't be blinded by the hype. Development languages are just tools, despite Sun/MS trying to convice you that their's is Totally Different And Revolutionary.

Allan
------------------------------ BOOMZAPTry our latest game, Jewels of Cleopatra
Hi,

there might be several reasons:

C++ is by far the most used language for game development. It's not only well known but also *portable*. You can write you game (client and server) and compile it on nearly any OS/machine/console/handheld out there (when paying attention to not using any OS specific calls).

There might be performance concerns using c# because the programmer doesn't have any control upon everything (as he has with c++). Also, c# is actually not 100% portable (mono for linux but nothing for mac afaik). And finally, c# does *only* exist since 2001 while c++ exists sind 1985 and thus has a lot more maturity. To enable a OS to run c#, you have to install the RTE, while this is not necessary with c++.

Overall I think that c# has it's advantages but will still need some years to break through within game development. Also the fact that the game consoles do not support c# will keep game developers away from it.

Metron
----------------------------------------http://www.sidema.be----------------------------------------
I use C++ because it works for me, and I don't really see much of a reason to switch (outside of superior memory management) to C#. Even if I did, it's not portable and the C# games I've seen so far have had serious problems with stocking the "right" assemblies for MDX. It's more or less the same reasons I didn't switch to Java (though that was mostly righteous indignation about not being able to stop the garbage collector from ruining my day), and (as was stated previously) probably the same reason I won't jump on another craze.

The C# craze reminds me a lot of the Smalltalk80 craze for the most part. Programming language fads are cyclical -- milk them for resume boosters.

Quote:Original post by Metron
Also, c# is actually not 100% portable (mono for linux but nothing for mac afaik).


Mono "works" on OS X for varying values of "work". I believe that most of the WinForms stuff still relies on WINE, which won't be available for a PowerPC-based Macintosh.

Note: Like all "versus" threads, this one has enormous potential to spin out of control and be closed at any time. Watch it.
No offence, but when exactly do you plan on stopping posting threads about "the best languange" and actually starting working with one?
Quote:Original post by mikeman
No offence, but when exactly do you plan on stopping posting threads about "the best languange" and actually starting working with one?


This is actually a very bizarre disease I've noticed with some newbies; they pick up a language, use it until they hit a stumbling block (e.g. Tutorial #2: If/Then) and then come back to ask for a different language because this one can't possibly be all that good because it's too hard.

Now that I've looked at his post history, I think it's time to move it to For Beginners.

This topic is closed to new replies.

Advertisement