목차
1. 환경설정 & 프레임
2. 배경
3. 캐릭터
강좌는 "나도코딩" 님의 강좌를 보며 공부했습니다.
https://www.youtube.com/watch?v=Dkx8Pl6QKW0&t=1706s
파이썬에 대한 기초를 배워봤으니까
이제 배웠던걸 활용해볼 시간입니다.
1. 환경설정 & 프레임
우선 먼저 게임을 만들어 봅시다.
콘솔창에 pip install pygame 를 타이핑해서 pygame을 설치해줍시다.
게임의 창을 띄어봅시다.
import pygame
pygame.init() # 초기화 (반드시 필요)
# 화면 크기 설정
screen_width = 480 # 가로 크기
screen_height = 640 # 세로 크기
screen = pygame.display.set_mode((screen_width,screen_height))
# 화면 타이틀 설정
pygame.display.set_caption("Nado Game") # 게임 이름
# 이벤트 루프
running = True # 게임이 진행중인가?
while running:
for event in pygame.event.get(): # 어떤 이벤트가 발생하였는가?
if event.type == pygame.QUIT: # 창이 닫히는 이벤트가 발생하였는가?
running = False # 게임이 진행중이 아님
# pygame 종료
pygame.quit()
2. 배경
게임의 배경을 만들어 봅시다.
그림판에서 가로 480 x 세로 640의 크기로 원하는 색깔로 페인트통으로 채워서 만들어줍시다.
만든 배경은 background.png로 저장합니다.
그리고 저장경로는 지금 코딩하고있는 폴더 안에 넣어줍니다.
import pygame
pygame.init() # 초기화 (반드시 필요)
# 화면 크기 설정
screen_width = 480 # 가로 크기
screen_height = 640 # 세로 크기
screen = pygame.display.set_mode((screen_width,screen_height))
# 화면 타이틀 설정
pygame.display.set_caption("Nado Game") # 게임 이름
# 배경 이미지 불러오기
background = pygame.image.load("본인의 해당되는 경로")
# 이벤트 루프
running = True # 게임이 진행중인가?
while running:
for event in pygame.event.get(): # 어떤 이벤트가 발생하였는가?
if event.type == pygame.QUIT: # 창이 닫히는 이벤트가 발생하였는가?
running = False # 게임이 진행중이 아님
# screen.fill((0, 0, 255))
screen.blit(background, (0,0)) # 배경 그리기
pygame.display.update() # 게임 화면을 다시 그리기
# pygame 종료
pygame.quit()
경로를 찾는 방법은
근데 이제 그대로 붙혀넣기를 하게되면
탈출문자 처리 때문에 \(역슬러시)앞에 \(역슬러시)를 한번 더 붙혀줘서 바꿀수도 있고요, \\
아니면 \대신 /(슬래시)로 바꾸셔도 됩니다.
예) C:\Users\이름\바탕 화면\Pyhon\paygame\background.png
C:\\Users\\이름\\바탕 화면\\Pyhon\\paygame\\background.png
C:/Users/이름/바탕 화면/Pyhon/paygame/background.png
3. 캐릭터
배경을 만들었던것과 마찬가지로
캐릭터도 그림판으로 만들어봅시다.
그리고 배경이 있는 경로에 이 character.png 캐릭터파일을 같이 넣어줍시다.
import pygame
pygame.init() # 초기화 (반드시 필요)
# 화면 크기 설정
screen_width = 480 # 가로 크기
screen_height = 640 # 세로 크기
screen = pygame.display.set_mode((screen_width,screen_height))
# 화면 타이틀 설정
pygame.display.set_caption("Nado Game") # 게임 이름
# 배경 이미지 불러오기
background = pygame.image.load("본인의 해당되는 경로")
# 캐릭터(스프라이트) 불러오기
character = pygame.image.load("본인의 해당되는 경로")
character_size = character.get_rect().size # 이미지 크기를 구해옴
character_width = character_size[0]
character_height = character_size[1]
character_x_pos = (screen_width / 2) - (character_width / 2) # 화면 가로의 절반 크기에 해당하는 곳에 위치 (가로)
character_y_pos = screen_height - character_height # 화면 세로 크기 가장 아래에 해당하는 곳에 위치 (세로)
# 이벤트 루프
running = True # 게임이 진행중인가?
while running:
for event in pygame.event.get(): # 어떤 이벤트가 발생하였는가?
if event.type == pygame.QUIT: # 창이 닫히는 이벤트가 발생하였는가?
running = False # 게임이 진행중이 아님
screen.blit(background, (0,0)) # 배경 그리기
screen.blit(character, (character_x_pos, character_y_pos)) # 캐릭터 그리기
pygame.display.update() # 게임 화면을 다시 그리기
# pygame 종료
pygame.quit()
'Python' 카테고리의 다른 글
Python(8) 활용 3 (0) | 2024.11.08 |
---|---|
Python(7) 활용2 (0) | 2024.11.05 |
Python(5) 기초 마무리 (0) | 2024.11.03 |
Python(4) 반복문과 함수 (0) | 2024.11.02 |
Python(3) 문자열 , 자료구조 (0) | 2024.11.01 |