Useful Links
Computer Science
Game Development
Game Development with Python and Pygame
1. Foundations of Python and Pygame
2. Core Pygame Concepts
3. Handling User Input and Events
4. Working with Images and Sprites
5. Movement and Animation
6. Collision Detection
7. Sound and Music
8. Text and User Interface
9. Advanced Game Structure and Concepts
10. Performance Optimization
11. Project Organization and Distribution
12. Complete Game Examples and Projects
Movement and Animation
Implementing Player Movement
Velocity and Position Vectors
Representing Position and Velocity
Using Tuples and Vectors
Vector Mathematics
Updating Position Based on Input
Mapping Input to Movement
Applying Velocity to Position
Acceleration and Deceleration
Enforcing Screen Boundaries
Preventing Movement Off-Screen
Clamping Position Values
Wrapping Around Screen Edges
Physics and Movement Systems
Basic Physics Concepts
Velocity and Acceleration
Friction and Drag
Implementing Gravity
Constant Gravity Force
Terminal Velocity
Collision Response
Bouncing Off Surfaces
Sliding Along Walls
Principles of 2D Animation
Frame-by-Frame Animation
Animation Frame Rate
Looping and Non-Looping Animations
Using Spritesheets
Structure of a Spritesheet
Advantages of Spritesheets
Animation Timing
Frame Duration
Animation Speed Control
Implementing Spritesheet Animation
Loading a Spritesheet Image
Extracting Frames from Spritesheets
Defining Individual Frames
Storing Frame Rects
Managing Frame Indices
Cycling Through Frames over Time
Timing Animation Frames
Handling Animation States
Animation State Management
Multiple Animation Sequences
Animation Transitions
Transformations
Scaling Sprites
Resizing Images and Surfaces
Maintaining Aspect Ratio
Rotating Sprites
Rotating Images
Handling Rotated Rects
Rotation Performance Considerations
Flipping Sprites
Horizontal and Vertical Flipping
Direction-Based Sprite Flipping
Previous
4. Working with Images and Sprites
Go to top
Next
6. Collision Detection