[python] Pygame을 사용하여 게임 개발하기

소개

Pygame은 Python으로 2D 게임을 개발하기 위한 라이브러리입니다. 이 글에서는 Pygame을 사용하여 간단한 게임을 만드는 방법에 대해 알아보겠습니다.

사전 준비

게임 개발을 시작하기 전에 Pygame을 설치해야 합니다. 다음 명령어로 Pygame을 설치할 수 있습니다.

pip install pygame

게임 창 생성

먼저, Pygame을 초기화하고 게임 창을 생성해야 합니다. 다음 코드는 800x600 크기의 게임 창을 생성하는 예제입니다.

import pygame

pygame.init()

# 게임 창 크기 설정
width, height = 800, 600
screen = pygame.display.set_mode((width, height))
pygame.display.set_caption("My Game")

# 게임 루프
running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    pygame.display.flip()

pygame.quit()

이미지 표시

Pygame을 사용하여 이미지를 표시하기 위해서는 이미지 파일을 로드해야 합니다. 다음은 이미지 파일을 로드하고 게임 창에 표시하는 예제입니다.

import pygame

pygame.init()

# 게임 창 크기 설정
width, height = 800, 600
screen = pygame.display.set_mode((width, height))
pygame.display.set_caption("My Game")

# 이미지 로드
image = pygame.image.load('image.png')

# 이미지 표시
screen.blit(image, (0, 0))

# 게임 루프
running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    pygame.display.flip()

pygame.quit()

움직이는 객체

게임에서 일반적으로 움직이는 객체를 표현하기 위해 클래스를 사용하는 것이 일반적입니다. 다음은 움직이는 사각형을 표현하는 클래스의 예제입니다.

import pygame

pygame.init()

# 게임 창 크기 설정
width, height = 800, 600
screen = pygame.display.set_mode((width, height))
pygame.display.set_caption("My Game")

class Rectangle:
    def __init__(self, x, y, width, height, color):
        self.x = x
        self.y = y
        self.width = width
        self.height = height
        self.color = color

    def move(self, dx, dy):
        self.x += dx
        self.y += dy

    def draw(self):
        pygame.draw.rect(screen, self.color, (self.x, self.y, self.width, self.height))

# 사각형 객체 생성
rectangle = Rectangle(100, 100, 50, 50, (255, 0, 0))

# 게임 루프
running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    # 키 입력 처리
    keys = pygame.key.get_pressed()
    if keys[pygame.K_LEFT]:
        rectangle.move(-1, 0)
    if keys[pygame.K_RIGHT]:
        rectangle.move(1, 0)
    if keys[pygame.K_UP]:
        rectangle.move(0, -1)
    if keys[pygame.K_DOWN]:
        rectangle.move(0, 1)

    # 화면 초기화
    screen.fill((0, 0, 0))

    # 사각형 그리기
    rectangle.draw()

    pygame.display.flip()

pygame.quit()

결론

이제 여러분은 Pygame을 사용하여 간단한 게임을 개발할 수 있게 되었습니다. Pygame에는 더 많은 기능들이 있으니 관련 문서와 예제를 참고하시기 바랍니다.

참고 자료