+ 14
Is C# practical to learn for developing games?
I've learned basic HTML and CSS, currently learning Java. Someone told me C# would be the next step for game development. Is there anything better to learn with?
34 Answers
+ 6
Yes C# is good for game development. Check out Unity! If you want to learn to make games you can check out the Udemy course I have linked to. I haven't tried this site myself, so if anyone have experience with this course, please comment.
https://unity3d.com
https://www.udemy.com/unitycourse
+ 5
If you're interested in game development then I would suggest c# and c++. unity engine is terrific and uses c#, unreal engine uses c++ so once you're familiar with c# or c ++ you should be able to rewrite to each platform as they are very similar.
also, if you're interested in game development you probably want to be creating your own models and textures, which I full heartedly recommend Blender 3d as it is one of the best free programs for pretty much everything and has support for unity and unreal import and export. blender uses python for all of its code and is easy to understand if you want to dive into the guts of blender.
+ 5
..
+ 4
The free and powerful game engine, Unity, actually exclusively uses C#! So yes, it is practical to start with C#, and then continue learning other languages like C++. Game Programming certificates that I've seen focus on c++.
+ 4
Yes, unity is a very good option in C# game developing.
+ 3
Stop recommending C# to OP! C# is kept alive by a small niche with a large influence. Sure Unity supports C#, but C# has no place. It's got nothing CPP can't do, and it's not as rapid as Python. Honestly, I predict it dying off in the next decade. Unity supports C# *now*, but will it in the years to come. Most engines are CPP. On the rapid front, Python continues to gain traction, with engines like Panda3D fully supporting it and, duh, PyGame.
OP: If you're serious about game dev, C++ is the best option. I'm afraid there are *not* really any shortcuts. Having said that, there is Python. It's good for making games quickly, but the changes between 3 and 2 have left systems stuck on 2.7 because of *no* backwards compatibility. C++ will give you the power to build an engine. And that's what many do; build the core engine in C++ and use Python as a scripting language to write things like AI, etc.
Bottom line: a serious dev needs C++ because it's ubiquitous (nearly all engines are designed for it) whether or not they support another language. C++ plugs into just about anything so it's worth it. Therefore, unless you have a reason that you have to learn C#, rather take up C++ and trudge through it. If you cannot manage the workload, there's Python as a quicker option. It is growing fast and I won't be surprised if it's the number one scripting language for all major engines in the next decade.
+ 3
to develop a game in some languages, you need to learn the language better...Basic concepts will not help you in developing the game..you have to study the language much deeper to understand the game concepts and implement it
+ 3
Yes..!
+ 3
if you want to make a game on a game engine like unity you must be known c#.
if you know c# you can easily make android ,PC web ios console games via the game engine. if you don't know any programming language properly then i suggest you to use the gamesalad game engine .it does not need any programming language. it supports drag and drop feature
+ 3
@clement: For large games, Python is not ideal. This is where you need those functions exposed by the engine or to write your own module exposing them.
+ 3
C# is great for developing high lvl games
C++ can also help you a lot
+ 3
You don't need c# for developing apps anymore.. you should start learn Python which have more scope in near future.. If you know Python then you should start learning kotlin instead of java as kotlin is used more these days in SDK to develop apps.. Hope this helps.. Upvote if you get satisfied..
+ 2
yes c++ is great for making games because it's used my the best game engine currently UE4 but c# is good as well. honestly I don't recommend java for making games as there aren't any good game engines that works with java so it would be alot of hard work comparing to c# and c++
+ 2
Of course
+ 1
Yes, C# is practical for game development. Unity allows use of C#, as well (alongside JavaScript).
Another equally viable choice would be Python.
+ 1
Lua is the most popularly used and most suggested language for developing games. Try it.
+ 1
If you use Unity, yes.
+ 1
well according Java language helps u to design games
+ 1
No ...... java , c++
+ 1
@Jamie I am curently making a game with python using pygame but there are a lot of functionalities I couldn't implement because of the slowness of python. Like when I want to use sqrt (especialy on vectors), or set alpha on big surfaces. So I've start learning cpp... But there is a python module that I've heard a lot about named numpy witch could increase the speed. But python is realy the better for relatively small games !! Like you said, it would be great to code the game in cpp but using python for mechanics (i actualy don't know how to do...)