I'm very interested to learn how to make 2D and 3D games, but I'm very new to this field so I am wondering if companies like Playfish, Zynga and other producer of games on Facebook are using publicly available game engines to make their games or if they're building their own game engine or what?

What game engines or technologies that are used in such games?

Are there any resources available that I can use to get started?

  • 1
    \$\begingroup\$ Zynga almost certainly has an internal game engine. Probably the same with most other companies. \$\endgroup\$
    – thedaian
    Commented Jan 10, 2012 at 21:33
  • \$\begingroup\$ For 2d games at least, Flash itself is pretty much an "engine" already (arguing the semantics of "engine" of course). I mean, Flash displays 2D images, it plays sounds, it has networking commands, etc. \$\endgroup\$
    – jhocking
    Commented Jan 23, 2014 at 15:07

2 Answers 2


Briefly, yes. Zynga's Café World and PlayFish's Restaurant City uses Away3D.

I think developers might use more of 3d engines because 3d is not everyone's cup of tea - they can just focus on implementing game logic and mechanics instead of meddling with math. However they would shy away from game engines like Flixel, for reasons that Nick Wiggill has mentioned. (eg. risk of middleware)

Source: http://away3d.com/comments/away3d-latest-from-the-internet

  • \$\begingroup\$ I think you've misquoted / misaligned me. Developers may shy away from the risk of immature middleware. I don't at this time consider Away3D, Flixel or Starling to be anything less than mature middleware solutions used by established development houses still using Flash. \$\endgroup\$
    – Engineer
    Commented Jan 23, 2014 at 14:40

In agreement with @thedaian, I think you'll find these companies who work in social (and) web games tend to have various different "templates" (engines, if you will, although that term to my mind implies a lot more) that they can re-engineer to various purposes. For example, a multi-directional top-down action engine, a platformer engine, an RTS-type engine... and so on. These templates are usually games they've either bought the code rights to, or more often have developed earlier on in their own existence.

Obviously this works well both internally, and if you are being contracted by clients to produce games, advergaming being the perfect example.

The thing is, since each game is so small and relatively easy to refactor into something else, there's often not a drive to actually properly factor out the engine aspects as an engine. That's more the domain of middleware sold by dedicated middleware vendors, where you want to provide a perfect, clean slate for customers to work with. In the continuum of games/front-end/interactive I've worked in, I've seen pretty consistent code reuse this way. Obviously, though, these companies are also building other, completely new codebases, even as they are reusing the old to increase revenues.

More generally, there is little reason for them not to use mature external frameworks/engines like Flixel or Impact.js to implement new games. Decisions to use middleware can be fraught with risk, however, and so this is not always the chosen route.

In a sense, I guess the engine-vs.-template matter is just me arguing semantics with myself but again, the general answer would be, "Yes, they do".


Not the answer you're looking for? Browse other questions tagged .