대결 상대를 정하는 방법에 수학이 있다!
요즘 동생이 푹 빠져 있는 게임은 일명 ‘롤’이라고 불리는 ‘리그 오브 레전드’예요. 정말 하루 종일 롤만 해요. 한때는 수학경시대회에도 나갔을 정도로 수학을 질했는데, 얼마 전 중간고사에서는 뒤에서부터 1~2등을 다투고 있어요. 어쩌면 좋죠?
사실 저도 롤을 진짜 좋아합니다. 그런데 롤은 수학 공식을 이용해 대결 상대를 정해 주는 것으로 유명하지 않나요? 혹시 동생이 수학 공부를 열심히 하려고 롤 게임을 하는 건 아닐까요?
저 수학 공부 안 할 건데요? 게임만 할 거라구요. 근데 진짜 롤에 수학 공식이 쓰여요?
청소년 사이에서 인기 있는 게임을 꼽으라면 1등은 단연 온라인 게임 ‘롤’이다. 롤은 주로 다섯 명씩 한 팀을 이룬 두 팀이 각기 다른 역할과 능력을 가진 챔피언을 소환해, 다양한 전장에서 대결을 펼치는 팀플레이 게임이다. 게임 플레이어는 118명의 영웅 캐릭터(챔피언) 중 한 명을 선택해 게임에 참여하는데,팀원들과 힘을 합쳐 상대방의 넥서스(본부)를 먼저 파괴하면 승리하게 된다.
롤의 특징 중 하나는 리그 시스템이다. 게임 플레이어의 실력에 따라 브론즈, 실버, 골드, 풀래티넘, 다이아몬드, 챌린저 순으로 나눠 놓은 것으로, 챌린저를 제외한 각각의 등급은 다시 5단계로 나뉘어 있다. 등급을 올리기 위해서는 반드시 랭크게임을 치러야 하는데, 여기에 수학이 쓰인다.
랭크게임은 현재 단계에서 100점을 더 획득하면 치를 수 있는 게임으로, 무조건 컴퓨터가 대결 상대를 결정한다. 두 플레이어의 승률이 각각 50또가 되도록 맞춰주어 실력을 공정하게 평가하기 위해서다. 팀 랭크게임에서도 두 팀의 승률이 50 대 50이 되도록 대결 상대를 골라준다.
그렇다면 컴퓨터는 승률이 같은 게임 플레이어를 어떻게 알아낼 수 있을까? 바로 최근 게임 내역을 토대로 ‘MMR’이라고 불리는 매치메이킹 점수(Matchmaking Rating)를 매기기 때문이다.
MMR은 미국의 수학자이자 물리학자인 아르파드 옐로가 고안한 점수체계인 ‘옐로 점수’를 변형한 것이다. 하지만 게임회사는 구체적으로 옐로 점수를 어떻게 변형했는지는 공개하지 않고 있다. 따라서 여기서는 옐로 점수가 무엇인지를 알아보자.
옐로 점수는 체스 실력을 나타내기 위해 고안된 것으로, 상대방에 비해 내 실력이 어느 정도인지를 나타낸다. 기본 원리는 자기보다 점수가 높은 사람과 대결해서 이기면 점수가 많이 오르고, 지면 점수가 조금 떨어지는 것이다. 반대로 자기보다 실력이 낮은 사람과 대결해서 이기면 점수가 조금오르고, 지면 많이 떨어진다.
옐로 점수는 1200점부터 시작한다. 즉 처음 게임에 입문한 사람의 점수는 1200점이 된다. 점수는 왼쪽과 같이 로그함수적으로 증가한다. 로그함수는 처음에는 급격하게 함숫값이 증가하다가 일정 수춘에 이르면 함숫값의 변화가 거의 없어진다. 이 때문에 점수가 올라가면 올라갈수록 점수를 올리기가 힘들어진다.
또 옐로 점수가 몇 점인지에 따라 두 게임 플레이어의 승률을 구할 수 있다. 옐로 점수 공식을 만들 때부터 승률을 구할 수 있도록 설계했기 때문이다. 100점 차이가 나면 64 대 36, 200점 차이가 76 대 24이고, 735점 이상 차이가 나면 점수가 높은 사람이 질 확률은 0이 된다.
그런데 이 런 옐로 점수에는 단점이 있다. 시간이 지나면 평균점수가 너무 높아진다는 것이다. 이 때문에 체스에서는 1200점 이하로 점수가 떨어지면 더 이상 점수를 매기지 않는 방법으로 단점을 극복하고 있다. 사실 롤에서도 2012년까지 옐로 점수를 그대로 사용했었다. 하지만 이런 단점 때문에 현재는 변형해 사용하고 있다.

