Toggle Dark Mode
Fullstack web development
Passionate about Blogging
This post is somewhat different from my other posts. In this post I'm going to talk about how to get started with game development. I once was really interested in game development(still can do if I find some interesting project). You can see my projects here. I mostly made crappy games for game jams. But I have been through the beginners' journey in the field of game development. And I would like to share my experience with you all.
The games you mostly play are AAA games. AAA game means games developed by big companies like Ubisoft, Activision, Epic etc. These companies generally find a successful business model and develop games around that. These games are a huge investment for these companies, so failing to turn up expected revenue means game over for them. So, they generally don't tend to get out of the box. It is perfectly fine to work for these AAA companies, because they are good at what they do, i.e. generating revenue to pay you a decent paycheck.
But there is another aspect of game development. Alike the software industry startups, there is a thing called indie game development in the game development industry. These indie i.e. independent game developers often work solo or in a group of small peoples to deliver out of the box experiences, which a AAA title can never afford to explore considering the risk factors. So, if you ever wanted to make you own game and show up your own idea, then getting into indie game development might be a good option. In this post I will be basically talking about how to make a game on your own.
Game development is a multi-disciplinary job. If you can imagine any game you will find out some key components:
Art: The first thing you notice when you open a game is its artwork. The beautiful environments created by the artists play an important role to keep you engaged in a game.
Programming: A game is not even possible without the programmers defining all the logics for the game, like the enemy AI, the player movement controls and random world generation etc.
Music: Try to play a game with the music muted. You will find the experience incomplete without the music in most of the cases.
But to get started, having proficiency in any one of the first two skills will be enough. So, we will go one by one through the skills and discuss how to get started with them
If you are a good artist, chances are you already have a graphics tablet to draw with. In that case you can use:
If you want to use your mouse but still want to have beautiful graphics, then you can try vector graphics tools. These tools will let you make scalable vector images which will look crisp on every screen. If mastered properly, these tools can help you to create assets for games as good as a graphics drawn with a tablet. Softwares you can use:
If you don't feel like using vector art, then you can use old school pixel art. You can use Adobe Photoshop to make pixel art. But there are online tools like Piskel.
But if you want to have 3D art for your game then blender will be the right software to use. You can also use voxels(pixels with volume) for 3d art. Minecraft is a game which uses voxels. MagicVoxels is the tool I know used for voxel art.
It is not necessary to reinvent the wheel i.e. recreate a game engine from scratch. Game Engines are programs which helps you with packaging and compiling your game, handling the physics in your game and a lot more. So, the game engines I will suggest to use:
Unity: Unity is one of the best game engine currently available as:
a. It is free for personal use
b. It can export to Windows, Linux, MacOS, IoS, Android and a lot of other platform.
c. Can make both 3D and 2D games
d. Though it uses C# for programming, but it has a quite easy learning curve and a ton of online resources like Brackeys
Unreal Engine: Unreal Engine is a free engine created by the awesome epic games, which has the perks of Unity Engine, but is less popular and uses C++ and node based programming for making games. Plus it provides some starter templates for games. So it is a little bit easier to get into for not programmers. Some people say Unreal has better graphics processing than Unity.
Talking about visual coding, Stencyl and Construct will be choice for you. But these options will make your game making experience a bit restricted.
Nowadays, finding royalty free music online is really easy. Sites like freesound.org and more are there to provide you.
It is not enough to have a game ready, you need to get it to people. Nowadays, it is not easy to have your game on Steam. But a good alternative will be itch.io.