Apress Access

Beginning Game Development with Python and Pygame

From Novice to Professional

By Will McGugan

  • eBook Price: $27.99
Buy eBook Buy Print Book

Beginning Game Development with Python and Pygame Cover Image

Having most recently worked on the MotorStorm game for PlayStation 3, Will McGugan shares valuable insights that not only will help you exploit Pygame to its maximum potential, but are sure to make you a more creative and knowledgeable games developer all round.

Full Description

  • Add to Wishlist
  • ISBN13: 978-1-59059-872-6
  • 316 Pages
  • User Level: Beginner to Advanced
  • Publication Date: October 18, 2007
  • Available eBook Formats: PDF

Related Titles

  • Go Recipes
  • Python Recipes Handbook
  • Lean Python
  • Learn to Program with Python
Full Description

Like music and movies, video games are rapidly becoming an integral part of our lives. Over the years, you’ve yearned for every new gaming console, mastered each blockbuster within weeks after its release, and have even won a local gaming competition or two. But lately you’ve been spending a lot of time thinking about a game idea of your own, or are exploring the possibility of making a career of this vibrant and growing industry. But where should you begin?

Beginning Game Development with Python and Pygame is written with the budding game developer in mind, introducing games development through the Python programming language and the popular Pygame games development library. Authored by industry veteran and Python expert Will McGugan, who worked on the MotorStorm game for PlayStation 3, you’ll be privy to insights that will not only help you to exploit Pygame to its maximum potential, but also make you a more creative and knowledgeable games developer all round.

  • Learn how to create advanced games by taking advantage of the popular open source Python programming language and Pygame games development library
  • Learn about coding gaming preferences, sound, visual effects, and joystick/keyboard interaction
  • Discover the concepts that are crucial to success in today's gaming industry, such as support for multiple platforms, and granting users the ability to extend and customize your games

What you’ll learn

  • Take advantage of Python and the Pygame library to build compelling cross-platform games
  • Learn to best use these technologies to turn your dream game into reality
  • Create professional games by accounting for sound, special effects, and user interaction through the joystick and keyboard
  • Build both two- and three-dimensional games, and learn more about the factors that contribute to choosing one approach over the other
  • Provide users with the means for extending your games through level creation and custom modifications as a means to build a vibrant community around your product
  • Package your games in a manner that allows even novice computer users to install, use, and update your games with ease

Who this book is for

This book has been written for any budding games developer. While knowledge of the Python language helps, it isn’t required. To help new programmers along, two early chapters are devoted to an overview of Python.

Source Code/Downloads

Downloads are available to accompany this book.

Your operating system can likely extract zipped downloads automatically, but you may require software such as WinZip for PC, or StuffIt on a Mac.


If you think that you've found an error in this book, please let us know by emailing to editorial@apress.com . You will find any confirmed erratum below, so you can check if your concern has already been addressed.

On page 27:
listing 2.4,
when i try the line
my_tank = Tank("Bob")
i get an error that says:
TypeError: object.__new__() takes no parameters

Can any other readers, or the author, lend some guidance?

On page 56-57:
In the book: pgame.event.post(my_event)
Correct: pygame.event.post(my_event)

On page 169:
In the listing 8.2 the implementation of the "__add__" method is incorrect. It should receive the right operand, not the individual "x, y, z" components.


    1. PHP Objects, Patterns, and Practice


      View Book

    2. Beginning Android 3D Game Development


      View Book

    3. Troubleshooting Oracle Performance


      View Book

    4. Beginning Amazon Web Services with Node.js


      View Book