Jump to content
  • Advertisement
Arcadiaa

C# Language Programming (Game)

Recommended Posts

Hello

I want to create a small video game, however I hesitate on which kind of programming language should I use. I've been reading and I see suggestion from C#, Java to Unity.

This is a personal small project, I am looking to create my own game and learn in the process because I am a beginner. I intend to use Pixel Art for the design.

Could someone give an opinion on the matter? Please.

Thanks a lot in advance!

Cheers

Share this post


Link to post
Share on other sites
Advertisement

C# and Unity are fairly straightforward, have minimal setup (install Unity, install Visual Studio Community edition) and lots of online tutorials (of varying quality, but that's to be expected when so many different people use it).

Share this post


Link to post
Share on other sites

For beginners, Unity/C# is an excellent choice. Not only is it easy to work with, but there are a lot of people and large communities available to help when you run into challenges.

Share this post


Link to post
Share on other sites

Java and C# (and a whole bunch others) are programming languages. They allow you to write literally any program you like, and that includes games of course.

Unity is not a programming language, it's a game engine. Put simply, it's a collection of useful stuff you typically need when you write a game, so you don't have to write it yourself. It does however make assumptions on how you program the game which you should follow or it won't work. Unity only supports C# as programming language, so using Unity implies programming in C#.

You mention pixel art. Unity is a 3D engine, ie you can make 3D games with it. 2D (ie all retro games) is also possible, mostly by ignoring the 3rd dimension.  I don't have experience with Unity though, so I don't know exactly.

Another engine you can try is Godot. It seems also useful with C# (Mono actually, but that's just another implementation of C#).

Unfortunately, I lost my collection of links to useful engines, so I cannot give you a link to engines for Java.

 

As for starting, it really doesn't matter much what you pick, any choice is a good choice. So just pick an engine, and do some tutorials. play a bit with it to get a feel for it (write a really simple game!). Do the tutorials work for you? Is there enough documentation? Are there useful forums? Try a few, so you can make an informed choice.

Share this post


Link to post
Share on other sites

Thanks a lot for your advice. Well, I will pick C# because it seems the most friendly specially for people who are just starting. I am searching for tutorial myself; that's easy of course but if someone knows one in particular I'll be grateful if you could share it. I know there is no need to pay for a tutorial / course as there is more than enough free information out there but would you think is a good investment to go for one of those small low cost programming courses game oriented offered on Undemy.

I have check the content of a few however what I am afraid off is to not really get what I am looking for.

Thanks a lot once again.

Have a marvellous day,

Cheers

Share this post


Link to post
Share on other sites

C# is not "the most friendly" but I would consider C# and Java to be languages that have a very good "what you can do with it" vs "difficulty to learn" ratio. Also your choice has a big impact on which further projects you can work on, because C# might not be the most popular choice outside of game development (Unity) but you can easily jump on other high level languages like Kotlin or Java if you start considering a programming career in broader jobs.

C++ on the other is pretty bare metal, difficult to learn and in my experience people have a hard time grasping the concepts of high level languages later on. Although, C++ is the most powerful language to rule them all.

You picked C#, great choice, I advice you should definitly go for Unity to boost your projects then. Game development is extremly difficult because you have to understand so many different concepts and combine them. Unity takes a lot of that from your shoulders. Trust me, I did it the hard way, when Unity was not a thing - I've learned a lot on the way but I also lost an extreme amount of time.

 

Just my two cents: Learn C# first, get the basics, before you jump head first into game development. And don't go for Youtube videos. They often lack quality, knowledge and are probably the worst medium to learn programming of.
And no, I don't think any paid service is worth it.

 

I wish you all the best on your further way :)

Cheers

Share this post


Link to post
Share on other sites
17 hours ago, TMII said:

C# might not be the most popular choice outside of game development (Unity)

Just FYI, C# is still one of the most popular languages for general development (one article, but a quick google will give similar results).

These days, most people are expected to know multiple languages. At a minimum, I'd expect almost every dev to be comfortable with:

  • web frontend (javascript/typescript/HTML)
  • a main application language (C#, java, C++, etc)
  • SQL
  • some kind of scripting (powershell, sh, etc)

Of course, you'll typically specialise in one area.

17 hours ago, TMII said:

Learn C# first, get the basics, before you jump head first into game development.

Amen. In fact, pick any language (Python is another good choice) and learn some simple console programs until you're familiar with basic programming constructs (conditionals, loops, functions, classes, etc). Those skills can generally be transferred between languages.
 

Share this post


Link to post
Share on other sites

Hello again,

First, thanks a lot once again for taking the time to reply and for your input. I started with C#; from de very basic "Hello Wolrd" and such 😅, so I will see where it leads me. Long ago I used to programm on C++, Pascal and Delphi, it has been too long but I suppouse logics stays.

I will continue with learning the basics but I will also see if I can find something more game oriented too, something not too dificult that helps me understand certains aspects and the mechanics of a simple game, I want to see if I can make a simple stick character move.

Share this post


Link to post
Share on other sites

Things like hangman or tictactoe can use a console interface without any problem, so you can concentrate on the programming logic.

Share this post


Link to post
Share on other sites

Thanks for the tip. I am learning at the moment and trying manage to a very simple code to make my character move forward and backwards and jumping.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!