이미지 검색을 사용해 보세요
검색창 이전화면 이전화면
최근 검색어
인기 검색어

소득공제 청년패스
LEVELIT 고도 엔진으로 시작하는 첫 게임 개발
GDScript 기초부터 2D, 3D 게임 완성까지 한 권으로 배우는 입문 가이드 반양장
제이펍 2026.08.25.
가격
32,000
10 28,800
YES포인트?
1,600원 (5%)
5만원 이상 구매 시 2천원 추가 적립
결제혜택
카드/간편결제 혜택을 확인하세요
  •  국내배송만 가능
  •  예약상품과 함께 주문 시 제품 출시일에 함께 배송됩니다. (제작사의 사정으로 출시 지연 가능)
  •  문화비소득공제 가능

LEVELIT

이 상품의 태그

상세 이미지

책소개

목차

오프닝 x
튜토리얼 xii
학습 가이드 xviii
로드맵 xx

PART I 게임 개발의 기초

LEVEL 1 게임 개발의 첫걸음 시작하기 3

1.1 고도 엔진 이해하기 4
__1.1.1 게임 엔진이란? 4
__1.1.2 게임 엔진의 역할 5
__1.1.3 엔진 없는 게임 제작 방식 6
__1.1.4 고도 엔진의 특징 7
__1.1.5 오픈소스 프로젝트란? 8
1.2 유니티, 언리얼 엔진과 비교하기 10
__1.2.1 라이선스 및 비용 10
__1.2.2 커뮤니티와 생태계 10
__1.2.3 개발 난이도 12
__1.2.4 자유도 12
__1.2.5 그래픽 품질 13
__1.2.6 플랫폼 지원 13
1.3 개발 흐름 머릿속에 그리기 14
리플레이 16 / QUIZ 16

LEVEL 2 고도 엔진 설치하고 바로 시작하기 17

2.1 고도 엔진 홈페이지 살펴보기 18
__2.1.1 홈페이지 구조 18
__2.1.2 상단 메뉴 구성 19
2.2 고도 엔진 설치하기 22
__2.2.1 버전 선택 기준 23
__2.2.2 다운로드 및 압축 해제 24
2.3 프로젝트 생성하기 26
__2.3.1 고도 엔진 실행 26
__2.3.2 언어 설정 변경 27
__2.3.3 프로젝트 생성 28
리플레이 30 / QUIZ 30

LEVEL 3 고도 엔진 인터페이스 익히기 31

