C# - proprietary or free?

Started by
28 comments, last by Nypyren 18 years, 8 months ago
This may be true that it is cheaper development time wise but not shipment time wise. Currently developers are already shipping the DX Redist. If they use C# or any .Net language they will have to ship the framework redist. That gets painful because they are still using CD's for shipping games. If you think about it. The games today are pushing around 1 gig of space on your computer. Then they add in the DX redist which is 40 mb more. so that is 1.40 gig. Then they would have to add another 50 mb for the .Net framework that is 1.90 gig. So in reality a average CD hold 700 mb. So if the game originally at 1.40 gig would fit on 2 discs now they would need 3. And if you sell a million copies that is less money in reality due to the bugit of having to get 1 more CD added to the game. If you want to know more just watch this video they talk a about alot of this stuff and what they are trying to do with MDX.

Managed DirectX
My JournalComputer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter. (Eric Raymond)"C makes it easy to shoot yourself in the foot. C++ makes itharder, but when you do, it blows away your whole leg."-- Bjarne Stroustrup
Advertisement
Quote:Original post by _Danneman_
1) Is C# proprietary (to MS) or free to use by anyone, anyhow, and on any platform (kinda like C++)?

2) Is C# much easier than C++? Does using C# instead of C++ usually diminish the development time (making games)?


1)

C# and .NET are registered standards. Anyone can make a .NET platform and a C# compiler (Mono is the current open source .NET platform, development).

The only catch is libraries - the "WinForms" part of the .NET platform (GUI stuff) is propritary to the Windows platform (rather then being designed for the lowest common denominator like swing or other cross platform GUIs). An open source implimentation of WinForms is being produced for Mono but is not complete (the Microsoft interface for WinForms is open, however the Microsoft implimentation is heavily connected to code in Windows, so it is closed).

At the moment your main choices to get a "full" (WinForms included) C# compiler are:

Microsoft Visual Studio .NET [lots of money]
Microsoft Visual Studio .NET Academic [$100] (only available to students and teachers)
Microsoft Visual C# Standard [$110]
Microsoft Visual C# Express Edition [free, 500MB] (Currently in Beta 2)
Borland Delphi Studio 2005 [lots of money]
Borland C# Builder Personal [free, 30MB] (Not for commerical use)

Borland's C# Builder is fully compatible with Visual C# (there is even an option to save your project files into Visual Studio format) and offers a lot of IDE enhancements Borland is known for.

You can also download a free, unlimited, optimizing copy of the C# command line compiler (if you previously bought standard edition this works like a free upgrade) from Microsoft, though developing without and IDE or help files is a little difficult.


2)

Yes, yes yes. C# is easier to use then C++, which is anarchic by comparison. Much cleaner syntax, strong typing, a vastly superior standard library (the .NET standard library) and off course memory management. The memory management part in particular vastly reduces development and debugging time - not only do you avoid many bugs, but you can do a lot of complicated things in a single line of code, as you don't need to spend pages creating and then freeing objects (in particular it's useful in calling functions, where you can create an object on the fly as a parameter)
Quote:Original post by _Danneman_
True. But after reading some of the posts by people who have switched to C# there seem to be considerable time (=money) to save by using that language instead.
Some profess they spend as little as a fifth of the time coding a similar game for C# as it would take to do it in C++.
If that is true, then one could assume there would be a significant pull towards using C#.

Absolutely so. That is if you're starting from scratch or are looking at it in the long run - that is at a scope of 2-3 projects forward. For a single project though it would probably be a lot cheaper to let the programmers "do what they are good at". If you have a team of programmers that are well rounded and very proficient with one language, then it would be a lot easier and cheaper to let them stick to that language - if it's possible - and know that they would do a good job, than it would be to make the switch - within the project's budget - and probably not get the same quality of work.

And in the fluctuating game industry companies and funders don't look further than the current project for revenue.
Hack my projects! Oh Yeah! Use an SVN client to check them out.BlockStacker
Quote:Original post by Michalson
At the moment your main choices to get a "full" (WinForms included) C# compiler are:

Microsoft Visual Studio .NET [lots of money]
Microsoft Visual Studio .NET Academic [$100] (only available to students and teachers)
Microsoft Visual C# Standard [$110]
Microsoft Visual C# Express Edition [free, 500MB] (Currently in Beta 2)
Borland Delphi Studio 2005 [lots of money]
Borland C# Builder Personal [free, 30MB] (Not for commerical use)


You forgot Sharp Develop. Free all you need is the .Net framework installed and it works. However, if you are big on intellisense you best wait for the Express edition to ship in november for $49. Because Sharp Develops intellisense is a little buggy so it craps out sometimes and you have to go by memory :S.
My JournalComputer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter. (Eric Raymond)"C makes it easy to shoot yourself in the foot. C++ makes itharder, but when you do, it blows away your whole leg."-- Bjarne Stroustrup
Quote:Original post by TheNobleOne
... The games today are pushing around 1 gig of space on your computer. Then they add in the DX redist which is 40 mb more. so that is 1.40 gig. Then they would have to add another 50 mb for the .Net framework that is 1.90 gig. ...


hmmm...
1Gb = 1000Mb
+40Mb = 1040Mb
+50Mb = 1090Mb

..that's more like 1.1Gb ;)
my-eulogy - A blog about coding and gfxsdgi - Semi-Daily Game IdeaChunkyHacker - Viewer for Relic chunky formats (used in DOW)
Quote:Original post by Michalson
Microsoft Visual C# Express Edition [free, 500MB] (Currently in Beta 2)

