스크래치란?
스크래치는 복잡한 코딩 언어 없이도 게임을 제작할 수 있는 쉬운 교육용 프로그래밍 도구입니다. MIT 미디어 연구소에서 개발한 이 시각적 코딩 플랫폼은 블록을 쌓는 단순한 방식으로 게임, 애니메이션, 디지털 아트 등 다채로운 프로젝트를 구현할 수 있게 돕습니다.
특히 게임 제작은 스크래치의 핵심적인 분야로, 논리적, 사고력 능력을 키우는 데 탁월합니다. 이 가이드는 스크래치 게임 제작에 처음 도전하는 초보자분들을 위해 제작되었습니다. 게임의 캐릭터와 배경을 직접 만들고, 캐릭터를 자유롭게 움직이게 하며, 점수 시스템을 만드는 법을 집중적으로 다룹니다. 이 정보를 통해 코딩 초보자도 게임 개발의 기본기를 이해하고, 새로운 게임을 만들 수 있을 것입니다.
스크래치 코딩 기본 개념
이미지 출처: 스크래치 공식 홈페이지
스크래치 코딩은 다양한 블록을 쌓아 올리는 간단한 방식으로 이루어집니다. 이 블록들은 동작, 형태, 소리, 이벤트, 제어, 감지, 연산, 변수 등 여러 기능을 담당하며, 색깔과 모양으로 구분됩니다. 스크래치 프로젝트를 시작할 때 가장 중요한 두 가지는 바로 게임의 배경이 되는 ‘무대’와 그 속의 주인공인 ‘스프라이트’입니다. 무대는 게임의 배경이 되는 공간이고, 스프라이트는 게임 속 캐릭터나 물건을 의미합니다. 성공적인 게임을 만들기 위해선 이 두 가지 요소를 어떻게 활용할지 먼저 파악하는 것이 좋습니다. 이에 대해 더 자세하게 알아보겠습니다.
스프라이트 추가 및 편집
이미지 출처: 스크래치 공식 홈페이지
스크래치 게임 제작의 가장 첫 번째 단계는 게임 속 주인공이나 물체인 스프라이트를 설정하는 것입니다. 스크래치 라이브러리에서 제공하는 다양한 캐릭터를 선택하거나, ‘그리기’ 기능을 통해 직접 캐릭터를 제작할 수 있습니다. 또한, ‘업로드’ 기능을 사용해 원하는 이미지를 PNG 파일 형식으로 불러와 맞춤형 캐릭터를 적용할 수 있는 방법이 있습니다.
스프라이트 고르기 탭에서 스프라이트의 다양한 모양을 추가하거나 편집할 수 있으며, 여러 의상을 활용해 캐릭터가 걷거나 점프하는 애니메이션 효과를 아주 쉽게 연출 가능합니다. 예를 들어, 다리 모양이 다른 의상 2개를 준비해 번갈아 표시하면 캐릭터가 걷는 자연스러운 움직임을 구현할 수 있답니다.
무대와 배경 설정
이미지 출처: 스크래치 공식 홈페이지
스크래치 게임의 분위기와 스토리를 결정하는 중요한 요소가 바로 무대와 배경입니다. 스크래치에서는 다양한 테마의 배경을 제공하며, ‘배경 그리기’ 기능을 사용해 직접 배경을 만들거나 이미지를 업로드하여 사용할 수도 있습니다. 예를 들어, 바다를 배경으로 설정하면 해저 탐사 게임을, 숲을 배경으로 설정하면 모험 게임을 만드는 등 게임의 컨셉을 원하는 대로 정할 수 있습니다. 또한 배경은 게임의 난이도나 특정 스테이지 전환을 나타내는 용도로도 활용될 수 있습니다. 이러한 설정은 게임의 생동감과 몰입감을 한층 높여줍니다.
스크래치 게임 캐릭터 움직임 구현
이미지 출처: 스크래치 공식 홈페이지
스크래치 게임 캐릭터의 움직임은 스크래치 게임의 가장 기본적인 기능입니다. 플레이어의 조작에 따라 캐릭터를 이동시키기 위해서는 이벤트 블록과 동작 블록을 함께 사용해야 합니다. 이 블록들을 활용하면 키보드 방향키를 누르거나 마우스를 클릭하는 등의 이벤트가 발생했을 때 캐릭터가 특정 움직임을 하도록 설정할 수 있습니다. 더 자세하게 설명해 드리겠습니다.
키보드 입력으로 캐릭터 움직이기
이미지 출처: 스크래치 공식 홈페이지
스크래치 게임의 가장 보편적인 캐릭터 움직임 구현 방법은 키보드 입력에 반응하는 것입니다. ‘이벤트’ 카테고리에서 ‘a키를 눌렀을 때’ 블록을 가져와 ‘동작’ 카테고리의 ‘x 또는 y 좌표를 () 만큼 바꾸기’ 블록과 조합합니다. 예를 들어, 왼쪽 화살표 키를 누를 때마다 x좌표를 10만큼 바꾸면 캐릭터가 왼쪽으로 이동합니다. 오른쪽, 위, 아래 방향키에 대해서도 동일한 원리로 코드를 구성하면 상하좌우로 자유롭게 움직이는 캐릭터를 만들 수 있습니다. 1부터 10까지 가깝게 또는 멀게 조절이 가능합니다.
속도와 애니메이션 효과 조절
이미지 출처: 스크래치 공식 홈페이지
스크래치 게임 캐릭터의 이동 속도는 x 또는 y 좌표 변화 값으로 조절할 수 있습니다. ‘x좌표를 10만큼 바꾸기’는 빠른 속도를, ‘x좌표를 3만큼 바꾸기’는 느린 속도를 의미합니다. 1부터 10까지 느리게 혹은 빠르게 사용자가 원하는 속도로 조절이 가능합니다.
또한, ‘형태’ 카테고리에 있는 ‘배경을 ()으로 바꾸기’ 블록을 이동 코드에 추가하면 캐릭터가 움직일 때 배경이 바뀌는 애니메이션 효과를 줄 수 있습니다. 이러한 배경 설정을 통하여 사용자가 게임을 플레이할 때 더욱 더 흥미를 느끼고 몰입할 수 있도록 도와줍니다.
스크래치 게임 점수 계산 기능 추가
이미지 출처: 스크래치 공식 홈페이지
스크래치의 점수 시스템은 사용자에게 동기를 부여하며 게임의 재미를 높이고 도전 의식을 심어주는 아주 핵심적인 요소입니다. 스크래치 프로그램에서는 ‘변수’ 기능을 활용하여 점수 시스템을 아주 쉽게 구현할 수 있습니다. 어떻게 변수를 활용할 수 있는지 더 자세히 알아보겠습니다.
변수 활용 방법
이미지 출처: 스크래치 공식 홈페이지
스크래치 게임 점수 시스템을 만들기 위해서는 먼저 ‘변수’ 카테고리에서 ‘변수 만들기’를 클릭하여 ‘점수’라는 변수를 생성해야 합니다. 이 변수는 게임 화면에 표시되어 현재 점수를 나타내는 역할을 합니다. 게임이 시작될 때마다 점수를 0으로 초기화하기 위해 ‘이벤트’ 카테고리의 ‘()을 클릭했을 때’ 블록과 ‘변수’ 카테고리의 ‘점수를 0으로 정하기’ 블록을 함께 사용해야 합니다.
점수를 올리는 조건은 ‘제어’ 카테고리의 ‘만약 ()이라면’ 블록을 사용하여 원하는 조건으로 설정할 수 있습니다. 예를 들어, 게임 캐릭터가 벽에 닿았을 때 점수를 1점씩 올리려면 ‘만약 ()에 닿았는가?’ 블록을 조건에 넣고, 그 안에 ‘점수를 1만큼 바꾸기’ 블록을 추가하면 됩니다. 이 코드를 ‘계속 반복하기’ 블록 안에 넣으면 캐릭터가 벽에 닿을 때마다 점수가 자동으로 올라가는 기능이 완성됩니다. 사용자가 원하는 다른 조건으로 다른 점수를 부여할 수 있습니다.
마무리
스크래치 게임 만들기는 경험이 전혀 없는 초보자도 누구나 도전할 수 있습니다. 공식 홈페이지에서 한국어 지원은 물론 튜토리얼도 제공되어 쉽게 따라할 수 있습니다. 단순히 게임을 플레이하는 것이 아니라 게임을 어떻게 만드는지 직접 체험하고 코딩의 논리를 이해하는 경험이 될 것입니다. 이 내용을 바탕으로 멋진 스크래치 게임을 제작하시길 바랍니다.