게임 디자인 게임 규칙 정하기는 수학 증명과 닮았다?!
롤에도 수학이 있다니! 정말 신기해요. 하지만 옐로 점수는 이미 수학자가 개발해 놓은 것이고, 게임 개발자는 그걸 사용만 하면 되는 거잖아요. 결국 제가 머리 싸매고 수학 공부할 필요는 없을 것 같은데….
과연 그럴까요? 게임 디자인부터 게임 개발까지 수학을 모르고선 전문가가 되긴 어렵다구요. 먼저 게임 디자인을 어떻게 하는지부터 자세히 알아봐요.
게임을 개발하기 위해서 가장 먼저 하는 일은 게임 디자인이다. 어떤 게임인지 기획하는 일로, 게임의 모양새와 규칙을 구체적으로 정해 프로그래머가 실제 게임으로 구현 가능하도록 체계화 하는 작업이다.
게임 디자인에서 가장 중요한 작업 중 하나는 게임 규칙 정하기다. 일반적으로 게임의 주인공인 캐릭터들의 관계를 통해서 게임의 규칙을 만드는데, 규칙에는 논리적으로 모순이 없어야한다. 여기서는 개와고양이, 생쥐, 치즈를 주인공으로 직접 게임을 디자인해 보자.
먼저 캐릭터들 간의 어떤 관계가 있는지 정해야 한다. 그런데 이 네 개의 캐릭터 간에는 우리가 이미 알고 있는 관계가 있다. 바로 서로 쫓고 쫓기는 관계라는 것이다. 쥐는 좋아하는 치즈를 먹기 위해 치즈가 있는 곳으로 가고, 고양이는 생쥐를 잡아먹기 위해 생쥐의 뒤를 쫓는다. 개는 앙숙인 고양이가 생쥐를 잡지 못하도록 방해하기 위해 고양이를 추격한다.
이제 게임의 규칙을 도출해 보자. 그런데 처음부터 규칙을 정하려고 하면 막막하기만 하다. 따라서 몇 가지 원칙을 세운 뒤 여기에서 벗어나지 않는 세부 규칙을 정한다. 여기서는 ‘서로 쫓아다니지 못하도록 배치하자’라는 원칙을 세우자. 그러면 다음과 같은 규칙을 생각할 수 있다.
❶ 개와 고양이는 서로 옆에 있으면 안 된다.
❷ 고양이와 생쥐는 서로 옆에 있으면 안 된다.
❸ 생쥐와 치즈는 서로 옆에 있으면 안 된다.
이를 실제 게임으로 구현하기 위해서는 동물들을 가둘 공간이 필요하다. 따라서 8개의 칸으로 나눠진 우리를 만든다. 그리고 개 3마리, 고양이 2마리, 생쥐 1마리, 치즈 2개를 터치해서 우리 안에 배치한다.
난이도에 따라 이런 게임판을 60개 정도 만들고, 게임에 집중할 수 있도록 재미있는 이야기까지 만든 다음 게임 이름을 지어 준다. 이 내용을 잘 정리해 문서로 작성하면 게임 디자인이 끝난다. 그리고 스마트폰에서 동작하도록 프로그래밍 하면 모바일 게임이 완성된다.
여기서는 아주 간단한 게임을 디자인해 봤다. 하지만 각각의 캐릭터를 괴물1, 괴물2, 괴물3 등으로 바꾸고 서로의 관계를 게임 디자이너가 정해 주면 복잡한 게임도 만들 수 있다.
게임의 규칙을 정해놓고 보고 나면 별거 아닌 것 같지만, 아무것도 없는 상태에서 규칙을 만들기란 쉬운 일이 아니다. 고도의 논리력을 요구한다는 점에서 규칙 정하기는 수학의 증명과 서로 많이 닮았다.
게임 스토리
메리는 집에서 키우는 개와 고양이들이 서로 싸우는 소리 때문에 너무 시끄러워서 잠을 잘 수가 없어요. 개는 고양이를 쫓아다니고, 또 고양이는 생쥐를 쫓아다녀요 생쥐들은 집 안에 있는 치즈를 찾아 하루 종일 돌아다녀 조용할 때가 없어요. 메리는 개와 고양이, 생쥐, 치즈를 따로 두려고 칸막이를 만들었어요. 메리가 만든 우리에 동물을 넣는 일을 도와 주세요!
게임 개발 1 충돌검사에는 기하학이 필수!
아직도 수학을 공부해야 할지 말지 확신이 없는 것 같은데…. 게임 개발에 필요한 수학을 알면 도움이 될 거예요.
게임 개발에서 가장 많이 수행하는 연산은 충돌검사다. 게임은 캐릭터, 건물, 비행기, 폭탄 등 모든 개체들의 상호작용으로 이루어진다. 즉 건물 안에 폭탄이 설치되면 터지고, 궁사가 몬스터를 향해 활을 쏘면 몬스터는 그 활을 맞고 쓰러진다. 이런 상호작용이 제대로 이뤄졌는지 판단하는 것이 충돌검사다.
재미있는 점은 컴퓨터상의 모든 개체에서 사람 또는 몬스터 모양의 일러스트를 걷어내고 나면 간단한 도형으로 표현돼 있다는 것이다. 즉 2차원 게임이라면 다각형이나 원, 3차원 게임이라면 다면체나 구다. 따라서 충돌검사는 두 도형의 위치 관계를 따지는 수학인 셈이다.
그런데 몬스터를 다각형으로 표현해도 정말 상관없는 걸까? 게임은 어떤 현상을 정확하게 표현하는 시뮬레이션이 아니다. 단지 사람들에게 재미를 주는 놀이 중 하나다. 따라서 계산에 오차가 있어도 문제가 없다. 사람들이 봤을 때 어색하지 않으면 되기 때문에, 어느 정도의 오차를 허용하고 컴퓨터가 쉽고 빠르게 계산할 수 있는 방법을 사용한다.
여기서는2차원 게임의 충돌검사에 대해 자세히 살펴보자.


