ADVERTISEMENT

[커버스토리] 내가 만든 게임으로 아빠와 대결…시간 가는 줄 몰랐죠

온라인 중앙일보

입력

업데이트

소중 독자 김진호군이 아빠와 함께 컴퓨터에 프로그래밍 언어를 입력하고 있다. 코딩을 통해 게임의 환경을 자유롭게 조절할 수 있다.

손을 움직여 센서를 작동시키자 컴퓨터 화면 속 앵무새가 꿀벌을 쫓아 신나게 날아다닙니다. 미리 입력된 프로그램 언어에 따라 사람의 동작을 인식하는 게임이랍니다. 게임 이름이요? 아직 없어요. 우리가 직접 만든 게임이니까요. 프로그램을 만드는 과정인 ‘코딩(Coding)’을 통해 탄생한 나만의 게임에 아빠도 푹 빠졌습니다. 소중은 아빠·아이로 구성된 5쌍의 독자와 함께 코딩으로 게임을 만드는 법에 대해 알아봤습니다. 누구나 만들 수 있도록 제작 과정 동영상이 담긴 QR코드도 준비했으니 여러분도 도전해보세요.

코딩에 대해 설명하는 송영광 대디스랩 대표.

지난달 30일, 경기도 판교에 소중 독자들이 코딩을 배우기 위해 모였다. 모두 아빠와 함께였다. 송영광(40) 대디스랩 대표가 잘 정리된 컴퓨터들 사이에서 독자들을 반겼다. 대디스랩(www.daddyslab.com)은 아빠와 함께 코딩을 배우는 ‘아빠의 공작소’다. 직접 프로그래밍 과정을 거쳐 게임을 만드는 곳이다.

우리 주변은 소프트웨어(SW)로 가득하다. 전기밥솥에는 아침밥을 예약해 취사하는 프로그램이 있고 매일 들여다보는 스마트폰 역시 SW 프로그램의 집합체다. SW가 지배하는 세상이라 해도 과언이 아니다. SW를 통제하고 컴퓨터와 대화를 하려면 특정한 언어를 알아야 한다. 미국 사람과 대화하려면 영어를 써야 하는 것처럼 말이다. 컴퓨터가 이해할 수 있는 말은 프로그래밍 언어다.

하지만 이를 배우는 것은 간단한 일이 아니다. C, 자바, C++, 파이썬처럼 이름만 들어도 머리가 아파오는 다양한 언어들은 변수와 상수·함수·연산 등의 복잡한 원리를 담고 있다. 어린이들이 다루기에는 난해하다. 그래서 탄생한 것이 ‘스크래치’다. 프로그래밍 언어를 모르는 초보자들도 간편한 방법으로 언어를 입력하며 원하는 기능을 조합할 수 있다.

“프로그래밍은 컴퓨터가 이해할 수 있는 언어로 글을 쓰는 것과 같아요. 이를 코딩이라 합니다. 오늘은 스크래치로 집에서 아빠와 함께 즐길 수 있는 간단한 게임을 만들겠습니다.”

스크래치는 MIT가 장난감 회사인 레고의 후원으로 만든 프로그램으로, 레고블록을 끼워 맞추듯 자신의 생각을 프로그래밍 언어로 연결해 논리적인 사고력을 키울 수 있다. 사이트에서 프로그램을 내려 받으면 누구나 사용할 수 있으며, 전 세계 어린이들이 스크래치로 만든 프로그램 600만 개도 공개돼 있다.

본격적인 코딩을 시작하기에 앞서 ‘게임튜브’라는 장비를 컴퓨터에 연결해야 한다. 게임튜브는 송 대표가 만든 장비로, 바람센서·근접센서·가속도센서가 부착된 일종의 게임 조작 도구다. 직접 몸을 움직여 게임을 제어할 수 있는 게 특징이다. “게임튜브로 여러분이 만든 게임을 조작할 수 있어요. 이제 본격적으로 게임을 만들어보겠습니다. 앵무새로 꿀벌을 잡는 게임이에요.”

스크래치로 프로그래밍 언어 입력해 게임 완성

