
Master the pygame library to create 2d games from basics to advanced, handling windows, keyboard input, drawing shapes, art loading, sound, and collision detection.
Learn to set up your game development environment by installing Python and VS Code, enabling PATH, installing Pygame 2.0, and verifying the setup with a simple script that imports pygame.
Learn to open a pygame window, initialize pygame, create a display surface, set a window title, and implement a simple game loop with event handling to keep the window responsive.
Learn to fix non-deterministic pygame loops by using a clock and tick to cap the frame rate at 60 frames per second, ensuring consistent performance and color updates.
Create a pygame Rect with x, y, width, height; draw it on a filled display; move it with x/y or move_ip; explore center, size, and left, top, right, bottom properties.
Learn to draw circles, ellipses, lines, and polygons in Pygame on a display surface, using color, center coordinates, radius, and optional outline or fill.
Learn two pygame keyboard input methods, handling key down and key up events and using pygame key.get_pressed to move a rectangle with WASD, including speed control and holding keys.
Handle mouse inputs in pygame by listening to mouse button events, using left and right buttons to move a rectangle along the x axis with speed control.
Load and play looping music and a shoot sound in a pygame project with the mixer, using a data folder of wave files and a space key trigger.
learn how to create and manipulate pygame surfaces, including alpha channels, filling and drawing shapes, and blitting surfaces onto the display with optional blending modes such as multiply or add.
Load system or custom fonts in pygame, create font objects with chosen sizes, render text (with optional anti-aliasing and color) to surfaces, then blit onto the display.
Learn how to render an image in pygame by loading it as a surface and blitting it to the display at the top-left corner; basic loading and display.
Explore pygame sprites by attaching an image and a rect to a Sprite class instance, enabling collision handling, manual image scaling, and future use of sprite groups.
Learn to manage multiple sprites with pygame groups, using visible groups and layered updates to draw, update, and handle collisions efficiently.
Create a custom Pygame sprite by defining a character class with an __init__ that accepts groups and overrides update for speed-based movement. Leverage visible and logic groups to manage updates.
Learn three approaches to collision detection in pygame: a naive per-rect check, group-based key collisions, and group-to-group collisions, including deleting collided keys.
Apply a basic pygame character controller using keyboard inputs to move on the x and y axes, flip the sprite for direction, and prepare for collision detection.
learn how to resolve collisions in pygame by separating static and dynamic sprites, updating logic before collision resolution, and moving dynamic objects away from static platforms using a simple script.
Learn to load a tile set as a sprite sheet in pygame, create a transparent surface, define columns and rows, and display frames by offsetting the sheet with animation counter.
Do you want to make 2d games and bring your ideas to life?
Understand how to write a script that converts into an amazing games in your screen that could be played by the entire world?
If you know the absolute basics of python programming and always wanted to make your own video games, than this is exactly what you're looking for!
After more than ten years making games and five teaching it to the world, I realized that many tutorials or even paid courses fails to teach you the foundation that you need in order to bring your ideas to life. Instead they just show you how a specific game is done without explaining the functions, classes and tools they're using. And the result of something like that is that you absolutely can not walk on your own after the tutorial: you feel like you always need to go back and if they don't teach you something, than you'll never be able to figure it out yourself.
In this course I'll do it different: I'll teach you the right tools and how to use library you need to know and master in order to walk on you own and create amazing 2d games using python.
In the end, the only think you'll have to worry about is to think about and amazing idea in order to bring it to life using the tools you'll learn here. And I'm pretty sure that that's an amazing experience to have!
In this course you'll learn and master the pygame 2 library. Learning all its secrets and use cases and how to take advantage of the tools the library have to create even more incredible 2D games! You'll learn from the absolute basics and evolve to the most advanced parts.
Starting by opening a window, handling keyboard and mouse inputs and making your code react to it. Then you'll learn how to draw primitive shapes on the screen, load musics, sound effects and font rendering.
You'll learn how to open and render images, organize and improve their use with the pygame Sprites making them easier and more intuitive to manipulate as you need. Even spritesheets will no longer be a problem because you'll learn how to handle them as well!
And much more!
Collision detection and resolution, blend two or more textures together, write custom logics to your sprites and really explore the options available to you to make your dream game!