청야에몽
청야의 개발 일기
청야에몽
전체 방문자
오늘
어제
  • 분류 전체보기 (156)
    • os (4)
      • Linux (4)
    • Language (32)
      • Python (15)
      • C# (6)
      • Java (11)
    • BaekJoon (92)
      • 단계별로 풀어보기 (81)
      • 누적합 (11)
    • Test (6)
      • 코딩테스트 (6)
      • 42 SEOUL (0)
    • Project (9)
      • 충돌, 피하기 게임 (8)
      • Unreal engine5 CICD 구축 (1)
    • Git & GitHUB (9)
    • Cloud (3)
      • AWS (0)
      • Azure (0)
      • Docker (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • for문
  • 재귀 함수
  • 파이썬
  • pygame
  • java
  • 누적 합
  • c#
  • 중첩for문
  • docker
  • Rebase
  • 백준
  • 리눅스
  • 자료형
  • Reset
  • 연산자
  • Python
  • 누적합
  • Linux
  • git
  • Revert

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
청야에몽

청야의 개발 일기

[Pygame] 배경 설정
Project/충돌, 피하기 게임

[Pygame] 배경 설정

2022. 5. 24. 20:41
728x90

배경 이미지 불러오기

배경 만들기

기본적인 초기 설정을 만들고 실행을 해보았으면 검은색 화면이 떠있을 것입니다. 그래서 저희는 그 화면에 배경을 넣어줄 것입니다.

해당 글에서는 그림판을 사용할 것이며, 그림판 뿐만이 아니라 여러가지 사진들도 사용할 수 있으니 참고바랍니다.

그림판을 실행하여 이미지 란에 존재하는 크기 조정을 눌러줍니다.

이후 나온 창에서 가로세로비율유지를 눌러 체크를 해제해주고 픽셀을 눌러 화면 크기를 설정한 크기와 같은 값(해당 게임은 가로 : 480, 세로 : 640 픽셀을 사용)을 적어준 후 확인을 눌러줍니다.

만들어진 그림판에 색상을 입힐건데 도구에 있는 물통을 눌러주고 원하는 색상(해당 블로그에서는 파랑색을 사용)을 골라준 후 그림판의 색을 채워줍니다.

완성된 그림판을 코드가 존재하는 파일에 저장해주면 배경을 만들어주는건 끝납니다.

 

배경 불러오기

배경을 불러오는 방식으로는 배경이 저장되어 있는 저장매체의 주소를 불러오는 형식으로 이루어집니다.

background = pygame.image.load("D:\\Study\\PythonWorkspace\\game\\background.png")
# \\ 말고 / 로도 가능

pygame.image.load 를 사용하여 ( ) 안에 존재하는 주소의 이미지를 찾아 불러오며 그것을 background 변수에 저장시킵니다. 만약 주소를 ( ) 안에 작성할 때 D:\Study\ ( \ = 역슬래시 ) 처럼 작성을하면 탈출문자처리에 의해 오류가 날 수 있으니 주의해야합니다.

해당 코드는 이전 글에 만들어둔 화면 타이틀 설정 바로 밑에 적어두도록 하겠습니다.

 

배경을 불러와 그것을 변수로 만들어주었다면 이제 게임이 시작될때 배경이 적용되도록 해주어야합니다.

만들어둔 이벤트 루프 while 문 내부의 맨 밑부분부터 해당 코드를 작성하겠습니다.

screen.blit(background, (0, 0)) # 배경 그리기
pygame.display.update() # 게임화면을 다시 그리기

screen.blit 을 이용하여 background 변수가 어디서부터 나타날지 정해주고 그것을 그려줍니다. 0, 0 즉 게임의 시작부분부터 만들어지게 설정을 해줍니다.

screen.blit(background, (0, 0)) 을 작성하고 디버깅을 해주어도 게임화면이 나타나지 않을 것입니다. 이는 맨 처음 한 번만 아주 순간적으로만 그려지고 난 후 사라지기 때문입니다.

그렇기 때문에 pygame.display.update() 를 사용하여 지속적으로 업데이트 해주므로써 게임 화면이 계속해서 그려지도록 만들어주어야합니다.

 

배경에 색상을 완전히 만들어주는 코드도 존재합니다.

screen.fill((0, 0, 255)) # RGB 의 값을 가져와서 배경 그리기
pygame.display.update()

순서대로 빨강색, 초록색, 파랑색을 뜯하며 0에 가까울수록 연하고 255에 가까울수록 색이 진하다는걸 뜻합니다.

해당 코드는 빨강색, 초록색은 색이 없게, 파랑색은 색이 가장 진하게 만들어 파랑색으로 화면을 채운다는 코드를 뜻합니다.

728x90
저작자표시 비영리 변경금지 (새창열림)

'Project > 충돌, 피하기 게임' 카테고리의 다른 글

[Pygame] 적 생성하기, 충돌 처리  (0) 2022.05.29
[Pygame] FPS 설정  (0) 2022.05.28
[Pygame] 키보드 이벤트  (0) 2022.05.27
[Pygame] 캐릭터 만들기  (0) 2022.05.26
[Pygame] 파이썬을 이용한 간단한 게임 만들기 위한 초기설정, 환경설정  (0) 2022.05.23
    'Project/충돌, 피하기 게임' 카테고리의 다른 글
    • [Pygame] FPS 설정
    • [Pygame] 키보드 이벤트
    • [Pygame] 캐릭터 만들기
    • [Pygame] 파이썬을 이용한 간단한 게임 만들기 위한 초기설정, 환경설정
    청야에몽
    청야에몽
    개인적으로 학습을 하여 까먹지 않기 위해 올리는 블로그입니다.

    티스토리툴바