How the f*ck do you make games?
When I got into making games just over a year ago I was completely and hopelessly lost. There were so many options and routes to go down. If you have an interest in making games I hope this helps you. This is more about the broad strokes than nitty gritty details, if you have no clue where to begin, then start here.
1. The Beginning - building on the shoulders of giants
A game engine is the software framework that you use to create games. Engines handle the rendering of graphics to your screen, physics, collision detection, playing sounds, and etc. They are not the actual game itself. It's a generalized toolkit that you can use to make many different games.
There are a ton of paths you can take when it comes to making games. Realize that this is an industry that has been around a long time and many of the problems you're going to run into have already been solved by someone more experienced than you. Some people are tempted by building their own game engines but it's a rare breed that can make their own engine and also create a game out of it.
A good analogy is someone that needs to edit a photo on their computer but instead of using Photoshop, GIMP, or some other existing program they decide to write their own.
via GIPHY
I had cold feet when picking which engine to work with first. It felt like making a long-term commitment to a partner you had only just met. Don't sweat it however, there is no wrong way to get into making games. If you try out a game engine for a couple of months and decide it's just not working out that's ok! You will have gained a ton of transferrable skills.
GameMaker: Studio
Personally I started working with GameMaker: Studio. It doesn't have a great UI and it's sometime unintuitive but it's a fantastic tool. Some of my favourite indie games are made in GM: Studio. Hotline Miami, Risk of Rain, Samurai Gunn, Hyper Light Drifter, and Nuclear Throne just to name a few. It's primarily for 2D games which is all I'm focused on currently. I think it's an amazing tool to ease you into making games.
GameMaker: Studio Website
Unity
Any Google search you do on game dev will inevitably lead you Unity. It's one of the most popular engines out there. You can make 2D and 3D games using Unity and there is a huge community behind it. I've moved to Unity and my lastest project ASTERVOID 2000 in created in Unity. It's such a verstile tool and allows you to export your game to probably any platform that you want. PC, OSX, Linux, Playstation 4, XBOX One, Nintendo, iOS, Android, and more.
Unity Website
2. Git er' done
Try to do a handful of tutorials for your first couple of weeks. Both GameMaker: Studio and Unity have excellent learning resources on their respective websites. By sticking to a regement of tutorials you can start to get used to all the different features the engine you're working with has to offer. Dive into your own project once you feel you have a decent handle on the basics.
Making games is hard.
Whatever the idea is for your game cut it in half, and then cut it in half again. I have met too many people who's ambitions are way too large and end up with no games done under their belt after months/years of work. This is your first project so allow yourself to make something small and polished, then you can expand a little bit on your next project. I really can't stress the importance of finishing your projects enough.
Don't be scared of any facet of creating a game, whether it be programming, art, music, sound effects, or game design. It's good to get accustomed to what it takes to connect each of the parts to finish a game. For parts that you may be weak at you can rely on assets online to help you get started.
For example:
Graphics, Kenney Assets
Sound FX, ChipTone
3. Look for community
The largest thing that has kept me motivated is finding a community of game developers to hang out and bounce ideas off of.
At first making games was a lonely experience. I don't really look to online forums much. I'm from Calgary, Alberta, Canada - a city that is very western. Check out our sports arena.
That's right. A saddle. The nickname of Calgary is "Cowtown". There aren't any game development studios out here and I thought that I was the only one interested in making games here. I was however lucky to find a meetup.com group, called the Calgary Game Developers.
Being a part of a community is a lot of fun and the feedback you'll get from a live group of people is extremely valuable. Not to mention you'll likely be able to find people to collaborate with which will help when it comes to making bigger games.
If there is no community where you are from then don't be afraid to start it. Even just something small. When I started going to the CGD meetups I started something called Indie Friday with Radu Muresan which is a weekly work session at a cafe. It started with just the two of us but it's grown into 8 - 10 members a week. Our biggest Indie Friday must have had 20+ people.
Conclusion
I hope this really broad overview of making games is helpful to you. Don't be paralyzed by doubt, and stop making excuses. Just start making a game and keep pushing forward. You'll surprise yourself after a year or two with a handful of games to call your own.
If you have any questions please feel free to contact me through Twitter or you can find my email address on my portfolio.










