I have to make a project for my programming course and I was thinking about doing a game in unity but Id have to learn C# from scratch ehich is fine since im a quick learner the problem is how useful would C# be when looking for a job. I mean is it generally looked for outside gaming market?
Also if you dont mind what kind of game would you suggest me to make to start with in unity? Although i dont mind a challenging project since im aiming for max grades
Programming is programming. If you learn C#, you’ll be able to learn many others without much trouble because they are quite similar. And C# is especially similar to languages typically required such as C++, syntactically. I say learn whichever language will get the job done right now, and if that’s C# then that’s fine.
Programming is a a valuable skill outside of programming jobs too. It doesn’t take much programming knowledge to be able to put together a quick VBA macro in excel or an access data base. But all of the employers I’ve had have found these skills more impressive then the ones I actually studied for.
In my industry everyone knows how to fix a pump. Very few know how to automatically search a workbook for downtime codes and make it into a pretty graph.
5 months but 3 of them ill be working 8 hrs game ill be ired and wont have much time to work but yea. I will probably go with 2D although i wonder how muxh harder 3D games would be to make or is it jus because its harder to get the art for 3D?
2d is easier because you don’t deal with the 3rd dimension. Instead of rotating objects in the x y and z axis you only need to rotate in z for most projects. Instead of moving characters and AI in the x y and z axis its only in the x and y axis. It just makes programming game s a little less difficult. I have no problem shifting from the 2nd or the 3rd dimension or even the 4th dimension while programming myself.
As for how important c# is… Its a really powerful language used for programming apps and websites as well as games. The thing with programming is, once you’ve learned one you’re going to have an easier time learning the next, then the next will be easier, etc. Its because you’ve already learned a lot of programming techniques from the first one and know the syntax of it, next you just need to learn the syntax of the next and a few techniques or concepts that come in that language. I started off with Java then went into Unity with JavaScript. It was a small learning curve but I overcame it then started c#. I figured it out after a weekend since it was so similar to Java.
Thanks for this detailed answer! I see. I would love to make a 3D game since itd be more impressive to the people judging my project. However i dobt think i have te time to make a 2D game to learn and then the game for my project because id lose too much time inthe 2D project. Hoe much harder is 3D for someone learning C#?
Depends on the person and their learning speed. If you can understand/learn how 3d vectors work you’ll be okay. I’d say maybe 1-2 months of actually learning the engine and C# then 3 months making your game project. Start with a small and realistic scope, it will be easier to actually finish the project. For example, you might want to make a mmo RPG, while you may get far, you probably wont finish it.
That looks like a pretty good implementation of what I was thinking. It’s kind of like KSP for me. A game I would love to play more then I would like to program.
My idea was along the lines of a planes walker type system. The fourth dimension would be represented by planes you could phase shift through. One extreme would be heaven, the other hell. Angels and demons couldn’t directly approach each other, but both could interact with the human plane in the middle. The PC of course would be special and end up travelling everywhere.
I might even attempt to code it one day when I’m feeling ambitious. But for now a full blown 4D physics engine is more then I have time to tackle. I’ve considered trying to force it on top of PhysX in Unity, but that might be just as challenging.
You can build a basic flappy bird clone in a couple of hours. I think there is a video on my YouTube channel. (Maybe, I know I intended to make one, it’s late and I can’t remember). That should start to give you a feel for how fast you can move and what is possible.
I generally am a quick learner however i dont wanna mess up and deliver an unfinished product. Anyone knows if theres a video or tutorial that shows an example of how you would do things in a 2D game and in a 3D game? Just wanna check the complexity once im finished learnin c# and the engines stuff so that i can properly decide what to do
If you know any language from the C syntax family (c/c++, java, maybe others), C# should be just as easy to learn, because syntax is pretty much the same. There are few differences, esp. when you come from C/C++ as C# is more like Java syntax-wise, but nothing big and you should be good to go.
C# is pretty powerful as well, no matter if you use Mono (which was designed to be .NET-compatible) or .NET runtime. Standard library will provide you with anything you need and something extra.
Central Pennsylvania is like that, too. Handful of Java offerings, bit more Ruby on Rails or other crazy web crap, and then a ton of various .NET positions.
Advice to OP: C# is a great programming language to learn with. Learn it, master it, and then learn every other language, too.
C# absolutely rocks. With C#, you can program for Unity. With C#, you can develop ASP.NET applications. With C#, you can write Windows applications. You can do a lot of things with C#. It is one of the best all around languages for many tasks. C# is modern, easy to use, and very full featured. It is a fantastic language for a modern programmer.
Eventually, you want to learn multiple languages. Programming is programming. Once you learn several different languages, you realize that the differences are not that big of a deal. Individual languages are simply tools to choose from when building a solution to a problem.
No single language is perfect for everything. If you wanted to write a game engine, C++ is a better choice. Even though game developers get to code in C# when using Unity, the Unity engine itself is actually written in C++. And if you ever dig into embedded circuit design using low cost microcontrollers, you’ll want to use C. For example, I have designed some embedded devices around 8 bit microcontrollers with 2KB of RAM. With those tiny solutions, I always use C. Languages like C#, and even C++, would be too bloated for a really tiny 8 bit microcontroller. But when I write games, I love using C# and Unity. It is all about picking the right tool for the task at hand.
Neat idea. I feel you on the time part. I actually want to make an attempt at constructing a physics engine in unity just as a learning experience, but I can never find the time. With school work and my current independent project and freelance work plus awesome video games are released during this time it gets difficult to find time to work on cool stuff like AI solutions for fun and procedural generation for fun or physics engines for fun. If you ever end up going with the 4d game idea hit me up I’d love to see some demos or help. I’m probably derailing this thread though sorry op
Thanks guys, I’ve decided to go with C# and make a game on unity however anyone knows if theres a video or tutorial that shows an example of how you would do things in a 2D game and in a 3D game? So I can see the complexity between 2d and 3d, if I think I’ll be able to handle 3d ill go with it.
Also would you recommend me to first learn C# standalone (non related to unity) or through unity tutorials?