Non programmer with a question regarding 2.5

A friend and I are creating a beat em up game (Double Dragon Nes style). Player moves in 4 directions and diagonally, but sprites are strictly 2D so when you go up or down, etc…you don’t see backside of character.
The game also consist of wall jumping and jumping and climbing to higher/lower platforms. Along with shimmying to reach various rooftops. This is where we are stuck. The Z a is and collision points. Some say Unity’s math doesn’t mix for 2.5 so it needs to be either 2d or 3d without using a orthocamera of some sort.

Has anyone come across a code or tutorial that shows how to do basic fighting and these platform elements? The ground tiles such as grass are put together by 32x32 pixel art 2d png files.

I don’t know C#, so maybe someone is able to explain. Thanks so much

If I could explain C# in a couple of paragraphs, I’d be a rich man! C# is a language just like english or chinese and has structure, syntax, and nuance like an other language. This is something to be learned and not given over the counter like a cheeseburger at McDonalds.

Unity provides a very good source to learn Unity itself, while learning to program in C#, and also learn many common gaming concepts. I strongly recommend you and your partner both work through as many tutorials as it takes to understand what you need and how to do it. Unless you want to pay for someone to do it for you, you really don’t have another option.

3 Likes

Yep, what Bill said.

I’ll just add that “Some say Unity’s math doesn’t mix for 2.5 so it needs to be either 2d or 3d without using a orthocamera of some sort” is complete nonsense. You can do 2D, 3D, 2.5D, or whatever other D’s you can think of. Math is math. And Unity is fully capable of displaying 2D or 3D graphics in whatever way you dream up.

So, yeah, it’s just a matter of programming. And programming is a skill that takes time to learn. Dig into those tutorials!

1 Like

Thank you both. I will dig deeper to try and find the solution.

1 Like

What Joe said. Coding in any form is all about solving problems. Unity is a 3d engine. You can make 2d games, as you have seen, with it as well but those 2d games exist in a 3d space.

Check out enter the Gungeon… awesome 2d game made with unity.

Unity does, however, have separate physics and stuff for 2d and 3d and they don’t really work well together out of the box. But I’m sure with enough thought you can make it do what you want :). This is the problem solving part.

I would first learn the basics of c#. Microsoft virtual Academy has an awesome fundamentals course to get you started and it doesn’t take that long to go through it. Make sure you practice what you learn after every video though!!! You will find that if you just watch them back to back you will go to write some code and forget how everything was done.

After that, I would go through the unity tutorial that teaches you about the UI and where everything is and what it does.

Next, go through the project tutorials, both the 2d ones and the 3d ones. Do those to completion. If you have an issue due to old unity versions or something not doing what it is supposed to, ask for help on forum. But make sure you complete them all. This will get you comfortable with unity and some c#.

Next, go through the scripting tutorials.

Finally, think of super simple games and try to make one completely from scratch with your own graphics (circles and squares or blocks are fine). Example: pong, brick breaker. Ask for help if you get stuck.

Keep making more and more complex games from there on or adding features/levels to your games or even the tutorials you did. You will be surprised how much you know after a year.

The goal is to get comfortable with your tools, which will be unity and c#, before going out there and trying to solve problems with them (making games).

Game development is HARD!!! You will want to quit, you will want to break your keyboard, and you will want to punch the monitor. It isn’t for everyone, but everyone who has started the journey has felt like this at times. Ask for help and always come back, try to spend at least some time everyday on it. If you are super busy at least spend 5 minutes to look over and review some of your code or play the game a bit to test it.

Goodluck!

2 Likes

Do the learn section tutorials! And build some games. This is a question best answered by simply becoming familiar with the engine.

Put simply Unity is a 3D engine. It also has some very useful tools to fake 2D. You can build anything you want that’s 3D or less simply by faking it in 3D.

Going to higher dimensions requires a lot of work. Not in the least because there is no standard way to display higher dimensions on a 2D screen.

However, it’s still very doable in Unity. Several of my prototypes have explored ways to display a 4th dimension.

1 Like