Add r Game Logic and Drawing Code: Within the game loop, add your game logic and drawing code. The call to clock.tick(frame_rate) will ensure that the game runs at the specified frame rate by pausing the loop for the appropriate amount of time.
Here’s a complete example of a simple Pygame program with a frame rate limit:
Python Code
import pygame
# Initialize Pygame
pygame.init()
# Set up the display
screen = pygame.display.set_mode((800, 600))
pygame.display.set_caption("Frame Rate Limit Example")
# Create the Clock object
clock = pygame.time.Clock()
# Set the frame rate limit (e.g., 60 frames per second)
frame_rate = 60
# Main game loop
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# Fill the screen with a color (black)
screen.fill((0, 0, 0))
# Example game logic: Draw a white rectangle that moves across the screen
rect_x = (pygame.time.get_ticks() // 10) % 800
pygame.draw.rect(screen, (255, 255, 255), (rect_x, 300, 50, 50))
# Update the display
pygame.display.flip()
# Limit the frame rate
clock.tick(frame_rate)
# Clean up Pygame
pygame.quit()
Explanation:
Initialization: pygame.init() initializes Pygame, and pygame.display.set_mode() sets up the display window.
Clock Object: clock = pygame.time.Clock() creates a clock object to help manage the frame rate.
Frame Rate Limiting: clock.tick(frame_rate) limits the loop to run at the specified frame rate.
Game Loop: The main loop handles events, updates game logic, and redraws the screen. pygame.display.flip() updates the entire screen, and clock.tick(frame_rate) ensures the loop runs at the desired frame rate.
By following these steps, you can effectively control the frame rate of your Pygame application, ensuring smooth and consistent gameplay.