728x90

1. 이번 강의 목표
이번 강의에서는 플레이어 전투기를 화면에 생성하고,
W / A / S / D 키로 이동할 수 있도록 구현합니다.
아직 이미지를 사용하지 않고, 사각형으로 전투기를 표현합니다.
2. 플레이어 전투기 설정
플레이어 전투기는 화면 하단 중앙에서 시작하도록 합니다.
player_width = 40
player_height = 40
player_x = SCREEN_WIDTH // 2 - player_width // 2
player_y = SCREEN_HEIGHT - player_height - 20
player_speed = 5
- 전투기 크기는 40x40으로 설정합니다.
- 화면 아래쪽에서 약간 띄운 위치에 배치합니다.
3. 키 입력 처리 (WASD)
Pygame에서는 키를 계속 누르고 있는 상태를 감지하기 위해
pygame.key.get_pressed()를 사용합니다.
keys = pygame.key.get_pressed()
if keys[pygame.K_w]:
player_y -= player_speed
if keys[pygame.K_s]:
player_y += player_speed
if keys[pygame.K_a]:
player_x -= player_speed
if keys[pygame.K_d]:
player_x += player_speed
이 코드는 게임 루프 안에서 실행되어야 합니다.
4. 화면 밖 이동 제한
전투기가 화면 밖으로 나가지 않도록 제한합니다.
if player_x < 0:
player_x = 0
if player_x > SCREEN_WIDTH - player_width:
player_x = SCREEN_WIDTH - player_width
if player_y < 0:
player_y = 0
if player_y > SCREEN_HEIGHT - player_height:
player_y = SCREEN_HEIGHT - player_height
5. 플레이어 전투기 그리기
사각형을 사용하여 전투기를 화면에 그립니다.
pygame.draw.rect(
screen,
(0, 200, 255),
(player_x, player_y, player_width, player_height)
)
6. 현재 단계 결과
이제 게임을 실행하면 다음과 같은 동작을 확인할 수 있습니다.
- 화면 하단에 전투기가 표시됩니다.
- WASD 키로 전투기를 자유롭게 이동할 수 있습니다.
- 화면 밖으로는 나가지 않습니다.

7. 마무리
이번 강의에서는 다음 내용을 다뤘습니다.
- 플레이어 전투기 생성
- WASD 키 입력 처리
- 화면 밖 이동 제한
다음 강의에서는 스페이스바를 눌러 총알을 발사해 보겠습니다.
전체 코드
더보기
import pygame
import sys
pygame.init()
# 화면 설정
SCREEN_WIDTH = 480
SCREEN_HEIGHT = 640
screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))
pygame.display.set_caption("Shooting Game")
# FPS 설정
clock = pygame.time.Clock()
FPS = 60
# 플레이어 설정
player_width = 40
player_height = 40
player_x = SCREEN_WIDTH // 2 - player_width // 2
player_y = SCREEN_HEIGHT - player_height - 20
player_speed = 5
# 게임 루프
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_w]:
player_y -= player_speed
if keys[pygame.K_s]:
player_y += player_speed
if keys[pygame.K_a]:
player_x -= player_speed
if keys[pygame.K_d]:
player_x += player_speed
# 화면 밖 제한
if player_x < 0:
player_x = 0
if player_x > SCREEN_WIDTH - player_width:
player_x = SCREEN_WIDTH - player_width
if player_y < 0:
player_y = 0
if player_y > SCREEN_HEIGHT - player_height:
player_y = SCREEN_HEIGHT - player_height
# 화면 그리기
screen.fill((0, 0, 0))
pygame.draw.rect(
screen,
(0, 200, 255),
(player_x, player_y, player_width, player_height)
)
pygame.display.update()
clock.tick(FPS)
pygame.quit()
sys.exit()
728x90
'⚙️ Python > 🎮 Pygame 실전' 카테고리의 다른 글
| [Pygame] ✈️ 전투기 슈팅 게임 만들기 4강 | 적 전투기 생성 및 움직임 구현 (0) | 2026.01.14 |
|---|---|
| [Pygame] ✈️ 전투기 슈팅 게임 만들기 3강 | 스페이스바로 총알 발사하기 (0) | 2026.01.13 |
| [Pygame] ✈️ 전투기 슈팅 게임 만들기 1강 | 프로젝트 시작과 세로 슈팅 게임 구조 이해 (0) | 2026.01.11 |
| [Pygame] 🐍 스네이크 게임 만들기 9강 | 게임 오버 화면 + R키로 재시작 (0) | 2026.01.09 |
| [Pygame] 🐍 스네이크 게임 만들기 8강 | 자기 몸 충돌 처리하기 (0) | 2026.01.08 |