3.1 에디터 UI 한눈에 파악하기 32
3.2 프로젝트 매니저 이해하기 34
__3.2.1 새 프로젝트 생성 35
__3.2.2 기존 프로젝트 가져오기 36
__3.2.3 스캔 기능 활용 37
__3.2.4 프로젝트 필터 및 정렬, 애셋 라이브러리 38
__3.2.5 프로젝트 옵션 버튼 기능 40
3.3 노드와 씬 이해하기 42
__3.3.1 노드란? 42
__3.3.2 부모-자식 관계 42
__3.3.3 씬이란? 43
__3.3.4 노드 및 씬 구조를 사용하는 이유 43
3.4 메뉴 익히기 45
__3.4.1 Scene 46
__3.4.2 Project 47
__3.4.3 Debug 48
__3.4.4 Editor 49
__3.4.5 Help 50
__3.4.6 자주 사용되는 단축키 51
3.5 Scene 탭 활용하기 52
__3.5.1 노드의 계층구조 52
__3.5.2 상단 버튼 기능 53
__3.5.3 루트 노드 53
__3.5.4 씬 인스턴싱 활용 54
3.6 Import 탭 이해하기 55
__3.6.1 Import 설정의 필요성 56
__3.6.2 Import 준비 과정 56
__3.6.3 Import As 기능 57
__3.6.4 Reimport 기능 59
3.7 FileSystem 탭 활용하기 60
__3.7.1 리소스 관리 60
__3.7.2 폴더 및 파일 탐색 61
__3.7.3 Change Split Mode 기능 61
__3.7.4 우클릭 기능 62
3.8 작업 화면 상단 UI 이해하고 활용하기 65
__3.8.1 작업 공간 전환 버튼 65
__3.8.2 탭 바 이해하기 66
__3.8.3 뷰포트 툴 바 익히기 67
3.9 뷰포트 다루기 71
__3.9.1 기본 조작 71
__3.9.2 2D 뷰 조작 72
__3.9.3 3D 기본 조작 72
__3.9.4 FPS 스타일 조작 73
3.10 하단 패널 활용하기 74
__3.10.1 Output 정보 확인 74
__3.10.2 Debugger 활용 75
__3.10.3 Audio 관리 76
__3.10.4 Animation 작업 76
__3.10.5 Shader Editor 활용 77
3.11 플레이 테스트 버튼 사용하기 79
3.12 Inspector, Node, History 탭 활용하기 81
__3.12.1 Inspector 탭 기능 81
__3.12.2 Node 탭 기능 83
__3.12.3 History 탭 기능 84
3.13 Project Settings 다루기 86
__3.13.1 General 설정 86
__3.13.2 Input Map 설정 87
__3.13.3 Localization 설정 87
__3.13.4 Globals 설정 88
__3.13.5 Plugins 설정 89
__3.13.6 Import Defaults 설정 90
3.14 Editor Settings 바꾸기 91
__3.14.1 Interface 설정 91
__3.14.2 Network 설정 92
__3.14.3 FileSystem 설정 92
__3.14.4 Docks 설정 93
__3.14.5 Text Editor 설정 94
__3.14.6 Editors 설정 95
__3.14.7 Run 설정 96
__3.14.8 Input 설정 96
__3.14.9 Export 설정 97
__3.14.10 Shortcuts 설정 98
리플레이 99 / QUIZ 99

LEVEL 4 GDScript 기초 익히기 101

4.1 스크립트 파일 만들기 102
__4.1.1 씬 생성 102
__4.1.2 스크립트 파일 생성 및 노드 연결 104
4.2 Hello world! 출력하기 108
__4.2.1 스크립트 작성 108
__4.2.2 스크립트 노드 부착 109
4.2.3 스크립트 테스트 110
4.3 주석 이해하기 112
__4.3.1 코드 설명 작성 112
__4.3.2 특정 코드 실행 차단 113
4.4 확장 이해하기 114
__4.4.1 확장이란? 114
__4.4.2 사용할 수 있는 확장 기능 탐색 115
4.5 변수 활용하기 117
__4.5.1 변수 선언 117
__4.5.2 변수 타입 118
__4.5.3 변수 사용법 120
__4.5.4 변수 실습 121
4.6 상수 사용하기 123
__4.6.1 상수 선언 123
__4.6.2 상수의 필요성 124
4.7 열거형 활용하기 125
__4.7.1 열거형 선언 125
__4.7.2 열거형 사용법 127
4.8 배열 다루기 128
__4.8.1 배열 생성 128
__4.8.2 배열 사용법 129
4.9 함수 만들기 134
__4.9.1 함수 정의 134
__4.9.2 데이터 전달 135
__4.9.3 반환값 처리 136
__4.9.4 반환 데이터 타입 명시 137
4.10 통과 이해하기 139
__4.10.1 pass 사용법 139
__4.10.2 pass의 필요성 141
4.11 조건문 활용하기 142
__4.11.1 비교 연산자 142
__4.11.2 if 조건문 143
__4.11.3 elif 조건문 144
__4.11.4 else 조건문 145
__4.11.5 match 조건문 146
__4.11.6 조건문 실습 147
4.12 반복문 사용하기 149
__4.12.1 for 반복문 149
__4.12.2 while 반복문 151
__4.12.3 break 제어문 152
__4.12.4 continue 제어문 153
__4.12.5 반복문 실습 154
4.13 클래스 이해하기 156
__4.13.1 클래스의 정의와 구조 156
__4.13.2 클래스 확장 157
__4.13.3 인스턴스 생성 159
__4.13.4 노드와 클래스 관계 160
__4.13.5 클래스의 확장성과 재사용성 160
4.14 객체 지향 프로그래밍 이해하기 162
__4.14.1 클래스와 인스턴스의 관계 162
__4.14.2 상속과 오버라이딩 164
__4.14.3 캡슐화 165
__4.14.4 다형성 166
__4.14.5 상속 구조의 예시 166
__4.14.6 객체 지향 프로그래밍의 장점 168
리플레이 169 / QUIZ 169

