메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

컬럼/인터뷰

[Unity 베스트셀러] 프로그래밍을 모르는 사람도 쉽게 읽히는 책을 만들기까지 by retrO

한빛미디어

|

2025-02-26

|

by 레트로(이제민)

441

 

프로그래밍을 모르는 사람도 쉽게 읽히는 책을 만들기까지

 

“어떻게 하면 프로그래밍을 모르는 사람들도 술술 읽게 쓸 수 있을까?”
이 책을 쓰면서 매일 스스로에게 던진 질문입니다.

게임 엔진이 등장하면서 게임 개발이 어느 때보다 쉬워졌습니다. 하지만 그만큼 포기하는 사람도 많아졌습니다. 

저 역시 그중 한 명이었습니다. 

디자인을 전공하던 대학 시절, 게임을 만들고 싶다는 열정 하나로 컴퓨터 공학으로 전과 했지만, 현실은 녹록지 않았습니다.

 

  • 게임 엔진이란, 게임 개발을 위한 필수적인 도구와 기능을 제공하는 소프트웨어
  • 그래픽 렌더링, 물리 엔진, 인공지능, 사운드 처리, 네트워크 등 다양한 기능이 포함되어 있어, 개발자는 게임의 콘텐츠 제작에 집중할 수 있음
  • 대표적인 게임 엔진으로는 유니티(Unity), 언리얼 엔진(Unreal Engine), 고도 엔진(Godot) 등이 있음.
  • 유니티는 접근성이 뛰어나 초보자부터 전문가까지 폭넓게 사용되며, 언리얼 엔진은 강력한 그래픽 성능을 제공하여 AAA급 게임 개발에  활용됨. 고도 엔진은 오픈소스로 제공되며 가볍고 직관적인 인터페이스로 인디 개발자들에게 인기를 얻고 있음

 

책을 펼쳐도, 강의를 들어도 이해할 수 없는 내용 투성이였습니다.

대학교재는 이 개념이 왜 필요한지, 어디에 쓰이는지 설명하지 않았습니다. 

학문적 개념을 죽 나열한 백과사전 같았죠.

 

“열심히 공부하면 언젠가 게임을 만들 수 있을 것이다”라는 막연한 믿음은 저에게 아무런 의미가 없었습니다.

저는 당장 눈으로 보고 실행할 수 있는 프로그램을 완성하고 싶었습니다.

 

결국, 프로그래밍 책 한 권을 끝까지 읽지 못한 채 몇 년을 보냈죠. 

강의에서 배운 내용도 필요성을 느끼지 못해 잊어버리기 일쑤였습니다.

무엇보다, 제대로 동작하는 프로그램을 한 번도 완성하지 못했어요. 

 

Learn by doing, not by waiting!

 

그러다 더 이상 미룰 수 없다는 생각이 들었습니다.

유튜브에서 게임 개발 영상을 찾아 그냥 따라 만들기 시작 했습니다. 

처음으로 프로그래밍 언어를 제대로 배우기 시작한 순간이었습니다.

 

아무것도 모르는 상태에서 게임 개발을 하다 보니 당장 필요한 기능이 많았지만, 구현 방법을 몰랐습니다. 

그래서 정해진 학습 순서를 따르는 대신, 필요한 부분을 먼저 익혔습니다. 

 

책에서 필요한 부분만 골라 공부하거나, 코드를 그대로 붙여넣고 나중에 이해하는 방식이었습니다. 

그렇게 익힌 원리는 절대 잊히지 않았습니다.

 

 

이 책에서는 총 4가지 게임을 구현합니다.

 

1. 탄막 슈팅 게임 - 닷지 (구현 난이도 ★☆☆)

사방에서 무수히 날아오는 탄알을 피하며 가능한 한 오랫동안 버티는 게임입니다. 

바닥은 끊임없이 회전하며 탄알은 항상 플레이어를 향해 날아옵니다. 

최고 기록이 저장되기 때문에 게임을 다시 실행해도 최고 기록이 유지됩니다.

 

 

2. 2D 러너 게임 - 유니런(구현 난이도 ★★☆)

랜덤한 높이로 무한 생성되는 바닥을 점프하면서 앞으로 달려가는 러너 게임입니다. 

화면 아래로 떨어지거나 장애물에 닿지 않고 오래 버텨야 합니다.

캐릭터의 상태에 따라 여러 애니메이션이 재생됩니다.

바닥의 생성 간격과 높이, 바닥 위의 장애물 수가 랜덤하므로 세밀한 컨트롤이 중요합니다.

 

 

3. 탑 다운 슈터 게임 - 좀비 서바이버(구현 난이도★★★)

끊임없는 나타나는 좀비들로부터 최대한 오래 살아남는 탑다운 슈터 게임입니다.

플레이어는 기관총으로 사방에서 나타나는 AI 좀비들을 죽여야 합니다.

 

아이템이 랜덤 위치에 생성되므로 플레이어는 한곳에 머무르지 말고 끊임없이 이동해야 합니다. 

후처리 효과를 사용하여 멋진 영상미를 보여줍니다.

 

4. 2인 네트워크 멀티플레이어 게임 – 퐁(구현 난이도 ★★★)

고전 게임 퐁을 네트워크를 사용한 멀티 플레이어 게임으로 제작합니다.
멀티플레이어 게임 개발에 필요한 여러 네트워크 기법을 이해하고 유니티 넷코드를 사용합니다.

 

 

 

주변의 훌륭한 개발자들에게 어떻게 실력을 키웠냐고 물어보면 공통점이 있었습니다.

그들은 ‘완벽한 준비’에 시간을 낭비하지 않았습니다. 

 

초보 시절에도 현재 수준에서 만들 수 있는 프로그램을 먼저 완성했고, 필요한 것은 즉흥적으로 배웠습니다.

저는 입문자에게 방대한 개념을 한꺼번에 익히게 해서는 안 된다고 믿습니다. 

 

모든 것을 배우려다 포기하는 사람이 너무 많기 때문입니다. 창작의 재미를 먼저 깨달아야 학문의 인내심도 기를 수 있습니다.

 

그래서 이 책을 썼습니다.

 

복잡하고 모호한 내용은 줄였습니다.

대신 간결하고 직관적인 예제와 그림을 넣었습니다. 

 

게임을 빠르게 만들고 당장 사용할 수 있는 지식부터 익히도록 구성했습니다. 

새로운 개념은 기존 지식의 한계를 느낄 때 등장하도록 순서를 조정했습니다. 그래서 ‘아하!’ 하고 모든 것이 이해되는 순간을 느낄 수 있을 것입니다.

 

이 책이 코딩과 창작을 망설이던 사람들에게 놀라운 게임 개발의 세계로 뛰어드는 계기가 되길 바랍니다.

 

2025년 2월에 retrO 이제민 

youtube.com/c/jemindev
디스코드 : retr0.io/discord


소문난 명강의_레트로의 유니티 6 게임 프로그래밍 에센스 3판

4가지 게임을 만들면서 배우는 실전 유니티 개발 가이드

 

이전 글 : 안전하고 효율적인 러스트 학습을 위한 도서 추천

다음 글 : 다음 글이 없습니다.

댓글 입력