Microsoft has said each Express Edition will be $49 on release. (They're still free for now, of course.) Also, it's worth noting that the educational version is pretty much identical to the full-fledged version, but I think the license agreement is slightly different; there's a clause where you agree that you're a student/teacher, and you agree to stop using it if you lose your student/teacher status.

Quote:1) Is C# proprietary (to MS) or free to use by anyone, anyhow, and on any platform (kinda like C++)?

To reiterate what others have said, anybody can make their own .NET platform or C# (or VB, or Eiffel, etc.) compiler.

Quote:2) Is C# much easier than C++? Does using C# instead of C++ usually diminish the development time (making games)?

Dramatically, if you're familiar with object-oriented paradigms. Most people would agree it's easier, but there's also some new things to learn, like the event model, properties, reference/value semantics, the object hierarchy, single-class/multiple-interface inheritance, and so on. If you're interested in rapid prototyping and design, C# is unequivocally a superior choice over C++.

Quote:3) Have a lot of gamedevelopment migrated from C++ to C#? Is it perhaps even more popular than C++ nowadays?

Not yet. I predict it will be, though. C++ became more popular than C, didn't it? As a shoot-from-the-hips guesstimate, I'd give it about a decade before the primary development language of choice is C#.
- k2"Choose a job you love, and you'll never have to work a day in your life." — Confucius"Logic will get you from A to B. Imagination will get you everywhere." — Albert Einstein"Money is the most egalitarian force in society. It confers power on whoever holds it." — Roger Starr{General Programming Forum FAQ} | {Blog/Journal} | {[email=kkaitan at gmail dot com]e-mail me[/email]} | {excellent webhosting}
TheNobleOne: Thanks for the video-link - thats the kinda link I like :)

Michalson: Youre making a good argument for C# there :) Im definitely leaning towards it.

Quote:Original post by staafAnd in the fluctuating game industry companies and funders don't look further than the current project for revenue.


Yes, its a shame that the laws of commercialism have finally reached and hit with such force what was once an innovative industry willing to take risks, filled with people bent on realizing their visions of the perfect game.

But as any industry matures it creates a generic formula for what is "successful", at the same time that the very concept of success takes on a much more quantative than qualitative meaning, and thus the visionary who was the dominant character at the beginning of the era is replaced by a technocratic, beurocratic, numbercrunching character whose sole purpose and interest is revenue.

Hence it seems all developers but a very few are caught in a headlock by their producers, forcing them to become completely focus-group oriented, aspiring to nothing more than the lowest common denominator to maximize its potential customers.

And so we, the always wanting, needing customers, are presented with a product that a) has enough eye-candy to attract our attention, and b) appeals to everybody, but because of this very fact really doesnt surprise us or provoke us into thinking - ie. doesnt have any profound effect on us at all. Sad, really. Well, enough OT-rant - sorry about that :p
------------------------Why of course the people don’t want war. ... That is understood. But after all it is the leaders of the country who determine the policy, and it is always a simple matter to drag the people along, whether it is a democracy, or a fascist dictatorship, or a parliament, or a communist dictatorship ...Voice or no voice, the people can always be brought to the bidding of the leaders. That is easy. All you have to do is to tell them they are being attacked, and denounce the pacifists for lack of patriotism and exposing the country to danger. It works the same in any country. [Herman Goering]
Managed DX is every bit as powerful as non-managed DX. It's a little different since it is designed to fit into the .Net paradigm.

In my experience, I save around (very roughly) 30% development time when writing in C# as compared to C++. If you're worried about speed, then you can use that extra 30% time to optimize your C# app such that it will run significantly faster than a C++ equivilent written in the same amount of time.
Quote:Original post by kSquared
Quote:3) Have a lot of gamedevelopment migrated from C++ to C#? Is it perhaps even more popular than C++ nowadays?

Not yet. I predict it will be, though. C++ became more popular than C, didn't it? As a shoot-from-the-hips guesstimate, I'd give it about a decade before the primary development language of choice is C#.


The game industry seems slow to adopt new languages. Look at how long it held out against C++ (in fact most of the arguments leveled against a move to C++ seem to be identical to the arguments now used by C++ gaming zealots against moving to C#).

Quote:Original post by Michalson
Quote:Original post by kSquared
Quote:3) Have a lot of gamedevelopment migrated from C++ to C#? Is it perhaps even more popular than C++ nowadays?

Not yet. I predict it will be, though. C++ became more popular than C, didn't it? As a shoot-from-the-hips guesstimate, I'd give it about a decade before the primary development language of choice is C#.


The game industry seems slow to adopt new languages. Look at how long it held out against C++ (in fact most of the arguments leveled against a move to C++ seem to be identical to the arguments now used by C++ gaming zealots against moving to C#).


And the very fact that MS is the author of C# probably explains a lot of the reluctance ;)
------------------------Why of course the people don’t want war. ... That is understood. But after all it is the leaders of the country who determine the policy, and it is always a simple matter to drag the people along, whether it is a democracy, or a fascist dictatorship, or a parliament, or a communist dictatorship ...Voice or no voice, the people can always be brought to the bidding of the leaders. That is easy. All you have to do is to tell them they are being attacked, and denounce the pacifists for lack of patriotism and exposing the country to danger. It works the same in any country. [Herman Goering]

This topic is closed to new replies.

Advertisement