PART 2 게임 만들기

LEVEL 5 2D 레이싱 게임 만들기 173

5.1 실습 준비하기 174
__5.1.1 새 프로젝트 생성 175
__5.1.2 자료 다운로드 177
5.2 자동 스크롤이 되는 배경 화면 만들기 181
__5.2.1 폴더 생성 181
__5.2.2 메인 게임 및 배경 화면 씬 생성 182
__5.2.3 배경 씬 노드 구조 생성 186
__5.2.4 렌더링 설정 변경 191
__5.2.5 배경 추가 194
__5.2.6 흐르는배경의 스크립트 작성 197
5.3 자동차 움직이기 201
__5.3.1 자동차 씬 생성 201
__5.3.2 키보드 입력 설정 209
__5.3.3 스크립트로 자동차 이동 처리 211
__5.3.4 도로 밖 이동 제한 213
5.4 컵케이크 획득하기 217
__5.4.1 컵케이크 씬 생성 217
__5.4.2 컵케이크 스크롤 및 충돌 감지 221
__5.4.3 전역변수를 이용한 점수 관리 224
__5.4.4 타이머를 이용한 컵케이크 자동 생성 228
5.5 점수 화면 표시하기 237
__5.5.1 점수 표시 UI 씬 생성 237
__5.5.2 점수 실시간 업데이트 239
__5.5.3 CanvasLayer를 이용한 화면 표시 240
미니 챌린지 244 / 리플레이 245 / QUIZ 245

LEVEL 6 3D 이사 가는 날 만들기 247

6.1 실습 준비하기 248
__6.1.1 새 프로젝트 생성 248
__6.1.2 자료 다운로드 251
6.2 3D 환경 구성하기 252
__6.2.1 게임 해상도 변경 252
__6.2.2 메인 게임 씬 생성 253
__6.2.3 이사할 집 씬 생성 258
6.3 이삿짐 준비하기 269
__6.3.1 가구 씬 생성 269
__6.3.2 그 밖의 가구 씬 생성 274
6.4 게임 플레이 구현하기 277
__6.4.1 키보드 입력 설정 277
__6.4.2 하늘에서 가구 떨어트리기 구현 279
6.5 게임오버 구현하기 284
__6.5.1 점수 저장 284
__6.5.2 게임오버 화면 생성 288
__6.5.3 낙하 감지와 게임오버 화면 표시 301
6.6 게임 시작화면 구현하기 309
__6.6.1 시작화면 구성 309
__6.6.2 게임 시작 버튼 기능 구현 318
미니 챌린지 326 / 리플레이 327 / QUIZ 327

APPENDIX A 웹으로 배포하기 329
A.1 1단계: 프로젝트 빌드하기 330
A.2 2단계: itch.io 프로젝트 생성하기 333
A.3 3단계: 파일 업로드 및 웹 플레이 설정하기 337
A.4 4단계: 테스트 및 공개하기 339

엔딩 342
용어집 343
찾아보기 346

저자 소개 1

코드쉼터

관심작가 알림신청
 
창작의 즐거움에 빠져 '코드쉼터'라는 공간에서 게임 개발과 프로그래밍에 관한 지식 공유 활동을 이어 가고 있다. 고도, 언리얼, 유니티 엔진 등 다양한 게임 엔진과 C++, Zig, 러스트와 같은 프로그래밍 언어 개발, 시스템 동작 원리에 관심이 많으며, 그래픽스, 게임엔진 개발, 게임플레이 스크립팅을 깊이 있게 연구해 왔다. 현재는 유튜브를 통해 게임 개발 노하우와 개발 과정을 공유하고, 사람들에게 편안한 휴식을 제공하는 콘텐츠를 기획하고 있다.

