Programming and Engines

Choosing a Game Engine: Questions to Ask

A product-neutral checklist of questions about your game, your team and your plans that help you weigh engine options before committing months of work.

On this page
  1. Start with the game, not the tool
  2. Questions about the game
  3. Questions about platforms
  4. Questions about the team
  5. Questions about money and rules
  6. Questions about the long run
  7. Try before you commit

Start with the game, not the tool

Online discussions about engines often turn into arguments about which one is best. That is rarely a useful question, because the answer depends on what you are building. An engine that suits a large 3D adventure may be clumsy for a small puzzle game, and the reverse is also true. This article avoids naming products on purpose. Instead it gives you questions to put to any candidate, so you can compare them against your own needs.

Switching engines in the middle of a project is expensive, since most of your work is tied to the engine’s way of doing things. A few hours of honest questioning at the start is cheap by comparison.

Questions about the game

What dimension and style is it? A flat 2D game, a 3D game and a text-heavy game need quite different support. Some engines are built around 2D from the start, while others treat it as a mode layered on top of 3D. Check how natural your style feels, not whether it is technically possible.

What does it need from the engine every frame? A game with a few moving objects makes light demands. A game with huge crowds, detailed lighting or physics-driven destruction makes heavy ones. If your idea has an unusual demand, such as streaming a very large world, test that one thing early instead of assuming it will work.

Which genre conventions does it lean on? Genres often come with expected features, such as a grid system for tactics games or a dialogue tool for story-heavy games. An engine with built-in support for what you need saves weeks. One that makes you build it yourself may still be fine, but you should know that going in.

Questions about platforms

Where will players run it? A phone, a console, a browser tab and a desktop computer have different limits on memory, input and file size. Ask whether the engine can export to every platform you care about, and whether any of them carry extra requirements, such as special agreements or approval steps.

Will you need cross-platform play? If players on different devices must share a session, the networking approach matters from day one. Cross-platform play is much easier to plan for early than to add later.

What are the performance targets? A lightweight game on a modern desktop has plenty of room. A game aimed at older phones has very little. Look for how the engine handles low-end hardware, and plan to do real performance profiling on actual devices instead of trusting a fast development computer.

Questions about the team

What do people already know? Time spent learning a new language or workflow is time not spent on the game. If your team already knows a particular programming language, an engine that uses it has a real advantage. If you are learning to code as you go, a gentler tool with strong documentation may matter more than raw power.

How many people will touch the project? A solo developer can tolerate a more informal setup. A team needs files that merge cleanly and tools that support version control. Ask how the engine stores scenes and assets, and whether two people can work at once without constant conflicts.

Do artists and designers need to work without a programmer? Some tools let non-programmers adjust levels, animations and effects directly. Others require code changes for most things. Which is better depends on who is on your team and what they are comfortable with.

Questions about money and rules

What are the license terms? Engines differ in how they charge: some are free to use, some ask for a fee up front, and some take a share of revenue after a threshold. Terms can change, so read the current license yourself before committing and keep a copy of the version you agreed to. If you are unsure about the legal details, ask someone qualified.

What costs sit around the engine? Plugins, art tools, middleware and store fees can add up. Factor them into your development budget rather than only counting the engine itself.

Can you see the source? Access to the engine’s source code lets you fix problems yourself, but it also means you take on more responsibility. Whether that is a benefit or a burden depends on your team’s skills.

Questions about the long run

How active is the community? Searchable documentation, forums and tutorials can save more time than any single feature. A tool that is popular enough to have many answered questions is easier to work with, especially for a beginner.

How stable is it between versions? Updating an engine mid-project can break things. Ask whether you can stay on one version until you ship, and how much support exists for that version afterward. Releasing fixes after launch, including game patches, depends on being able to rebuild your game later.

What if you outgrow it? Think about whether your game might need features the engine does not offer. Also consider how portable your work is. Keeping game logic separate from engine-specific code makes a later move less painful, even if you never use that option.

Try before you commit

No checklist replaces a small test. Pick the most difficult or unusual part of your game, build a rough version in each of your top two choices, and compare. Notice how long it takes to get something moving, how readable the errors are, and how it feels to work in every day. A weekend spent this way is far more informative than weeks of reading comparisons.

For a first project, choose something with good learning material, keep the game small, and finish it.

The complete guide to programming and engines

Programming Concepts Behind Games, in Plain Terms
Read the guide

Keep exploring

Guides from other topics

All topics →