Wanting to create a side-scroller game from scratch(Not the programming language)

Started by
4 comments, last by Yxjmir 6 years, 7 months ago

Hi!

So, I want to make a side-scroller game, the Super Mario kind. I have made some simple games before using Java, and Javascript(Tetris, Snake). But let's pretend that I haven't because I earnestly feel as if though the best thing I could do is just start from Scratch; with the game developing that is, I already know intermediate Java, Javascript, and C++. I know there's a lot of tutorials out there, but I honestly think that a lot of them suck. There's also tutorials that use libraries and Game engines like Unity, etc. I don't want that. I want it completely from scratch. So, what I'm asking is:
1. What programming language do I ought to use for this?

and

2. Where would I go on about learning how to develop that sort of game without the use of libraries/Game engines?

Advertisement

I would very much recommend you reconsider use of libraries, unless you want to write video, mouse, keyboard, and sound drivers. Also, I doubt you want to write a PNG image decoder library, or sound file decoder.

Other than that, any programming language is fine, in general. I know for sure with Java and C++, I haven't done any Javascript, so can't say anything useful on that. For Java, people here recommend libgdx, other options are lwjgl, and slick2d. I haven't used any of these, so check out which one looks useful to you (and sufficiently 'scratch' :) ). For C++, there is SDL2, and sfml. You can also go 3D, with glfw3 and opengl, although that might be more complicated than it's worth. At windows there is the directx stuff. As I am not a Windows user or developer, I have no clue about that at all.

As for a site, this forum will work.I don't know of any links to scrollers here, but a search or some browsing of the articles would not hurt.

I don't know any links for good side-scroller tutorials, but the best tutorial I've ever found, and one that works with no modifications, other than using glew instead of glad to load opengl extentions, is https://learnopengl.com/#!In-Practice/2D-Game/Breakout

It'll teach you most of what you'll need to get started on a side-scroller. It uses opengl, and you make the game from scratch/with no engine. It uses libraries, but I haven't had any problems getting them to work. Libraries are there to make it quicker, and easier to get things running, so I suggest using them.

Its in c++, I recommend using that to learn how to make the breakout game if you decide to follow it, then use whatever you're more comfortable with, and try to convert it to use that instead.

22 hours ago, Alberth said:

You can also go 3D, with glfw3 and opengl, although that might be more complicated than it's worth. At windows there is the directx stuff.

Using 3D to render 2D things isn't that complicated. It's sometimes simpler than rendering 3D correctly, and if you have a graphics card that's up to date you can use opengl on windows. Opengl requires a lot less lines to do the same things in directx, and does everything that directx can as far as graphics are concerned.

8 minutes ago, Yxjmir said:

I don't know any links for good side-scroller tutorials, but the best tutorial I've ever found, and one that works with no modifications, other than using glew instead of glad to load opengl extentions, is https://learnopengl.com/#!In-Practice/2D-Game/Breakout

It'll teach you most of what you'll need to get started on a side-scroller.

The aim of learnopengl.com is to learn opengl, the game is a demonstration of how opengl can be used in game context. To understand what happens there, you need to go through the entire opengl tutorial. The tutorial is quite good for learning opengl, but not for learning game programming, imho.

10 minutes ago, Yxjmir said:

Its in c++, I recommend using that to learn how to make the breakout game

In general, you don't want a new language on your plate, in particular something like c++, which has a very steep learning curve.

Use the programming language you're most comfortable with. Programming a game is hard enough, you want to avoid fighting the language as well.

He already knows some c++, I'm assuming about the same amount as java. I figured it'd be easier to follow the tutorial in c++ since that's the language the tutorial used. In other words, if somethings not working right using java, then he has to spend time searching the internet to figure out how to get the same results as the tutorial did in c++, rather than just referring to the tutorial's full code. I do agree with the whole not learning a new language while trying to make a game, though.

23 minutes ago, Alberth said:

The aim of learnopengl.com is to learn opengl, the game is a demonstration of how opengl can be used in game context. To understand what happens there, you need to go through the entire opengl tutorial. The tutorial is quite good for learning opengl, but not for learning game programming, imho.

I agree with this. I still think its a decent starting point though, and that he should still give it a try. If nothing else, like you said he'll at least learn opengl. If he needs to know how to code it right, then his only real option is to buy a good gaming programming book.

This topic is closed to new replies.

Advertisement