PYCON 2017 영코더
    • 01
      시작하기
    • PYCON YOUNG CODER
      목차
      왜 프로그래밍을 배워야 할까?
      프로그래밍이란?
      라면 끓이기
      알고리즘
      거북이에게 명령내리기
    • 02
      파이썬 - 수학
    • 더하기, 빼기
      곱하기, 나누기
      산수 계산해보기
      소수점
      크거나 작거나
      비교연산자
    • 03
      파이썬 - 문자
    • 따옴표
      문자열 더하기
      인덱스
      문자열
    • 04
      파이썬 - 변수
    • 저장하기
      연산하기
      변수이용하기
      출력하기
      비교하기
      변수이용하기2
    • 05
      파이썬 - 입력
    • 입력받기
      입력 받아보기
    • 06
      파이썬 - 오류
    • 오타가 있다면
      문자에 숫자를 더하면
      숫자를 0으로 나누면
      없는 인덱스를 출력하면
    • 07
      파이썬 - 데이터형태
    • 데이터의 형태들
      데이터 형태 확인하기
      불리언
      불리언 - and
      불리언 - or
      불리언 - not
      불리언 - 정리
      리스트
      리스트 - 인덱스
      리스트
      튜플
    • 08
      파이썬 - 로직
    • 들여 쓰기
      조건문 - if
      조건문 - elif
      조건문 - 이름에 따라
      반복문
    • 09
      파이썬 - 함수
    • 함수란?
      함수 - 정의
      함수 - 정리
      함수 - 정의해보기
      함수 - 출력
    • 10
      파이썬 - 그 밖에
    • 주석
      클래스
      모듈
    • 11
      파이썬 - 컴퓨터앱
    • 컴퓨터앱? GUI?
      화면 구성하기
      이벤트 연결
      필요한 함수
      기능 함수 구현 - 숫자넣기
      기능 함수 구현 - 숫자넣기2
      기능 함수 구현 - 계산하기
      복잡한 계산기
    • 12
      파이썬 - 웹앱
    • 웹앱이란?
      네이버 소스보기
      html만들기
      장고
      부모님께 문자 발송하기
      SMS 발송하기에 대하여
    • 13
      파이썬 - Pygame
    • 화면에 이미지 띄우기
      애니메이션 주기
      이벤트로 이미지 결정하기
      움직여보기
      움직이기와 막는동작 합치기
      자유롭게 수정해보기
      참고 할만한 게임들
    • 14
      마치며
    • Python으로 할수 있는것들
      Reference
    화면에 이미지 띄우기
    배우기
    13 파이썬 - Pygame
    화면에 이미지 띄우기

    Pygame 이란 파이썬에서 게임을 만들 수 있도록 도와주는 프레임워크입니다.

    모듈에서 알아봤듯이 어떤 모듈을 가져오려면 import라는 명령어를 사용하여야 합니다.
    init()은 가져온 pygame 모듈을 사용할 수 있도록 준비하는 과정입니다.
    py
    게임이 작동하려면 화면이 있어야 하겠죠? pygamedisplay는 화면을 조작할 수 있도록 도와줍니다. 
    set_mode 함수는 우리가 사용할 화면의 크기를 지정할 수 있도록 도와줍니다.
    window라는 변수에 게임 화면을 저장해봅시다.
    py

    게임이 지속적으로 진행되려면 프로그램이 종료되지 않고 계속 작동해야 합니다. 그렇기 때문에 우리는 앞서 배웠던 반복문을 사용할 예정입니다.

    우리가 배웠는 반복문은 for 문이었죠? whildfor와 같이 코드를 반복할 수 있게 해줍니다. while 뒤에 있는 조건문에 결과에 따라 반복할 것인가 아닌가를 결정하죠.

    py
    실행 결과를 확인해보세요!
    만약 프로그램이 종료되었다면 while의 반복을 중단 시켜야 합니다. 그렇기 때문에 우리는 is_end라는 변수에 블리언 값을 이용할 것입니다.
    py
    pygameevent에는 사용자가 어떤 키를 눌렀는지, 무슨 일을 했는지 알 수 있는 이벤트가 담겨있습니다. get()으로 모든 이벤트를 얻을 수 있죠.
    가져온 이벤트 중 QUIT(그만두다)가 있다면 어떡해야 할까요? is_end의 값을 변경해서 프로그램을 종료 시켜주면 되겠죠?
    py
    만약 종료되지 않았다면, 게임 화면을 계속 새롭게 그려주어야 합니다. update()는 화면을 계속 새롭게 만들어 줍니다.
    우리가 만든 게임 화면에 이미지를 넣어보죠.
    평소에 하던 게임을 한번 생각해보세요. 배경화면, 캐릭터, 무기, 적 등등 많은 이미지가 움직이고 상호 작용을 하죠?
    pygameimage는 이렇게 게임에 필요한 이미지들을 관리할 수 있도록 도와줍니다.
    py

    load()는 필요한 이미지를 불러와서 사용할 수 있도록 해줍니다.

    캐릭터의 위치 혹은 상황에 따라 이미지를 계속 새롭게 그려주어야 합니다. 그렇기 때문에 이미지를 그리는 함수를 따로 정의해야 합니다.

    우리가 만들었던 게임 화면(window)에 blit를 이용해 가져온 이미지를 그릴 수 있습니다. 끝에 보이는 50, 50는 그림을 그릴 위치를 뜻합니다.

    py

    캐릭터를 그리기 전에 배경색을 칠해볼까요? fill은 화면에 원하는 색상의 페인트로 배경을 칠해줍니다. 여기에 사용되는 색상을 RGB 값을 이용해야 합니다. 일단 흰색으로 칠해 보죠.

    py
    이제 아까 만들었던 drow_image 함수를 이용해서 캐릭터를 그려줄 차례입니다.
    py
    여기까지 완성된 내용입니다.
    py
    질문하기