
Learn to build 2D games in Python with the arcade library, drawing shapes, text, and colors via an easy windowed rendering loop.
Learn basic animation in python by using an arcade window and delta time to update a timer and redraw text, illustrating continuous motion and an event loop.
Create a simple one-dimensional bouncing ball animation in Python using the arcade window class. Move the ball with change_x, and reverse velocity when center_x reaches width minus radius.
Use on key press and on key release events to handle keyboard inputs. Move a blue square in a top-down game by arrow keys, adjusting velocity and stopping on release.
Explore mouse inputs in python arcade: handle on mouse motion, press, and release; track x and y, detect buttons and modifiers, control mouse visibility, and move a circle accordingly.
Learn how to detect point-rectangle collision by checking if the mouse coordinates lie between a sprite’s left, right, top, and bottom, and update the sprite's alpha to reflect collision.
Build a top-down 2D shooting game in Python with tank attacks, world map scrolling, enemies, shooting, collisions, explosions, and a boss encounter.
Learn to implement game screens in Python by routing through intro, play, and game over, manage lives, reset the viewport, and use space to start or restart.
Explore the algorithm and math of ball-brick collisions, and learn to resolve collisions step by step by separating x and y moves, using a bounding-box simplification for brick-breaker gameplay.
Preview the brick breaker game, demonstrating paddle and ball interactions, life loss on misses, and brick destruction, with power-ups that enlarge the paddle and fireball to clear bricks faster.
Explore building a simple Python platformer from scratch, including gravity, collision detection, coins, ladders, moving platforms, and basic enemies.
Create a platformer player class in Python by inheriting a sprite, loading left/right textures, flipping for left, and cycling textures to animate movement; set up movement with key input.
Learn to animate a Python game character by loading walking and jumping textures, mirroring left/right images, and updating frames every five cycles for smooth motion.
Preview a Python Tetris-like game, showing next piece preview, rotate and move down, hot and space drops, line clears, and restarting the game.
THIS COURSE IS NOW FREE!!
Because of my busy schedule, I will not be able to maintain or support this course. Udemy requires that video content must be under 2 hours to make a course free. So I have unpublished most of the videos to satisfy the requirements. Please see my youtube channel for all lecture videos. Youtube Channel: @longnguyen8112
Enjoy!
Learn how to code Arcade games in Python! We will use the Python Arcade Library to code games. Arcade is a very easy to use library. It is more intuitive, requires less boiler-plate code and more Pythonic than Pygame. The library has many contributors on Github and is actively maintained with almost daily updates.
Learn to code the following games:
1) Tank Attacks: A top-down tank shooting game.
2) Brick Breaker: Classic brick breaker game.
3) Platformer Game: A Mario-like side-scrolling platformer game(side scrolling, with climbing ladders and moving platforms). This game is written from scratch; we implement all of the platformer collisions and resolution without using any physics library.
4) Tetris.
And more to come soon!
We will learn the fundamentals of writing arcade games including:
1) Drawing basic shapes
2) Basic Animation
3) Keyboard and Mouse inputs
4) Working with Images and Sprites
5) Animating Characters/Sprites
6) Basic Collision Detection
7) Resolving Wall Collisions for Top-Down Games
8) Shoot Bullets, Aim and Shoot at Angle.
9) Scrolling
10) Simulating Explosions
11) Adding Sounds
12) Using Tiled Map Editor to Create Game Maps/Worlds
13) Implementing from scratch Ball-Brick Collisions for Brick-Breaker Game
14) Write a Platformer Game like Super Mario from Scratch(side scrolling, with climbing ladders and moving platforms)
15) Learn how to write Tetris from scratch!