스크래치의 초기 화면을 실행하자 회색의 빈 공간이 나타났다. 오른쪽에는 레고블록 형태의 명령어 모음이, 왼쪽에는 작은 화면이 있다. 우선 앵무새를 만들어야 한다. ‘새로운 스프라이트 만들기’라는 메뉴를 클릭하면 화면에 앵무새·토끼·상어와 같은 동물들의 그림이 생긴다. 이 중 앵무새를 클릭하자 앵무새가 작은 화면 가운데에 자리를 잡는다.

“앵무새가 날 수 있게 하는 명령어를 넣어야 해요.”

1 자신만의 게임을 만들기 위해 코딩에 열중하고 있는 아빠와 아이들. 2 컴퓨터에 게임튜브를 연결하면 사람의 동작을 인식해 게임 속 캐릭터를 움직이게 할 수 있다.

김진호(경기도 예성사관학교 2)군이 화면을 가리키며 말한다. 앵무새를 움직이게 하려면 순차구조(항목 간의 관계를 1차적인 연결로 나타내는 것)를 활용한 프로그래밍 언어를 입력해야 한다. 스크래치를 활용하면 간단한 일이다. 오른쪽의 블록 중 ‘움직이기’와 ‘기다리기’ 블록을 가운데 화면으로 가져와서 날개를 펄럭이는 시간만 설정해 주면 끝난다. 20이라는 거리만큼 움직이게 한 뒤 1초 기다리기라는 설정 값을 넣고 이를 10회 반복하도록 하자 앵무새가 움직이기 시작한다. 여기에 ‘모양 바꾸기’ 블록을 사용하자 날개를 위아래로 힘차게 펄럭이며 날아가는 모습이 보인다.

다음으로 소리를 넣을 차례다. 메뉴 중 소리 항목을 클릭해 원하는 소리를 블록으로 설정해주면 끝이다. 이창주(서울 중암중 3)군은 한 술 더 떠 새가 벽에 닿으면 자동으로 튕겨져 나오도록 하는 프로그래밍 언어를 입력했다. 블록을 클릭하니 새가 작은 화면 속에서 지저귀며 사방으로 튕겨 날아다닌다.

새를 피해 달아나는 꿀벌도 같은 방법으로 프로그래밍 한다. 스프라이트로 꿀벌 모양 그림을 선택하고 소리를 넣은 후 움직이기 블록을 순서대로 쌓아주기만 하면 된다. 마지막으로 배경이 될 그림을 선택하고 ‘동시실행’을 누르면 게임이 완성된다. 사막이나 초원, 숲 속 같은 배경 중에서 이정호(경기도 장촌초 6)군이 선택한 화면은 바다가 펼쳐진 해변이다.

아빠의 역할은 이제부터다. 2명이 함께 즐기는 게임이라 아이가 새를 조종하면 아빠는 꿀벌을 조종한다. 아이들이 게임 만드는 것을 뒤에서 지켜보며 막히는 부분이 있으면 도와주던 아빠들의 눈이 초롱초롱 빛나기 시작한다. 거리센서에 손을 가까이 가져가면 센서값이 변하며 꿀벌이 움직인다. 능숙한 손놀림으로 거리센서의 값을 측정해 추격전을 펼치는 아빠의 모습은 아이와 다를 바가 없다.

“벌이 새를 약 올리는 느낌이에요. 직접 몸을 움직이며 하는 게임이라 더 신나네요.” 이성규(서울 을지초 3)군은 한참 동안 아빠와 게임을 즐기며 얘기했다. 서유현(경기도 가람초 3)군도 아빠를 이기기 위해 열심이다. 가르쳐주지 않았는데도 새가 움직이는 속도를 더 빠르게 코딩해 게임에서 유리한 고지를 점하려는 모습도 보여준다.

처음에는 서로 어색해했던 아빠와 아이들은 게임을 통해 하나가 됐다. 게임을 만들며 코딩의 원리를 배우고, 설정 값에 따라 게임 방식을 얼마든지 바꿀 수 있다는 사실을 깨닫는다. 송 대표는 “앞으로는 코딩의 시대”라며 “남이 만든 게임을 수동적으로 즐기기보다 코딩을 하며 직접 만들어보면 게임 작동 원리를 알 수 있어 더 재미있을 것”이라고 설명했다.

▷여기를 누르시면 크게 보실 수 있습니다

글=김록환 기자 , 사진=장진영·우상조 기자 , 도움말=송영광 대디스랩 대표

ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT