d라이브러리









[게임 디자인 씽킹] 스네이크 게임 초스피드로 완성하기

스네이크 게임은 특정 공간에서 뱀을 조작해 아이템을 먹으면 길이가 점점 자라는 게임입니다. 이리저리 움직이던 뱀 머리가 몸통이나 화면의 가장자리와 닿으면 게임이 종료됩니다. 이번 호에서는 스크래치 코드를 이용해 몸통에 닿으면 게임이 끝나는 스네이크 게임을 만들어 보겠습니다.

 

2017년 구글은 창립 19주년을 기념해 뱀을 모티프로 한 스네이크 게임을 공개했습니다. 그리고 2019년에는 만우절을 기념해 구글 지도를 배경으로 스네이크 게임을 할 수 있도록 재구성했죠. 이와 같은 스네이크 게임에서 아이템을 먹을수록 뱀이 길어지는 효과를 간단하게 만드는 방법을 소개합니다.

 

 

1단계 게임 화면 이해하기

 

게임에는 ‘뱀’과 뱀이 먹는 ‘사과’ 오브젝트가 등장합니다. 게임 화면과 규칙은 왼쪽과 같습니다. 뱀은 뱀 머리 오브젝트에 뱀 몸통 오브젝트를 중첩하는 방식으로 이어 붙여서 만듭니다. 뱀 머리 오브젝트에 뱀 몸통 오브젝트의 복제본(클론)을 계속 만들고 일정 시간이 지난 뒤에 지우는 것을 반복하면 뱀이 이동하는 효과를 낼 수 있습니다. 그렇다면 뱀이 사과를 먹었을 때 몸통이 길어지려면 어떻게 해야 할까요?

 

2단계 뱀의 움직임과 사과 생성 정의하기

 

뱀 몸통 클론이 화면에 노출되는 시간을 길게 하면 뱀이 길어지는 효과가 나타납니다. 이를 조정하는 변수가 ‘BodyLifeTime’ 으로 뱀 몸통 클론들이 화면에 나타나는 시간(초)값을 설정합니다. 사과 오브젝트가 뱀 머리 오브젝트와 부딪히면 ‘BodyLifeTime’ 변수가 증가합니다. 이를 통해 추가되는 뱀 몸통 클론은 이전에 붙인 클론보다 화면에 오래 나타납니다. 즉 뱀이 길어지는 효과가 생기는 겁니다. 뱀과 사과 오브젝트 등 스네이크 게임을 위한 스크래치 코드는 다음과 같습니다.

 

 

이번 호에서는 스크래치 코드로 스네이크 게임을 만들었습니다. 뱀 몸통 오브젝트가 화면에 나타나는 시간을 조정해 화면에서 뱀이 길어지는 효과를 생성했습니다. 이 방법 외에도 뱀이 길어지는 효과를 만드는 방법은 다양합니다. 여러분은 뱀이 길어지는 효과를 어떤 방식으로 만들 수 있나요? 우수한 결과물을 올린 분들께 게임 관련 선물을 드립니다. 지금 바로 폴리매스에서 참여하세요!

 

2021년 08월 수학동아 정보

  • 오규환(아주대학교 과학영재교육원 지도교수)
  • 진행

    김진호 기자 기자

🎓️ 진로 추천

  • 컴퓨터공학
  • 소프트웨어공학
  • 게임공학
이 기사를 읽은 분이 본
다른 인기기사는?