I am going to be doing a presentation on game development to an iPhone user group in the near(ish) future. My audience are iPhone developers, but not necessarily very experienced ones, and this is meant to be an introduction.

My question is, what broad topics are needed to understand game development? I acknowledge that this is fairly subjective, but I really am hoping for a comprehensive list of high-level topics that apply to a broad enough swath of games that anyone interested in the topic SHOULD know about them. I would be ecstatic with some pointers to any resources that attempt to make a list such as this this. (I have looked, but my google-fu is failing me tonight.)

Here's what I have so far:

  • The Game Loop
    • a sub-note about event driven games
  • 2D Animation
    • sprites/texture maps
  • 3D Animation
    • importance of frameworks
    • modeling software
  • Particles and particle effects
  • hit detection
  • AI

Obviously I will not be covering all these topics with any depth, more like simply defining them so that after my talk, the audience will (hopefully) be able to wrap their heads around how any given game might be developed.

What am I missing?

  • \$\begingroup\$ Interesting question. Mods: Should probably be community-wiki? \$\endgroup\$
    – bummzack
    Mar 11, 2011 at 9:28

1 Answer 1


It really depends on your target audience and what you want them to learn or take-away from the presentation, but I'd consider these:

  • Asset pipeline
    • command line tools vs plugins
  • Audio
  • Profiles / saves
    • autosave vs slots
  • Physics
  • Network play
    • online play
    • leaderboards
  • Source control
    • importance of being able to roll back
  • Input
    • polled vs event
    • handling available input methods between devices
  • Degradation vs denial
    • handling graphical differences between devices
  • Testing

Possibly also:

  • Legal issues (music / name clashes)
  • When to make the choice to not support a device
  • \$\begingroup\$ Nice additions... I need help with some of these topics! ;) \$\endgroup\$
    – livingtech
    Mar 17, 2011 at 5:16

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