Game Development 101

Hasini Samarathunga
SESA-UOK
Published in
6 min readJun 17, 2021

Whether you prefer console or pc, multiplayer or single-player, or whether if you are a noob or a pro, every gamer out there has thought of making their own game at some point.

But developing a game is not a piece of cake. It’s a process that is achieved by a great deal of dedication, much effort, tears, and a lack of sleep. Kind of like finishing a Dark Souls game. However, for the passionate, all of the effort and sleepless nights become worth it once you see the final product launched and being enjoyed by others.

Why should you consider a career in game development?

Video game development is a great career choice if you are a skilled developer who is passionate about making video games. In many cases, you are working as part of a team, and it can be very satisfying to work with other talented people to create something that (hopefully) will be financially successful, critically applauded, and enjoyed by players.

But choosing this path is a double-edged sword. The Game Development industry in Sri Lanka is still not quite up to a favorable amount. So the opportunities will be scarce when trying to build a career out of it here in Sri Lanka. (In contrast to the rapidly growing video game industry in more developed countries.)

However, there are some great companies here in Sri Lanka that focus on Game Development. For example, Motion Miracles and Arimac. I highly recommend following their amazing projects.

Learning Curve

You cannot become a Game Developer by slacking off and playing games all day. Just like everything else in life you have to learn persistently in order to succeed.

Software Engineering degree program at the University of Kelaniya is one of the few places you can specialize in Game Development. In addition to learning about Software Engineering, you get the opportunity to study Digital Gaming and Animation Applications as a domain.

Game Platforms

PC

Most computer games are PC games. The game is controlled using PC input devices such as the keyboard, mouse, joystick, etc. PCs are not designed specifically for gaming, so there may be differences running the same game on different hardware. The openness provides developers with benefits such as lower software costs, improved flexibility, improved creativity, emulation, creation of modifications, open hosting, etc.

Console

A console game is played on a home console, a specialized electronic device that usually connects to a television. It often comes with a specific game controller.

Home consoles are specifically designed to play games using a dedicated hardware environment, giving developers a concrete hardware target for development and assurances of what features will be available, simplifying development compared to PC game development. Usually consoles only run games developed for it. Major console platforms include Xbox, PlayStation, and Nintendo.

Mobile

Mobile gaming has become a significant gaming platform since the introduction of smartphones and tablets built on the iOS and Android operating systems.

These games have the utility to embed unique features of mobile devices that are not necessary present on other platforms, such as accelerometers, global positing information, and camera devices to support augmented reality gameplay.

VR

The application of a 3D artificial environment to computer games is known as Virtual reality (VR) gaming. They generally require players to use a special head-mounted unit that provides stereoscopic screens and motion tracking to immerse a player within a virtual environment that responds to their head movements.

Here’s a multiplayer Virtual Reality Educational Platform, developed by
Upulanka Premasiri, a former Software Engineering student at University of Kelaniya.

Game Genres

Here are some of the games created by the Software Engineering students of University of Kelaniya.

First-person Shooter

The first-person shooter (FPS) is a sub-genre of shooter video games. The game is centered on the gun and other weapon-based combat, with the player experiencing the action through the eyes of the protagonist and controlling the player character in a 3D space.

Open World

Open-world video game is a genre of gaming where a player can roam freely through a virtual world and is given considerable freedom in choosing how or when to approach objectives.

RPG Action

A role-playing game (RPG) is a genre of video game where the gamer controls a fictional character that undertakes a quest in an imaginary world.

Action RPG games are mostly focused on the combat aspects rather than the narrative. Battles usually occur in real-time, and the player frequently controls a single character rather than a party.

Simulator

Games that mimic or simulate aspects of real life are known as simulation games.

These games focus on operating businesses, building cities, flying airplanes, car racing, performing medical procedures, etc.

Top game engines

Unreal Engine

One of the most popular and widely used game engines is the Unreal Engine, which is owned by Epic Games. It is essentially a game development multi-platform engine designed for businesses of all sizes that help use real-time technology to transform ideas into engaging visual content.

Unity

Unity is a multi-platform game engine that allows you to create interactive 3D content with ease. This gaming engine is the choice of many large organizations today due to its excellent functionality, high-quality content, and ability to be used for any type of game. It supports both 2D and 3D content.

GameMaker: Studio

GameMaker has become widely used because it doesn’t require programming knowledge to use. Instead, users can “point-and-click” to create games much faster than coding with native languages. Some of the best titles made with GameMaker include Spelunky, Hotline Miami, and Super Crate Box.

Amazon Lumberyard

As evident by the product name, Lumberyard is Amazon’s comprehensive offering. This is a 3D game engine designed to build games and fan communities. It offers VR preview mode, visual scripting tools, and also Twitch integration. Integration through Lumberyard means it’s significantly easier to build games with online play. It has good native support for C++, P2P, and client topology. Lumberyard also supports Autodesk Maya and Adobe Photoshop.

So where should you start?

The best way to succeed in any profession is constant practice. So go ahead and choose a game engine you like, then get on coding.

Maybe you can start by creating a cool indie game like this one.

--

--