Third party cookies may be stored when visiting this site. Please see the cookie information.

PenguinTutor YouTube Channel

Videos and Tutorials on Game Programming with Pygame Zero


I've recently published a book Beginning Game Programming with Pygame Zero.

To accompany the book I've created some videos showing some of the games that you can create and some of the techniques that have been covered in the book. I've also created some other videos and tutorials that are not directly related to the book which explain some of the techniques as well. Here are some of those videos ...

Beginning Game Programming with Pygame Zero

This is a video showing the variety of different games in the book.

Complete Beginners Guide

Here is a worksheet for creating a first game in Pygame Zero

This video provides an introduction to getting started with Pygame Zero, including creating a first window and creating an animated character on the screen.

Creating Vector Images for Computer Games in Pygame Zero

How to create vector images in Pygame Zero. Vector images are created from shapes. This uses rectangles, elipses and polygons to create a tank used in a tank battle game. Two tanks then battle it out creating a trajectory for the shells to try and hit their opponent.

Using Object Oriented Programming (OOP) for Computer Game Programming with Python Pygame Zero

Object Orinented Programming is a useful technique for creating any computer programs. This video shows how those techniques can be applied in Python and Pygame Zero to create a matching pairs memory game.

Creating an Artificial Intelligence (AI) Opponent for Computer Games in Pygame Zero

For many games the enjoyment is in playing against a computer opponent which has the right level of ability. It needs to be difficult enough to provide a challenge without being so difficult you always lose. This looks at some techniques of creating an opponent using simple AI.

Part 1 uses the same matching pairs memory as the previous video on object-oriented programming, but creating a computer opponent with different levels of difficulty.

Part 2 looks at how you people play the classic Battleship Game to create a computer opponent that provides a good level of difficulty.

Using a USB controller / joystick with Pygame Zero and QJoyPad

For more information on how to play Pygame Zero games using a USB game controller or joystick see the guide: Using a gamepad or joystick on a Raspberry Pi with Python Pygame Zero

Space Shooter Game

The final game is a Space Shooter game. It combines many of the techniques already learned to create a playable game. The video below gives an explanation for some of the additional features used to create the game.

Game using electronics, physical computing and Pygame Zero

Pygame Zero for makers

Includes the following video on controlling lighting for a 3D printed Christmas House

Also see: