유니티를 빨리 배우려면?

유니티 독학 – 이 글은 제가 공부하는 방법, 새로운 것을 배우는 방법, 책이나 강의를 가장 효과적으로 읽거나 듣는 방법을 다루고 있습니다.

개인적으로 오랫동안 수 많은 공부 방법을 시도하면서 제게 가장 효과적이었다고 생각하는 방법을 유니티 학습에 적용한 것입니다. 따라서, 유니티를 배울 때 뿐 아니라 다른 분야의 지식이나 기술을 배우려고 할 때도 이 방법을 사용하실 수 있습니다.

유니티를 빨리 배운다는 개념

그리고 빠르다는 개념에 대해서도 이야기하고자 합니다. 제가 말하는 빠르다는 개념은 책을 끝까지 빨리 읽는다거나 진도를 빨리 나간다는 의미에서의 빠름이 아닙니다. 책이나 강의의 내용을 완전한 자기 것으로 만들어서 혼자 힘으로 활용할 수 있을 정도의 수준에 도달하기까지의 속도를 말합니다.

느린 듯 가장 빠른 유니티 독학 방법

따라서 이 유니티 독학 방법 은 언뜻보기에 다소 느린 방법처럼 보일 수 있습니다. 하지만 단언컨대 대단히 빠른 방법입니다. 배운 내용을 어중간하게가 아니라 자기 것으로 소화해내는 데까지 걸리는 시간을 단축하는데에 초점을 맞추고 있기 때문입니다.

게임 튜토리얼에서 배우자

그럼 방법에 대해 구체적으로 설명해 보겠습니다. 일단 아이디어는 게임 튜토리얼에서 가져 왔습니다. 우리가 새로운 게임, 특히 내용이 방대하고 전에는 해 보지 않았던 장르의 게임을 하려고 한다면, 이를 위한 지식의 습득이 필수적입니다.

캐릭터를 움직이는 방법이나 카메라를 이동시키는 방법, 적을 공격하는 방법, 새로운 스킬을 획득하는 방법, 무기를 제조하거나 강화하는 방법, 플레이어 캐릭터와 적 캐릭터의 상태를 보고 관련된 정보를 얻는 방법, 게임을 저장하거나 불러오는 방법 등 하나의 게임을 하기 위해 배워야 하는 지식의 양은 결코 적지 않습니다.

아마 위처3 게임 플레이 방법에 대한 설명서를 자세하게 작성한다고 하면 그 분량이 초보자 대상의 유니티 입문서보다 많으면 많았지 결코 적지는 않을 것입니다. 그런데 만약 게임을 하기 전에 먼저 책으로 다 공부해야만 한다면 어떻게 될까요? 아마 게임을 배우는 과정에서 아주 많은 사람들이 포기하고 말 것입니다. 게임을 시작도 못할 것입니다.

게임 플레이어는 방대한 지식을 금방 습득한다

하지만 게임 플레이어들은 그런 과정 없이 바로 게임을 시작하고, 그 방대한 지식을 어렵지 않게 습득합니다. 공부한다는 개념도 없습니다. 게임을 하다 보면 자연스럽게 필요한 내용들을 배우고, 기억하고, 몸에 완전히 익히게 됩니다.

이것이 어떻게 가능한 것일까요? 바로 게임 튜토리얼 덕분입니다. 게임 튜토리얼이 워낙 잘 만들어져 있고, 사람이 새로운 것을 배우는 매커니즘을 가장 잘 이해하고 있기 때문에 가능한 것입니다. 그럼 게임 튜토리얼은 어떤 식으로 사람들에게 지식을 전달하고, 훈련시키는 것일까요?

필요할 때 배우고, 배운 것은 바로 활용

바로 필요할 때 방법을 알려주고, 배운 내용을 곧바로 써 보게 한다는 점에 그 비결이 있습니다. 우선 목표를 줍니다. “캐릭터를 저 앞에 있는 나무 앞까지 이동시키세요. 캐릭터를 이동시키려면 마우스 커서를 목표 지면에 대고 클릭합니다. 해 보세요.” 이런 식입니다. 그리고 방금 배운 방법을 써 보게 한 뒤, 바로 칭찬하고 보상을 줍니다.

이제 몬스터를 출현시킨 다음에, 살아남으려면 몬스터를 공격해서 물리치라고 알려 줍니다. 어떻게? 몬스터의 몸에 마우스 커서를 대고 클릭하면 됩니다. 그러면 플레이어는 방금 배운 방법을 또 써 먹습니다. 그리고는 다음 지식을 알려 주기 전에 몬스터를 몇 마리 더 불러냅니다 그리고 플레이어로 하여금 지금까지 배운 내용을 활용해서 이들 몬스터와 충분히 싸워 보도록 합니다.

이런 식으로 필요할 때마다 조금씩 새로운 것을 알려 주고, 그것을 충분히 활용하게 한 뒤 적당한 보상을 줍니다. 이 패턴의 반복입니다. 게임 튜토리얼은 이런 식으로 방대한 지식을 조금씩 확실하게 플레이어에게 알려 줍니다. 그리고 과정에서 반복적인 훈련으로 배운 것은 완전히 플레이어의 것이 됩니다.

책의 독자가 아닌 게임 디자이너가 되자

제가 말씀 드리려고 하는 유니티 독학 방법 은 바로 이 게임 튜토리얼의 원리에서 착안한 것입니다. 그런데 약간 관점을 바꿔서 게임 플레이어의 입장이 아닌, 게임 디자이너의 입장에서 튜토리얼의 원리를 응용하고자 합니다. 왜냐하면 구입한 게임과 달리, 유니티 교재나 강의는 애당초 튜토리얼 형식으로 만들어져 있지 않기 때문입니다.

거기에는 아무런 임무도, 도전과제도, 퀘스트도, 보상도 없습니다. 따라서 게임 튜토리얼이 제공하는 도전과제를 여러분이 스스로 만들어야 합니다. 즉 게임 디자이너이자 플레이어라는 두 가지 입장에서 유니티 공부를 위한 튜토리얼 도전 과제를 디자인하고 직접 플레이 하는 식으로 공부를 하는 것입니다.

책을 읽으면서 도전 과제를 만들자

그럼 구체적인 방법을 설명드리도록 하겠습니다. 눈 앞에 유니티 교재가 있다고 해 보겠습니다. 일단 이 책을 읽기 시작하는데, 책의 내용을 수동적으로 받아들이면서 진행하는 것이 아니라 마치 시험 문제를 출제하는 선생님 또는 책의 내용을 바탕으로 도전 과제를 만들어 내려고 하는 게임 디자이너가 된 듯한 기분으로 책을 읽습니다. 그러면 책을 보는 눈이 달라집니다.

책을 읽어 내려 가면서 이 내용은 중요하니까 문제나 도전 과제로 만들어야겠다는 생각이 드는 부분이 있을 것입니다. 이론적인 성격이 강하면 문제 또는 퀴즈를 만들어서 노트에 적습니다. 응용적인 성격이 강하다면 도전 과제를 생각해서 노트에 적습니다. 예를 들어 이런 식입니다.

  • 문제1 – 프리팹이란 무엇이고 왜 사용하는가?
  • 도전과제1 – 화면에 큐브를 하나 만들고 리지드바디를 붙인 뒤에 프리팹으로 변환해 보시오. 이 프리팹을 이용해서 5개의 인스턴스를 씬에 추가해 보시오

이런 식으로 내가 이것은 꼭 기억해야만 하겠다. 이 방법은 내가 연습을 통해 반드시 몸에 익혀 두어야겠다고 생각되는 내용을 노트에 문제나 도전 과제 형식으로 적는 것입니다. 그리고 그 옆에 이와 관련된 내용이 수록되어 있는 책의 페이지 번호를 적어 둡니다.

