- Home /
2D Games with C#?
I'm basically new to Unity 3D, and learning Objective-C/C# as of right now and was wondering if it was possible using the unity engine to make a 2D game. 2D game such as being flat, like Super Mario Bro's or Zelda Link to the Past. I plan to make something very pixilated game overhead or a side scrolling game, and was just wondering if Unity was the right one, or even if I should use a different langauge instead of C#?
awww Zelda Link to the Past ... everytime its mentionned I just have to play through it!
Answer by s_guy · Apr 20, 2013 at 07:42 AM
I highly recommend Unity and C# both for your project.
Unity has a strong basis in 3d, but many pro and amateur projects have been made with it. I'm working on such a project myself and I'm very impressed with how appropriate it is for 2d.
Your main considerations for a 2d project within Unity are:
Camera
Rendering
Physics
Content Pipeline
Target Performance
Each of these is a deep subject that has a quick answer for the general case but really requires deep discussion depending on your goals. For example, rendering pixel-perfect assets can be tricky and is a topic unto itself. It's all within reach and I'd still recommend Unity for 2d, retro projects. (Full disclosure: I haven't published yet, and performance on older platforms hasn't been tested by me, personally.)
I recommend c# because it's the most mature language available on this platform, and an excellent language in general. What you learn with c# here will be more applicable to other contexts. Also any JS you might learn is not generally applicable. Unity uses its own JavaScript.
Answer by Goody! · May 14, 2011 at 04:30 AM
Everything in unity is 3D but if you want you can make it look 2d by setting the camera to always look from the same direction. My game looks 2d but is actually 3d planes that the camera always looks at from the same direction.
I've done almost everything javascript and it's worked out okay. I think it has the most support too, document wise, from unity, but don't quote me on it Friend. Dif people here will recommended different languages. My 2 cents is JS is the newbish but it still isn't easy.
--Goody!
Answer by by0log1c · May 14, 2011 at 06:13 AM
As Goody mentionned, Unity3D is by definition, a 3D engine. From my own experience, I've found out its quite possible, and relatively easy to create 2D games.
Basic scene could be a camera locked to face the game, possibly in Orthographic mode - to lose perspective.
As for C# vs JScript/JavaScript/UnityScript, opinions differ. Some will argue C# has more capacities and more ressources for advanced techniques. Both are correct. Though you'll find more ressources for the more intuitive JScript. Take a peak at C# when you can and you'll be able to read it, if not use it yourself.
I haven't had to use C# for anything yet, though I've had to learn to read it.
Your answer
![](https://koobas.hobune.stream/wayback/20220613134122im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
A node in a childnode? 1 Answer
Making A Tileset 1 Answer
copy camera view to 2d panel and pixelate it 0 Answers
Isometric camera 2d or 3d 2 Answers