품목정보

발행일
2026년 08월 25일
판형
반양장 ?
쪽수, 무게, 크기
372쪽 | 188*245*15mm
ISBN13
9791124205839

책 속으로

노드는 고도 엔진에서 특정 기능을 담당하는 레고 블록이라고 생각하면 이해하기 쉽습니다. 하나의 노드는 하나의 역할을 수행하며 이런 노드가 여러 개 모이면 복잡한 동작을 수행하는 오브젝트를 구성할 수 있습니다. / 예를 들어, Sprite2D 노드는 이미지를 화면에 표시하고, RigidBody2D 노드는 물리적인 충돌과 중력을 처리합니다. Camera2D 노드는 화면에서 보이는 영역, 즉 시야(view)를 결정합니다. 이처럼 각각의 노드는 하나의 명확한 목적을 가지고 있으며, 이를 조합함으로써 다양한 게임 요소를 만들 수 있습니다.
--- p.42

[Text Editor(텍스트 에디터)]는 스크립트 작성과 편집에 관련된 다양한 옵션을 제공하는 설정 메뉴입니다. 코드 편집기의 외형과 동작 방식을 세부적으로 조정할 수 있으며, 개발자가 선호하는 작업 환경을 구성하는 데 사용됩니다. GDScript를 작성할 때 사용하는 텍스트 편집기 환경을 설정할 수 있으며 글꼴, 테마 색상, 자동 들여쓰기, 코드 자동 완성, 줄 번호 표시 여부 등을 조절해 개발자 취향에 맞는 코딩 환경을 구성할 수 있습니다.
--- p.94

열거형은 초깃값을 별도로 지정하지 않으면 자동으로 0부터 시작해 1씩 증가하는 숫자가 각 항목에 차례대로 할당됩니다. 즉 예시에서 ALLIANCE는 0, ENEMY는 1, UNKNOWN은 2가 됩니다. 만약 특정 항목에 초깃값을 지정하면 그 이후 항목부터는 해당 값을 기준으로 1씩 증가해 자동으로 할당됩니다. 예를 들어, enum {IDLE = 10, RUN, JUMP = 14}라고 작성하면 IDLE은 10, RUN은 11, JUMP는 14가 할당됩니다. 이렇게 초깃값을 지정하면 특정 범위에서 시작하는 숫자를 표현할 때 편리합니다.
--- p.126

씬 폴더 내에 게임 씬 파일이 만들어지고 해당 씬이 자동으로 열립니다. 씬을 만들 때 설정했던 것과 같이 2D 게임을 위한 가장 기본적인 'Node2D' 노드를 최상위(root) 노드로 하는 새로운 씬이 만들어집니다. 'Node2D'는 2D 공간의 위치, 회전, 크기 등 기본 정보를 관리하는 만능 노드로 생각하면 편리합니다.
--- p.183

scroll_offset.y += 스크롤속도 * delta는 실제 움직임을 만드는 핵심 코드입니다. 여기서 delta는 이전 프레임과 현재 프레임 사이의 시간 간격을 의미하는데, 이 값을 곱해 주는 것이 매우 중요합니다. delta를 곱하면 컴퓨터 성능과 관계없이 모든 환경에서 배경이 항상 일정한 속도로 움직이게 만들 수 있기 때문입니다. 예를 들어, 성능이 느린 컴퓨터에서는 fps(프레임/초)가 느려서 func _process(delta) 함수를 호출하는 빈도가 줄어듭니다. 대신 delta의 값이 더 커지므로 한 프레임당 배경이 움직이는 양을 늘려 속도가 일정하게 보이도록 만들 수 있습니다.
--- p.199

그렇다면 점수를 저장할 변수는 어디에 만들어야 할까요? 만약 '컵케이크.gd'에 만들면 컵케이크가 사라질 때 점수도 함께 사라집니다. '자동차.gd'에 만들어도 되지만 점수, 최고 기록, 플레이어 생명 등 게임 전체에서 공유해야 할 데이터가 많아지면 관리가 복잡해집니다. 이때 사용하면 좋은 것이 바로 전역변수(싱글턴)입니다. 프로젝트 어디에서나 단 하나의 이름으로 접근할 수 있는 공용 저장소로 생각하면 편리합니다.

