Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What beginner options are available for someone wanting to get into game programming in C#?

Tags:

c#

I know about XNA, but while my PC meets the minimum requirements, my friend's PC lacks a sufficient video card so he has issues with it. I was wondering if there were other options outside of XNA for someone learning programming in C#.

I hope I worded that properly.

like image 901
Slateboard Avatar asked Mar 17 '10 21:03

Slateboard


People also ask

Which C language should I learn for game development?

C++: C++ is an object-oriented programming language. Its speed, ease of use, and widespread adoption make it stand out as a highly desirable language. According to Game-Ace, it is widely considered the gold standard in game programming, and many call it the best coding language for games.

Can you program a game in C?

Of course you can. Many games have been programmed in C (DOOM comes to mind). SDL is a game programming library written in C. Of course, it may be a little more difficult than using C++ for a big project, but it's possible.

What programming language should I learn first for games?

Most Popular Coding Languages for Game Programmers Although there are a number of gaming languages, for beginners, we'd suggest starting with C++. It's the most well-known, there's a ton of free online support, and most engines can work with C++.


2 Answers

If you're still "learning programming in C#", I would start there instead of starting with "game programming."

Game programming with XNA requires a decent framework of standard C# programming skills. Once you have the basics down, then you can tackle using something like XNA.

That being said, if you don't meet the minimum requirements for XNA, and you still want to do Game programming (in C#), you have a couple of options.

You can use something like SlimDX to get direct access to DirectX. This provides a clean C# interface to DirectX programming, which lets you target a lower entry point than XNA's default requirements.

You can also do 2D game programming using WPF or GDI+ rendering.

like image 79
Reed Copsey Avatar answered Oct 11 '22 12:10

Reed Copsey


One possibility is the Unity 3D game engine. It runs well, even on low-end systems - as their System Requirements says, "Any graphics card made in this millennium should work".

It uses any of 3 scripting languages, C#, Javascript or Boo (a .Net variant of Python). You can also deploy in either a web-browser or stand-alone executable (Mac or Windows, no Linux yet).

Granted, this adds to the learning curve, as you'd be learning the Unity system as well as C# - but Unity isn't that hard to learn, and it's also a very good game engine. See the Licensing page for a more complete list of features.

like image 21
John C Avatar answered Oct 11 '22 13:10

John C