지식 수용자가 아닌, 창작자가 되자

이런 식으로 읽어 나가게 되면 단순한 독자의 입장에서 책의 내용을 일방적으로 받아들이는 것이 아니라, 책을 활용해서 무엇인가를 생산해 내는 창작자가 됩니다. 문제를 풀 대상, 그리고 도전 과제를 수행할 사람은 미래의 나입니다. 그런데 그 미래라는 것이 내일이나 모레가 아니라 5분 후의 나, 15분 후의 나입니다.

15분 후의 나를 제대로 훈련시키려면 어떤 문제를 내야 할까? 이 책에서 꼭 기억해야만 할 부분이 어디이지? 유니티를 이용해서 내가 원하는 게임을 만들기 위해 반드시 몸에 익혀야만 할 기술이 무엇이지? 이건 꼭 필요한 내용이니까 도전 과제로 만들어야만 되겠지? 이런 식으로 자신을 훈련시키기 위한 도구들을 창조해 나가는 과정에서 유니티 교재와 같은 책은 그냥 재료나 도구로 변하게 됩니다. 

짧은 주기로 반복하기

이런 식으로 짧으면 5분, 길면 15분에서 20분 정도 책을 읽으면서 문제와 과제를 생각해 낸 뒤 노트에 적습니다. 그리고 나서 약간의 휴식 시간을 가진 뒤(2분에서 5분 정도면 되겠죠), 방금 자신이 만들어 놓은 문제와 도전과제를 풀거나 수행해 봅니다.

분명히 방금 전에 본 내용인데도 바로 답을 하거나 만들어내지는 못할 것입니다. 책을 다시 펼쳐 보든 시행착오를 거쳐 보든지 해서 과제를 해결해 보기 바랍니다, 그 과정을 한번만 거쳐도 중요한 내용을 많이 숙지하게 될 것입니다. 그리고 하루 이틀이 지난 뒤 다시 한번 더 시도해 보면 그 때는 과제를 통해 내가 익히고자 했던 지식이나 기술이 거의 자신의 것이 된 듯한 기분을 느끼게 될 것입니다. 

유니티 교재는 그저 도구일 뿐

제 방법은 이게 다입니다. 거창할 것 하나도 없습니다. 이런 방법의 배경이 되는 학습 이론 같은 것도 있지만 그런 걸 몰라도 됩니다. 그냥 유니티 교재를 이용해서 튜토리얼 도전 과제를 창조해내는 게임 디자이너가 되겠다고만 생각하시기 바랍니다.

타겟 플레이어는 잠시 후의 나, 게임 디자인의 목표는 유니티를 배우기 위해 꼭 필요한 내용을 몸에 익힐 수 있도록 플레이어를 훈련시키는 것. 그렇게만 생각하시기 바랍니다. 참, 도전 과제에 성공했으면 보상도 줘야죠? 자신이 원하는 것을 보상으로 걸어 보세요. 도전 과제를 잘 수행하면 뭔가 스스로에게 보상을 해 주는 겁니다. 아마 동기 부여에 도움이 될 겁니다.

이 방법이 모두에게 효과가 있다고는 말씀드리지 않겠습니다. 저에게 효과적이라고 다른 분들에게도 효과적이라는 법은 없으니까요. 하지만 유니티를 가장 빨리 배우고 싶으시다면, 한번 이 방법을 시도해 보시기 바랍니다. 효과도 있지만 꽤 재미있는 방법입니다. 

더 공부할 자료 - 개발 능력 다양화를 위한 학습의 필요성

유니티 엔진의 대안으로서, 인디 개발자들에게 선풍적인 인기를 끌고 있는 엔진이 바로 고도 엔진입니다. 혹시 고도 엔진을 배워 보려고 하신다면, 다음의 온라인 강의를 체크해 보시기 바랍니다.

초보자를 위한 고도엔진 게임 개발 입문