Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(+1)

Although I'm not familiar with Swing, it seems you're using pretty low level tools for game development. Which is possible, and great if you know what you're doing (I like it too), but keep in mind that you need to build a lot of tooling yourself even for making simple 2D games.


If you want to go down that road, I would recommend first making a complete copy of a simple old game (for example, Frogger, Arkanoid, Bomberman), and see what you run into. For instance, you'll realize that...:

- It's good to have some tooling for creating levels (I like Tiled for 2d - see www.mapeditor.org)

- You probably want to write some code for scene management (adding and destroying game objects, transforms and parenting game objects)

- You need something for physics (movement and collision detection) - either make some basic tooling yourself (if you're good at vector math), or use a library.

- In addition to the rendering (with OpenGL), you need something to play sounds, get mouse/controller input, etc, like sfml/glfw/SDL2.

- Font rendering is surprisingly complex...

Once you have done that, and you have your tooling set up, you might be ready to make something quickly for a game jam, even in a low level tool like C++/OpenGL.

Alternatively, you may want to check out game engines like Unity, Unreal, Godot, etc. (see https://www.gamesindustry.biz/articles/2020-01-16-what-is-the-best-game-engine-f... for more info) which have a lot of powerful tools already built-in. Of course, the more powerful the engine, the more overwhelming the learning experience may be...

And that's just the programming part - probably you also want to have some tooling to quickly create assets, such as a sprite editor, and something to create sounds quickly (bfxr?).

That Tiled 2d program looks really cool, thanks for sharing that.