--- pp.224-225

출판사 리뷰

게임 개발의 첫걸음, 고도 엔진으로 첫 게임을 직접 만들어 보세요

이 책은 고도 엔진을 처음 접하는 독자를 위해 설치와 기본 화면부터 GDScript 문법, 2D/3D 게임 제작까지 단계적으로 안내하는 실전 입문서입니다. 기능과 문법을 단순히 나열하는 데 그치지 않고, 배경을 움직이고 자동차를 조작하며 가구를 옮기는 실제 제작 과정을 통해 각 개념이 게임에 어떻게 적용되는지 익힐 수 있도록 구성했습니다. 프로젝트와 씬, 노드의 구조를 이해하고 변수, 함수, 조건문, 반복문 등 프로그래밍의 기초를 익힌 뒤 2D 레이싱 게임과 3D 이사 게임을 완성합니다. 마지막으로, 완성한 게임을 웹에 공개하는 것까지 다루고 있어 게임 개발의 전 과정을 경험할 수 있습니다.

이 책만의 특별한 점

고도 엔진 설치와 프로젝트 생성부터 에디터, 노드, 씬, 파일 시스템 등 게임 제작에 필요한 기본 구조를 익힙니다. 이어서 GDScript 문법을 배우고, 이를 2D와 3D 게임에 직접 적용하며 배운 내용을 실제 기능으로 연결합니다.
1. 게임을 만들며 익히는 GDScript
변수와 상수, 배열, 함수, 조건문, 반복문, 클래스와 객체 지향 프로그래밍까지 게임 개발에 필요한 GDScript 문법을 예제와 함께 배웁니다. 예제를 직접 실행하며 각 문법이 게임에서 어떻게 작동하는지 바로 확인할 수 있습니다.
2. 2D와 3D를 모두 경험하는 프로젝트 실습
2D 레이싱 게임에서는 움직이는 배경과 자동차, 장애물, 충돌, 점수 화면을 구현합니다. 3D 이사 게임에서는 공간과 가구를 구성하고 캐릭터를 움직이며 게임 시작과 종료 화면까지 완성합니다. 서로 다른 두 게임을 제작하며 2D와 3D 개발 방식의 차이를 직접 경험할 수 있습니다.
3. 완성한 게임을 웹으로 공개하는 과정까지
게임을 만드는 데서 끝나지 않습니다. 웹 배포를 위한 프로젝트 설정과 파일 변환, itch.io 프로젝트 생성과 업로드 과정을 따라 하며 직접 만든 게임을 다른 사람과 공유하는 방법까지 익힙니다.

이 책은 누가 읽으면 좋을까요?

게임 개발을 어디서부터 시작해야 할지 막막한 입문자
고도 엔진과 GDScript를 실습으로 익히고 싶은 학습자
2D와 3D 게임 개발을 한 권으로 경험하고 싶은 독자
작더라도 하나의 게임을 끝까지 완성하고 싶은 예비 개발자
유니티나 언리얼 엔진 외의 새로운 게임 엔진을 찾는 개발자

이 책에서 다루는 내용은 무엇인가요?

고도 엔진의 특징을 이해하고 개발 환경 구축하기
인터페이스 조작법과 씬, 노드의 기본 구조 익히기
변수, 함수, 조건문, 반복문 등 GDScript 기초 문법 실습하기
입력, 충돌, 점수 계산 등 게임의 핵심 로직 구현하고 디버깅하기
캐릭터 조작과 충돌, 점수 시스템을 구현해 2D 레이싱 게임 완성하기
3D 공간과 오브젝트를 구성하고 상호작용을 더해 3D 이사 게임 완성하기

리뷰/한줄평0

리뷰

첫번째 리뷰어가 되어주세요.

한줄평

첫번째 한줄평을 남겨주세요.

28,800
1 28,800