아이들이 코딩에 흥미를 느끼기 위한 가장 좋은 방법은 '재미있는 프로젝트'입니다. 그중에서도 Scratch(스크래치)를 활용한 게임 만들기는 창의력과 논리력을 동시에 자극하는 최고의 수업 소재입니다. 특히 '공룡 게임 만들기'는 아이들이 직접 움직이는 캐릭터와 배경을 설정하고, 점프 기능과 장애물 피하기 같은 흥미 요소를 손쉽게 구현해볼 수 있어 교육적으로도 매우 효과적입니다. 이 글에서는 Scratch를 이용해 공룡 게임을 처음부터 끝까지 만들 수 있도록 기본 설정부터 배경 구성, 점프 구현까지 단계별로 소개합니다. 아이들과 함께 따라 하기 쉬운 구조로 설명하며, 수업이나 홈스쿨링에도 활용할 수 있는 유용한 콘텐츠가 될 것입니다.
🎮 1. 공룡 게임 시작하기 – Scratch 기본 조작과 캐릭터 설정
공룡 게임 만들기의 첫걸음은 Scratch의 기본 조작법과 무대 구성에 익숙해지는 것입니다. Scratch는 블록 코딩 방식으로, 프로그래밍 언어를 몰라도 쉽게 코드를 조립하듯 기능을 설정할 수 있는 교육용 툴입니다. 우선 Scratch 홈페이지(scratch.mit.edu)에 접속한 후, 새 프로젝트를 시작해 기본 고양이 캐릭터를 삭제하고, 자신이 원하는 공룡 캐릭터를 선택합니다. 공룡 스프라이트는 'T-Rex' 또는 'Dino'라는 키워드로 쉽게 찾을 수 있으며, 직접 그림을 그려서 사용해도 좋습니다.
배경은 '사막', '초원', '화산 지대' 등 공룡 시대를 연상시키는 환경을 선택하면 게임의 몰입도를 높일 수 있습니다. Scratch에서는 여러 배경 이미지를 제공하므로, '무대 → 배경 선택' 메뉴에서 원하는 장면을 고르면 됩니다. 공룡이 서 있을 땅(지면)은 별도의 스프라이트로 설정하여, 나중에 '충돌 판정'이나 '점프 후 착지'를 처리할 때 유용하게 사용됩니다.
이 단계에서 아이들은 캐릭터와 배경을 마음대로 바꿔보며 창의력을 발휘하게 됩니다. "공룡에게 모자를 씌워볼까?", "날씨를 바꿔보자", "적을 추가해볼까?" 같은 시도를 자연스럽게 하게 되며, 이는 코딩에 대한 부담 없이 '내 게임을 직접 만드는 재미'를 경험하게 하는 핵심적인 부분입니다.
또한 '이벤트' 블록에서 '깃발을 클릭했을 때'라는 시작 블록을 사용하여 모든 게임 코드의 출발점을 통일하면, 이후에 게임을 시작하고 재시작할 때 보다 구조적으로 프로그램을 관리할 수 있습니다. 기초적인 스프라이트 설정과 배경 구성은 아이들에게 코딩의 첫 문을 열어주는 중요한 과정이며, 게임을 만들기 위한 논리적 구조와 사용자 중심 설계를 경험할 수 있게 해줍니다.
🕹️ 2. 공룡을 움직여 보자 – 점프 기능과 중력 구현
공룡 게임의 핵심 재미는 바로 '점프'입니다. 점프를 통해 장애물을 피하거나 아이템을 획득하는 등의 활동이 가능해지므로, 점프 기능을 잘 구현하는 것이 게임의 완성도를 좌우합니다. Scratch에서 점프를 구현하려면 Y좌표 값을 이용한 위아래 움직임과 중력 효과를 적용해야 합니다.
우선 ‘스페이스 키를 눌렀을 때’ 이벤트를 사용하여 점프를 시작하는 조건을 만듭니다. 그다음 ‘반복’ 블록과 ‘y좌표 바꾸기’를 사용해 점프하는 동안 y좌표를 증가시키고, 다시 감소시키는 식으로 점프 효과를 줄 수 있습니다. 단순한 위아래 이동 외에도 점프 중에는 다른 키 입력을 무시하거나, 바닥에 닿기 전에는 추가 점프가 되지 않도록 조건을 걸어야 더 현실적인 동작이 됩니다.
중력을 구현하는 방식도 중요한 부분입니다. 일정한 시간 간격으로 y좌표를 서서히 감소시키는 블록을 설정하여, 캐릭터가 점프 후 자연스럽게 떨어지는 효과를 구현할 수 있습니다. 예를 들어 "y좌표를 -2만큼 바꾸기" 같은 블록을 반복함으로써 낙하가 진행되도록 합니다. 여기에 ‘바닥’ 스프라이트와의 충돌을 감지하여, 바닥에 닿으면 더 이상 내려가지 않도록 설정하는 것도 필요합니다.
이 과정을 통해 아이들은 단순한 키보드 입력과 화면상의 반응 사이의 관계를 이해하게 됩니다. 무엇보다 중요한 점은, 실제 게임처럼 '점프 타이밍'이 정확하게 작동할 때의 성취감을 아이들이 직접 느낄 수 있다는 점입니다. "이제 진짜 게임 같다!"는 반응이 나오는 순간, 아이들은 자신이 만든 프로그램이 어떻게 논리적으로 연결되어 동작하는지를 체득하게 됩니다.
추가로 공룡이 점프 중일 때는 다른 애니메이션 스프라이트로 전환하거나, 점프 사운드를 삽입하는 등의 기능도 넣어보면 몰입도를 높일 수 있습니다. 이렇게 점프 기능 하나만으로도 좌표, 조건문, 반복문 등 핵심적인 코딩 개념들을 자연스럽게 학습할 수 있다는 점에서 교육적인 효과가 큽니다.
🌵 3. 배경과 장애물 움직이기 – 스크롤 효과로 완성도 높이기
공룡이 움직이기만 해서는 게임이 단조롭습니다. 게임의 몰입감을 높이기 위해서는 배경과 장애물이 움직이며 공룡이 계속 앞으로 나아가는 듯한 느낌을 주는 것이 좋습니다. 이런 효과를 주기 위해 '배경 스크롤' 방식과 '장애물 반복 생성' 기법을 활용할 수 있습니다.
스크래치에서는 실제로 무대가 이동하는 것은 불가능하기 때문에, 배경과 장애물을 '공룡 쪽으로' 이동시키는 방식으로 구성해야 합니다. 예를 들어 배경 스프라이트를 왼쪽으로 일정 간격만큼 이동시키고, 화면 밖으로 나가면 다시 오른쪽 끝으로 이동시켜 반복적으로 보여주면 사용자는 공룡이 앞으로 달리는 듯한 착각을 하게 됩니다. 이는 실제 게임 개발에서도 많이 쓰이는 ‘무한 스크롤’ 기법의 기본 구조입니다.
장애물 역시 스프라이트로 만들고, 일정 시간 간격마다 등장하도록 설정합니다. "1초마다 장애물 생성", "x좌표 -10씩 이동", "공룡과 닿으면 게임 종료" 같은 로직을 통해 점점 난이도가 높아지는 게임을 만들 수 있습니다. 또한, 공룡이 장애물과 충돌하지 않게 점프 타이밍을 맞춰야 하므로 아이들은 반복해서 실험하고 학습하게 됩니다.
스크롤 배경과 장애물 이동을 구현하면서 아이들은 변수, 반복문, 조건문, 충돌 판정 등 다양한 코딩 개념을 실제로 적용해보게 됩니다. 무엇보다 '내가 만든 게임이 점점 더 진짜 게임처럼 보인다'는 성취감은 아이들에게 강한 동기부여를 제공해줍니다.
추가로 ‘점수 시스템’을 만들거나 ‘배경음악’, ‘속도 증가’, ‘아이템 획득’ 기능 등을 확장하면 완성도 높은 미니 게임으로 발전시킬 수 있으며, 수업의 깊이도 다양하게 조절할 수 있습니다. 이를 통해 아이들은 ‘단순한 코딩’이 아닌 ‘프로젝트 완성의 흐름’을 배우게 되며, 문제 해결 능력과 창의적 사고력을 자연스럽게 키워나가게 됩니다.
🧾 결론: 아이들이 좋아하는 게임으로 배우는 진짜 코딩
‘나만의 공룡 게임 만들기’는 Scratch를 처음 접하는 아이들에게 매우 이상적인 입문 프로젝트입니다. 캐릭터를 설정하고, 점프 동작을 구현하고, 장애물을 피하는 게임 흐름을 스스로 만들어보면서 아이들은 논리적 사고력과 창의력을 동시에 훈련하게 됩니다.
무엇보다 아이들에게는 '내가 만든 것'에 대한 자부심이 매우 크며, 직접 만든 게임을 친구에게 보여주고 공유하는 과정에서 학습이 더 강화됩니다. 단순한 지식 전달을 넘어, 실습 기반의 프로젝트 수업은 아이들에게 큰 동기와 성취감을 안겨줍니다.
코딩은 아이들에게 미래의 도구이자 언어입니다. 그 시작이 반드시 어렵고 복잡할 필요는 없습니다. 즐겁고 창의적인 Scratch 프로젝트 하나면 충분합니다. ‘공룡 게임’이라는 익숙하고 흥미로운 주제를 통해, 아이들은 재미있게 놀면서도 본격적인 프로그래밍 사고를 키워나갈 수 있습니다.
아이들이 즐겁게 배우는 그 순간, 코딩은 더 이상 지루한 기술이 아니라 세상을 바꾸는 도구가 될 수 있습니다. 오늘, 한 줄의 블록으로 시작해 보시길 바랍니다. 감사합니다.