What is a game engine?

What's the difference between a game engine and a game development framework?

  • The Unreal engine, Source, id Tech N, etc., are obviously considered game engines. Things like Cocos2D, XNA, Sparrow, etc., have been described as "game development frameworks". What's the difference? Given a chunk of code, how would you decide whether to call it a game engine or a game development framework?

  • Answer:

    An engine is a set of tools and mechanism already prepared to make a (certain type of) game.  A framework is essentially a code base that handles important aspects of games, usually hardware interfacing and input, but come with no predetermined rule set. So, for example, the Unreal engine is a shooter engine.  There are already rules in place for movement, input, physics, maps, spawning, etc.  Also, it comes with a map and asset editor that can be used to supplant these rules with ones of your own to make a game of your vision.  This is not to say that the Unreal engine can't make other types of games, but it has already been optimized with rules that allow for fast paced shooter mechanics with detailed models and textures.  Alternatives will play with permutations of these optimization (so, moving but not shooting may become a sports game).  You can really mess with the inner workings of an engine to do something really crazy (like a puzzle game with unreal), but that misses the point of an engine (40% of the work being done for you), so you might as well use a... Frameworks are merely sets of code that allow for a way to get at the utilitarian aspects of game making.  Good frameworks tend to unify the aspects of games, namely controller input, graphics, sound, persistence, and asset management.  Frameworks are not predisposed to a certain type of game, but their capabilities may lend their strengths to different ranges of games (a 2d framework is not going to do any FPS's) .  XNA is function set that allows for use of all aspects of the Xbox 360 and most aspects of PCs.  An FPS engine can be made out of XNA, but that is all work you would have to do yourself.

Westin Breger at Quora Visit the source

Was this solution helpful to you?

Other answers

For me, when I hear the word game engine. I think of the game framework with code, libraries etc along with the tools that allow the import/export of art/audio assets while game development framework is just the code. So to me, a game engine is framework + tools

Gibson Tang

Just Added Q & A:

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.