Python) 파이 게임 틀 만들기 2 (FPS, 타이머, 프레임, 텍스트)

2022. 7. 3. 17:05코딩/- Project: pygame

728x90
반응형

https://sdcoding.tistory.com/60

 

Python) 파이 게임 틀 만들기 (프레임, 배경, 캐릭터, 키보드 설정)

유튜브 동영상을 참조해서 파이 게임 모듈을 갖고 프레임, 배경, 캐릭터, 키보드 설정까지 완료한 코드다. 파이게임 툴의 가장 신기한 것은 좌표값이다. 대부분 왼쪽 아래를 기준으로 (0,0)를 잡

sdcoding.tistory.com

 저번에 쓴 글과 이어지는 내용이다.

 

 

 

enemy 라는 객체를 추가했다.

enemy 객체는 기존 character 의 코드를 그대로 따와서 만들었다. 수정한 값은 position 좌표값 정도다.

또한 충돌 처리를 위해 character와 enemy의 rect 정보를 업데이트한다.

그리고 두 객체가 충돌한다는 가정인 colliderect 함수를 이용해, 이벤트 발생 시 게임이 종료되도록 한다. (running 상태값을 False로 치환하면 간단하다.)

 

또한 FPS 개념을 추가해줬다. # clock = pygame.time.Clock()

FPS는 frame per second의 약자로 말그대로 초당 프레임 수다.

초당 프레임 수가 올라가면 출력이 더욱 부드러워진다.

여기서 dt = clock.tick(60), dt값을 정의해주고

dt값을 캐릭터 포지션 내 변수 값으로 지정해주면서,

어느 프레임에서든지 캐릭터의 속도가 일정해짐을 알 수 있다.

 

 타이머를 표시해주기 위해 timer 변수를 지정해줬는데, python은 기본 출력단위가 ms단위라 보기 편하게 1000을 나눠줌으로서 초단위로 바꿔주었다. 그리고 이를 int값으로 받으면서 정수만 표출되게 하고, 또 이를 str로 받으며 render 함수의 변수로 쓰일 수 있게 하였다. 할 때는 몰랐는데 쓰다보니 복잡해지네.. 이후 타이머가 0이 될 시에 게임 종료 기능을 만들었다.

 

728x90
반응형