What can you use C# for?

Started by
6 comments, last by davepermen 10 years, 1 month ago

I'm looking into learning C# and I was curious as to what it would be good for, especially in game design whether it be mobile/browser/console/etc.

Advertisement

It's a general-purpose language, so you can use it for anything.

That said --

* Mobile platforms (when you're building your own game engine) have better support for Java (on Android) Obj-C (on Apple) and C/C++ (combined with Java or Obj-C code).

* Browsers without plugins only support a single language: JavaScript.

* Browsers with plugins can support ActionScript, Java, C# and others.

* The Unity game engine (which has a browser plugin, a mobile version, a desktop version, etc) is designed around C#.

I'm a fan of C#. It's cross platform, compiles very fast (compared to c++) and you can get more done with less lines of code than C++. In those regards, it's a more "productive" language. I use it for all my prototyping, and sometimes the prototype is the final project since it performs well enough. I thought it was pretty easy to learn, and is more than capable for any number of projects from Game editors, Rendering engines, to simulation backends.

The OpenTK library provides bindings for openGL/AL/CL as well as all the math primitives (vector/matrix) that you could need. It also provides input and windowing API's as well.

Xamarian and Unity both use C# and are able to target mobile platforms. Unity can target browsers and consoles as well. If you're looking for a pure browser based game, then C# may not be the right tool.

cheers,

Bob


[size="3"]Halfway down the trail to Hell...

Its turing complete, so you can do quite a lot of things with it.

"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"

My journals: dustArtemis ECS framework and Making a Terrain Generator

C# might be the most versatile choice out there. I'd be hard pressed to think of a language that can be used effectively in more applications and systems.

SlimDX | Ventspace Blog | Twitter | Diverse teams make better games. I am currently hiring capable C++ engine developers in Baltimore, MD.

C# might be the most versatile choice out there. I'd be hard pressed to think of a language that can be used effectively in more applications and systems.

Very comforting, seeing as I went ahead and purchased a book based on learning C# while also learning Unity. :)

I use c# for tool. Its fast for windows app like mfc and visual basic. Very easy to code!
So easy that i dont need a book to learn, its too similar to vb and java.

I use it for gamedev (xna/monogame + xamarin basis == my game can run on pc, win8 tablets, windows phone, iphone/ipod, ipad, android)

i use it for tools (wpf)

i use it for wp8 and win8 apps.

i use it for server side code (mostly nancyfx based, on asp.net or owin).

i use it for local windows services (typically nancyfx, selfhost)

i use it for tiny tools (command line apps that do something quick for me)

i use it for realtime game server communication (through signalr)

i use it for raytracing (no simd and no gpu == comparably slow, but i just love doing it).

so i use it for anything except web-front-end, where i use html5, css3, javascript (es5).

i could use it on linux and osx (mono), and even on tiny controllers like arduino-thingies (.net micro framework).

i could use it to write (most of) my own os, if i ever have too much time :)

so it's very flexible.

If that's not the help you're after then you're going to have to explain the problem better than what you have. - joanusdmentia

My Page davepermen.net | My Music on Bandcamp and on Soundcloud

This topic is closed to new replies.

Advertisement