게임 개발 2 수학적 모델링으로 컴퓨터의 행동을 결정한다!
한 가지 궁금한 것이 있어요. 컴퓨터와 사람이 대결하는 게임에서는 컴퓨터가 어떻게 움직일지도 게임 개발자가 미리 다 정해야 하는 거잖아요. 그런데 사람의 행동에 따라 컴퓨터의 행동도 달라져야 하는데, 어떻게 미리 정해 놓을 수 있죠?
한 가지 궁금한 것이 있어요. 컴퓨터와 사람이 대결하는 게임에서는 컴퓨터가 어떻게 움직일지도 게임 개발자가 미리 다 정해야 하는 거잖아요. 그런데 사람의 행동에 따라 컴퓨터의 행동도 달라져야 하는데, 어떻게 미리 정해 놓을 수 있죠?
인터넷상에서 실제로 즐길 수 있는 ‘고양이 가두기 게임’을 통해서 컴퓨터의 행동을 정해 보자. 이 게임은 말 그대로 마우스를 클릭해서 고양이가 움직이지 못하도록 가두는 게임이다. 원하는 곳을 마우스로 클릭하면 녹색 원은 푸른색(장애물)으로 바뀌고, 이곳으로는 더 이상 고양이가 이동할 수 없다. 사람과 고양이가 번갈아가면서 게임하는데, 고양이는 한 번에 한 칸씩 이동한다. 고양이가 원 밖으로 나가면 고양이 가 승리하고, 고양이가 장애물에 둘러싸여 더 이상 움직이지 못하면 사람이 이기게 된다.
그렇다면 프로그래머는 고양이의 움직임을 어떻게 정의했을까? 이때 수학적 모델링이 쓰인다. 수학적 모델링이란, 실생활 문제로 수학적 문제를 바꿔 그 문제의 해를 구한 다음 실제 문제에 맞게 해설하는 것을 일컫는다. 따라서 당면한 문제를 수학 문제로 바꿔야 한다. 그러기 위해서는 문제를 단순화시켜야 하는데, 고양이의 움직임을 가장 단순한 형태로 만들면 다음과 같다.
그렇다면 프로그래머는 고양이의 움직임을 어떻게 정의했을까? 이때 수학적 모델링이 쓰인다. 수학적 모델링이란, 실생활 문제로 수학적 문제를 바꿔 그 문제의 해를 구한 다음 실제 문제에 맞게 해설하는 것을 일컫는다. 따라서 당면한 문제를 수학 문제로 바꿔야 한다. 그러기 위해서는 문제를 단순화시켜야 하는데, 고양이의 움직임을 가장 단순한 형태로 만들면 다음과 같다.
고양이가 위치한 원 주위를 6개의 원이 둘러싸고 있기 때문에, 고양이가 이동할 수 있는 곳은 6개의 원 중 장애물이 없는 원이다. 어느 원으로 이동해야 고양이가 이길 확률이 높을까?
이 문제의 답은 여러 가지다. 여기서는 두 가지를 살펴보자. 먼저 현재 고양이 위치에서 가능한 모든 최단경로를 구해 각 단계마다 최단경로로 이동하는 방법이 있다. 가장 바깥쪽에 위치한 40개의 원 중 장애물이 없는 원은 35개다. 따라서 현 위치에서 35곳으로 가는 최단경로를 모두 구한 뒤, 가장 빨리 나갈 수 있는 경로를 선택해 이동한다. 그리고 또다시 모든 가능한 최단경로를 구해 이동한다.
두 번째는 고양이 입장에서 그 칸을 이동했을 때 얼마나 위험한지를 측정해 가장 위험하지 않은 곳으로 이동하는 방법이다. 상식적으로 생각해 보면 그 칸 주변에 장애물이 많이 있을수록 위험도가 높다. 따라서 장애물이 몇 개나 있는지를 수치로 표현한 뒤, 위험도가 낮은 곳으로 이동하면 된다.
고양이 가두기 게임 위험도 측정하기
이동 가능한 칸을 둘러싸고 있는 6개의 원에서 장애물이 몇 개나 있는지 센다. 이것이 그 칸의 위험도다. 모든 칸의 위험도를 구한 다음 위험도가 가장 낮은 곳으로만 이동한다. 위험도가 0인 곳이 있다면 그곳으로 이동하고, 없다면 1 또는 2 등 위험도가 가장 낮은 곳부터 이동한다.
게임 개발 3 몬스터의 움직임은 유한상태기계로 정의한다!
고양이 가두기 게임보다 복잡한 게임에서는 어떻게 컴퓨터의 행동을 결정하나요? 몬스터가 언제 공격하고 죽는지 궁금하단 말이에요.
앞에서는 고양이 가두기 게임이라는 간단한 게임으로 컴퓨터의 행동을 정해 봤다. 그런데 이보다 복잡한 게임에서는 어떻게 컴퓨터의 행동을 정해 줘야 할까? 이때는 ‘유한상태기계’를 이용한다. 유한상태기계란, 주어진 시간 안에 가질 수 있는 유한개의 상태가 어떻게 변화하는지 나타내는 수학 모델이다. 한 상태에서 다른 상태로 변화하는 것을 ‘전이’라고 하는데, 이런 전이를 유발하는 조건들의 집합으로 정의된다.
아래의 그림은 몬스터의 움직임을 유한상태기계로 나타낸 것이다. 몬스터는 숨어 있다가 게임플레이어가 시야 안에 들어오면 공격 대가를 한다. 여기서 숨기와 공격 대기가 몬스터의 상태다. 숨기에서 공격 대기로 상태가 바뀌기 위해서는 플레이어와의 거리가 몬스터의 시야보다 작아야한다. 따라서 이 게임에서는 이것이 전이 조건이다.
게임 개발 4 라인드로잉 게임 속 곡선은 포물선과 사인곡선?!
사실 저도 즐겨하는 게임이 있거든요. '띠띠빵빵'이라고, 화면에 등장하는 자동차를 원하는 장소에 선을 그려 이동시키는 게임이에요. 이 게임을 개발하는 데에도 수학이 필요한가요?
'띠띠빵빵', '드로우 레이스', '하버 마스터', '플라이트 컨트롤'의 공통점은 바로 손가락으로 그린 선을 따라 자동 차나 배,비행기가 움직이는 라인드로잉 게임이라는 것이다. 이들 게임을 하기 위해선 S자로 구부러진 곡선을 자주 그리게 된다. 그렇다면 게임 개발자는 어떤 방정식을 이용해 게임 플레이어가 그린 곡선을 나타낼까? 이때 가장 많이 사용하는 곡선은 포물선이나 사인곡선이다.
포물선은 한 점 F(p, 0)과 한 직선 x=-p에서 같은 거리에 있는 점의 자취를 일컫는다. 방정식으로 표현하면 y²=4px가 되고, 그래프로 나타내면 p값이 양수냐 음수냐에 따라 왼쪽 또는 오른쪽으로 볼록한 곡선이 그려진다. 또 p의 절댓값이 크면 포물선의 폭이 넓어지고, 작으면 좁아진다.
결국 p값에 따라 포물선의 모양이 결정되기 때문에, p값을 시간에 따라 계속 바뀌도록 설정한 뒤 다음에 올 위치 좌표를 잡아 주면 S자로 구부러진 곡선을 그릴 수 있다.
사인곡선을 사용할 때는 사인함수 y=sinbx에서 주기를 결정하는 b의 값을 시간에 따라 계속 바뀌도록 설정해 주면 된다. b의 값이 커지면 기울기가 큰 사인곡선이 그려지고, b의 값이 작아지면 기울기가 작은 사인곡선이 그려 진다.
포물선과 사인곡선, 둘 중에 어느 곡선을 사용할지 결정하는 것은 순전히 개발자의 몫이다. 둘 다 구현 해 본 다음, 해당 게임에서 조금 더 자연스럽게 구현되는 곡선을 선택해 사용하면 된다.
인터뷰 게임 개발자에게 수학적 사고력은 필수!
게임 개빌자가 꿈인 동생을 위해서 '안녕하시렵니까’ 제작진이 선물을 하나 준비했어요. 어떤 선물인지 궁금히죠? 하하~. 바로 지금 여기에 현직 게임 개발자 분을 모셨습니다. '바람의 나라’와 ‘사신무’의 서버를 개발하신 분이에요. 강진국 팀장님께 게임 개빌자가 되려면 뭘 해야 하는지 직접 물어 보세요.
게임 개발자의 하루 일과는 어떻게 되나요?
출근을 하면 바로 ‘레드마인’이라는 스케줄 프로그램을 들어가요. 어제 무슨 일을 했는지 일이 어느 정도 진척됐는지 이 프로그램에 입력하죠. 그리고 누가 제 일이 끝나기만을 기다리고 있는지, 오늘은 무슨 일을 어디까지 해야 하는지 확인하죠. 레드마인 프로그램은 제 일의 진척도뿐만 아니라 다른 사람들의 일까지 모두 볼 수 있거든요. 이렇게 일정 관리를 10분에서 20분 정도 하고 나면 본격적으로 프로그래밍을 하죠.
현재 ‘페리아 연대기’라는 게임을 개발하고 계신 걸로 알고 있어요. 구체적으로 몇 명의 사람이 얼마 동안 개발하고 계신가요?
총 60명이 만들고 있어요. 그중 게임 디자이너가 10명, 프로그래머가 12명, 그래픽 디자이너가 38명이에요. 2010년부터 개발을 시작했으니까 5년째 일을 하고 있고, 올해 겨울에 선보일 예정이에요.
게임 개발에 수학이 반드시 필요한가요? 물리현상을 쉽게 구현해 주는 게임 개발 소프트웨어인 물리엔진을 이용하면 수학을 몰라도 되지 않나요? 충돌검사도 알아서 해 준다고 하던데요?
아주 극단적으로 말하면, 게임 엔진을 사용하면 게임 프로그래머는 거의 없어도 돼요. 게임을 재밌게 구성할 수 있는 디자이너와 그림을 예쁘게 그릴 수 있는 아티스트 그리고 프로그래머 몇 명만 있으면 되죠. 그런데 이렇게 기존 게임 엔진으로 게임을 만들면 게임이 다 비슷비슷해요. 새로운 게임은 만들 수 없죠.
따라서 자신이 원하는 게임을 제약 없이 만들기 위해서는 게임 엔진 자체를 만들 줄 알아야 해요. 그런데 여기 에는 수학이 많이 쓰이니까 수학공부는 반드시 필요하겠죠? 하하. 페리아 연대기의 경우에도 기존의 게임 엔진을 사용하지 않았어요. 직접 개발했죠.
게임 개발자를 꿈꾸는 학생들에게 한 마디 해 주세요.
솔직하게 말하면 게임을 전혀 안 해도 게임 개발자는 될 수 있어요. 그런데 게임만 하면 게임을 절대 못 만들어요.
사실 게임 개발자에게 가장 필요한 능력은 수학적 사고력 이에요. 실제로 새로운 개발자를 뽑을 때 수학적 사고력이 얼마나 되는지를 평가하죠. 여기서 면접 기출 문제 하나를 소개할까요? 정수 a에서 b까지 더하는 알고리즘을 짜는 거예요. A라는 프로그래머는 a부터 a+1, a+2, a+3, …,b까지 모두 더하라고 프로그램을 짰어요. B라는 프로그래머는 등차수열의 합 공식*을 이용해서 계산했죠.
이때 한 명은 붙고 한 명은 떨어졌어요. 누가 붙었을까요? 바로 B가 붙었어요. 둘 다 답은 맞았지만, A가 만든 알고리즘은 답을 계산하는 데 시간이 오래 걸리거든요. 게임 개발에서 중요한 것은 답을 찾는 게 아니라, 가장 빠르게 답을 구할 수 있는 최적 의 답을 구하는 거예요.
또 3차원 게임에서는 충돌 검사를 할 때 기존의 공식을 그대로 이용하는 경우가 드물어요. 개체의 모양이 제멋대로인데다가 2차원 게임보다 더 정밀해야 하잖아요. 따라서 기존의 공식을 응용해서 사용해야 하는데, 수학적 사고력이 없이 수학 공식만 외워서 답을 내는 사람은 이런 프로그래밍을 할 수 없어요. 수학 공식을 스스로 다 유도할 수 있어야 응용 가능하죠. 정말 게임 개발자가 되고 싶다면 수학적 사고력을 높이는 노력을 하세요!
앞으로 어떤 게임을 개발하고 싶으세요?

