How to start game development on your own

PUBLISHED Dec 1st, 2018

This article is a guest post by my friend Navneet Vyas, written on my request. Navneet is currently working on his secret game project. I hope you like what he has to say.

Hello and congratulations my friend that now you have finally decided to start creating video Games.

How to start game development on your own

Creating games is one of the coolest things ever, but it is very hard too. If you are a beginner and you are thinking to create a game, even a huge one, like God Of War, PUBG, Tekken etc., then you might require almost 10 years of dedication to create these type of games! You might require a full team of graphics designers and developers to create such beautiful graphics and realistic physical simulations. These types of games require time and patience to create.

But luckily that bulky studio is not the only way! Now the side of the gaming world is Indie Development which is becoming more and more prominent nowadays.

It stands for Independent Development Studios. It’s a development process of creating games in which a small team, even just with one or a few team members can create games with less financial support. These Indie Games are known to have artistic values so they are very popular on all platforms. So to create a game it doesn’t matter whether you are alone or own a fully geared studio. You too can create a game right away!

Let’s get more into the steps.

What type of game can I create?

First, you have to limit the dimensions in which you want to create your game. Two-Dimensional (2-D) like Mario or a Three-Dimensional (3-D) like Minecraft and you can also create a 2.5-D game like Worms.

Tomb Raider, a 3D game by Square Enix
Tomb Raider, a 3D game by Square Enix

After deciding the dimension of your game find which genre of game you want to create. If you want to create a 2-D game then there are many genres like you can create a platform game such as Mario, or puzzle games like candy crush, casual games like 2048, hypercasual games like Helix, then comes action games, adventure games, Role Playing Games (RPGs) like Pokemon Red. You can use 2D as a canvas for your imagination.

If you want to create a 3-D game then you can create First Person Games (FPGs) like Counter-Strike or Minecraft and Third Person Games like Tomb Raider or Grand Theft Auto. There are many more genres you can create. So you see there are so many genres of the games. It’s all about using the dimensions as per your imagination.

But first, you have to create your idea of the game then you can find your game’s genre.

Now the main question is…

What software do I require to make a game?

To create a game there are three popular options:

  1. Using a Game Development Engine
  2. Using a Game Development Framework
  3. Without using anything!

1) Create a game using a Game Development Engine

To create a game using a game engine is the easiest and fastest option. But first, you have to know what is a game engine?

A Game Development Engine is a Game development environment designed to build video games. These game engines provide you a user interface to create a game using many services, for example, Drag and drop your game assets for level editing. These engines make your game platform independent so your game will work everywhere be it a PC or consoles or on smartphones. The main thing is that most the game engines do not require any coding you can create your games by either by scripting if you want to or by just using blueprints.

Unreal Engine's blueprint, it doesn't require to write code
Unreal Engine's blueprint, it doesn't require to write code

There are so many Game engines and most of them are completely free, to begin with. The engines like Unity and Unreal but some of their features of unity is paid also if you want to create a 2-D game you can use the Stencyl, Game Maker Studio, and Unity or if you want to create a 3-D game you can use Unreal and Unity and there are many more engines you can use.

The game engines work best for 3-D game development cause most of their design ideas are mostly similar like FPS or Open World so engines can be used easily you will get modules for most of the stuff to plug and play right away!

Inside, a 2.5D game by Playdead
Inside, a 2.5D game by Playdead

But if you want to create a 2-D game then my suggestion is to use a game development framework because if you create a game in Unity or Game Maker Studio then the game size will be more than double the size of using a game development framework. There are many other advantages which we are discussing below.

2) Create a Game Using Game Development Framework

Game Development Framework is a collection of several libraries that help you to code a whole game all from scratch.

Game development frameworks are not about drag and drop interface. They are about modularity and programming. You have to write the code of your game but the framework makes your coding easy in a way that you will focus on building the game itself, without any need to go into hardware-software management.

They are libraries that have inbuilt elements and functions so you can use them directly without writing much code for obvious things as a game developer. For example, if you want to render an image on the screen, you can directly use the image processing classes available in the framework and also use its methods like rotating and changing positions. You don’t have to write such an image class yourself.

These frameworks are fully optimized, they produce what’s necessary, and are better from the performance point of view. They are made to be used with programming skills. If you want to use them, then you need to have good skills in the language they support. This is why most of the game frameworks support multiple languages to help out most developers. But C++ and Java are the most popular.

Almost all game development frameworks free to use and they are open-source. The popular ones are LibGDX and Cocos2d.

Gunslugs 2, a 2D game by Orangepixel
Gunslugs 2, a 2D game by Orangepixel

With game development framework, as you are writing the code, you are free to build any concept or logic. You don’t have to limit yourself with ready-made modules of the engine. You can create 2-D as well as 3-D games but they are best suited for 2-D games.

They are also platform independent and work on any platform, any OS.

If you are creating a 2-D game then LibGDX is the best framework out there. It supports the JVM languages like JAVA and Kotlin. It also has many useful functionalities embedded into itself like Box2D for physics, inbuilt AI system. Being open source and completely free, LibGDX has a very large community of advanced developers that are ready to assist you with their code.

3. Create a Game without using Anything!

This is the hardest method in which you create a game with full of your own hardcoded stuff! In this, you have to create your own libraries of several lines of codes or you have to create your own personal game engine.

In old times all the large game development studios first create their own engine, then creates the games in them. So it’s a very time-consuming process. But nowadays, many developers are shifting their games from their custom engines to other game engines to save time and focus more on the game itself.

If you have an expert level knowledge of particular programming language than it is beneficial for you. If you are a beginner to game programming, then this is the hardest process.

Traditionally, the way is to use super-efficient languages like C or C++, with a hardware and graphics manipulation library like SDL and OpenGL, and end up building your own game development framework or engine.

What other skills do we need to build a game?

Well, this is a good question! Because of the indie game developers tends to be multi-talented!


You might need to have good sound and music sense to provide cool sound effects in your game. There are a lot of tools to build your own, like bfxr or you can also buy them on the internet.


If are creating a 2-D game then you have to be a good pixel artist because the most of 2-D games are designed as Pixel art which is used to create character, scenes, and animations in your game. If you creating a game in 3-D then you have to learn 3-D modeling and 3-D animation.

To create pixel arts for 2-D you can use almost any paint software or as I use. To create 3-D models you can use Blender which is an open-source software for 3-D modeling.


The main and most important skill you need after creating a game is marketing and promotion. You come from a “who the hell are you” world even if your game shows your super creative talent. Who will be the first users of that game on the launch day? That’s play a huge role in a game’s commercial success.

Game industries spend millions of dollars on marketing to make their games popular. Well as a beginner, with your first game, this is not that much of importance because you must focus on creating it first. But if you have created a finished game product then you might consider knowing the basics of marketing also.


Hence we can see that beginning a game development journey is not that hard, but it does need a lot of dedication. This is where everything comes together. Programming, physics, imagination, art, and creativity!

So this is all about the basics of beginning your game development journey. If you have more questions, please be sure to comment below and don’t forget to give your reactions to this article! Stay tuned for the upcoming articles on game development only at

beginning game development infographics

You might also like:


(rand) Steps involved with file handling in C
(rand) Why blogging is so wonderful!
(rand) Making patterns with python

© Shubham Ramdeo, 2020
you are really awesome!