부모님이 추천할 수 있는 게임, 부모님과 같이 즐길 수 있는 게임을 만들고 싶어요. 단순히 전투를 하는 게임은 별로예요. 게임 안에서 커뮤니티를 형성하고, 내가 맡은 바 역할에 따라서 한 마을의 법을 정하거나 도시를 계획하는 등 고차원적인 일을 할 수 있는 게임을 만들고 싶어요.
게임 데스크, 게임으로 수학을 배운다?!
게임과 수학의 관계는 여기서 끝이 아니에요. 미국에서는 게임 개발을 통해서 수학을 가르치고 있다고 해요. 자세한 내용을 아주대 미디어학과 오규환 교수님께 들어봐요.
안녕하세요. 오규환교수입니다. 아주대에서 게임 개발자를 양성하고 있지요. 저도 한때는 게임 개발자로 일했습니 다. 한국과학기술원(KAIST) 전산학과에서 박사과정을 마친 후, 넥슨에서 근무하며 ‘바람의 나라’와 ‘어둠의 전설’ 등의 게임이 미국과 일본으로 서비스 되는 것을 총괄 담당했어요. 온라인 액션게임인 ‘엘소드’는 제가 디자인한 게임이고요. 최근에는 학생들을 가르치면서 여러 게임 회사에 게임 개발과 관련한 자문을 해 주고 있어요.
전 게임을 좋아하는 교육자의 한 사람으로서 게임 교육에도 관심이 많아요. 얼마 전부터 미국에서는 게임을 통해 수학과 물리 등을 가르치는 회사가 생겼어요. 그것도 아주 성공적으로요. 바로 ‘게임 데스크’라는 회사예요.
게임 데스크는 미국 캘리포니아 연구팀이 만든 비영리 교육회사로, 청소년들이 좋아하는 게임을 이용해 수학과 물리 등을 가르칠 방법을 연구하고, 그 교수법을 인터넷에 공개하고 있어요. 물론 오프라인 교육도 진행하고 있죠. 취지가 좋은 만큼 빌 게이츠 재단과 삼성물산 등과 같은 여러 기업에서 후원을 하고 있고, 유명 게임 개발자들이 교육용 프로그램을 개발해서 기부하고 있어요.
여기 프로그램 중 눈에 띄는 것은 게임 개발을 통해서 수학을 가르치는 거예요. 중고등학생들이 게임의 규칙을 짜고, 프로그래밍을 하면서 그때 필요한 수학을 배우는 거죠. ‘앵그리 버드’를 이용해서 수학과 물리를 가르치는 프로그램도 있어요. 우리나라에도 이런 프로그램이 있으면 좋겠죠? 앞으로 저도 게임 데스크와 같은 일을 하고 싶어요.
이제 게임 중독자가 돼서는 게임 개발자가 될 수 없는 걸 알겠죠?
게임 데스크처럼 게임 개발을 통해서 수학을 배울 수 있으면 좋겠어요. 그럼 저처럼 게임을 좋아하는 친구들에게 정말 많은 도움이 될 것 같아요.
그래서 준비했습니다. 한국판 게임 데스크! 특별히 〈수학동아〉 독자 여러분만을 초대합니다! 수학 고민 없는 그날까지 ‘안녕하시렵니까’는 여러분을 응원합니다.