1
00:00:00,000 --> 00:00:12,320
반갑습니다.
2
00:00:12,320 --> 00:00:16,840
뱀파이어 서바이벌로 배우는 언리얼 씨플플 강의를 함께 하게 된 조혁진
3
00:00:16,840 --> 00:00:18,959
경사라고 합니다.
4
00:00:18,959 --> 00:00:24,520
오늘은 언리얼 엔진을 실제로 들어가기 앞서 언리얼 엔진으로 저희가 무엇을
5
00:00:24,520 --> 00:00:30,480
할 것인지 그리고 그것을 통해서 무엇을 얻게 될 것인지 라고 하는
6
00:00:30,480 --> 00:00:34,520
것을 이야기를 해보는 시간을 갖도록 하겠습니다.
7
00:00:34,520 --> 00:00:39,200
그래서 본격적인 내용은 들어가지 않기 때문에 여러분들 편안한 마음으로
8
00:00:39,200 --> 00:00:43,439
들어주시면 훨씬 더 좋을 것 같아요 .
9
00:00:43,439 --> 00:00:47,919
그러면 저희가 처음으로 강의의 개요부터 이야기를 해드리도록
10
00:00:47,919 --> 00:00:49,759
할게요.
11
00:00:49,759 --> 00:00:52,200
일단 저희 강의의 목적은요.
12
00:00:52,200 --> 00:00:57,360
언리얼 엔진이라고 한다면 저희가 쉽게 게임 엔진이라고 생각하시는
13
00:00:57,360 --> 00:01:00,160
분들이 많습니다.
14
00:01:00,160 --> 00:01:06,839
하지만 최근에는 영화산업이나 건축산업처럼 다른 산업에서도
15
00:01:06,839 --> 00:01:11,000
언리얼 엔진을 활용하는 경우가 많아졌어요.
16
00:01:11,000 --> 00:01:17,480
그래서 언리얼 엔진의 요소 중에서도 게임 엔진의 요소 게임에서 사용하는
17
00:01:17,480 --> 00:01:22,239
기본 요소들을 여러분들한테 알려드리 도록 할 거고요.
18
00:01:22,239 --> 00:01:28,040
이걸 여러분들이 직접 숙제함으로써 여러분들이 실제로 게임을 만들
19
00:01:28,040 --> 00:01:32,000
때 사용할 수 있도록 해드릴 예정 이고요.
20
00:01:32,000 --> 00:01:35,839
그렇지만 기본 요소를 안다라고 해가지고 그대로 게임에 적용하기
21
00:01:35,839 --> 00:01:38,440
는 어려운 법입니다.
22
00:01:38,440 --> 00:01:44,120
그래서 저희는 뱀파이어 서바이벌 게임을 실제로 모작을 해보도록
23
00:01:44,120 --> 00:01:45,680
할 거예요.
24
00:01:45,680 --> 00:01:50,720
그래서 기본 요소들이 게임으로 들어갔을 때 어떤 식으로 진행될
25
00:01:50,720 --> 00:01:58,160
것인지 라고 하는 것을 알려드리 도록 할 거고 그리고 게임의 알고리즘
26
00:01:58,160 --> 00:02:03,760
논리적인 구성단계는 어떻게 되어 있는지도 함께 알아볼 수 있게끔
27
00:02:03,760 --> 00:02:06,720
도와드릴 예정입니다.
28
00:02:06,720 --> 00:02:13,559
근데 이 게임을 모작할 때 저희가 그냥 사용하는 게 아니라 c++라고
29
00:02:13,559 --> 00:02:17,240
하는 언어를 통해서 만들도록 할 건데요.
30
00:02:17,240 --> 00:02:23,399
이 언어는 실제 게임 개발하는 현업 에서 사용하는 언어이기도 합니다.
31
00:02:23,399 --> 00:02:29,000
그래서 여러분들은 이 강의를 듣고 나서 현업에서 사용하는 언리얼
32
00:02:29,000 --> 00:02:35,320
엔진 개발을 똑같이 참여할 수 있도록 도와드리기도 하는 거예요.
33
00:02:35,320 --> 00:02:41,639
그러면은 저희가 이 강의에서는 도구 두 가지를 사용할 건데요.
34
00:02:41,639 --> 00:02:47,399
언리얼 엔진을 배우는 거다 보니 당연히 언리얼 엔진은 필요합니다.
35
00:02:47,399 --> 00:02:53,320
그리고 동시에 메가 스캔즈 퀵셀 이라고 하는 게 보일 건데요.
36
00:02:53,320 --> 00:02:59,679
저게 무엇이냐 라고 한다면 저희가 퀵셀에서 현실에 있는 사물을 3d
37
00:02:59,679 --> 00:03:03,279
로 스캔을 해놓은 것입니다.
38
00:03:03,279 --> 00:03:09,360
그래서 저희가 언리얼에서 실제 와 같은 사물을 그대로 대입해가지고
39
00:03:09,360 --> 00:03:12,600
저희 게임에 넣어 놓을 수 있게 해놨어요.
40
00:03:12,600 --> 00:03:16,600
그래서 조금 더 사실적인 게임을 만드는데 도움이 되는 도구라고
41
00:03:16,600 --> 00:03:22,759
생각해 주시면 되겠습니다.
42
00:03:22,759 --> 00:03:28,320
그러면은 제일 먼저 언리얼 엔진 이라고 하는 게 무엇인지 라고 하는
43
00:03:28,320 --> 00:03:33,679
것부터 이야기를 해보죠.
44
00:03:33,679 --> 00:03:38,039
언리얼 엔진이라고 한다면 게임 엔진이라고 많이 알고 계신다고
45
00:03:38,160 --> 00:03:42,119
이야기를 해드렸는데 왜 그러느냐.
46
00:03:42,119 --> 00:03:43,639
언리얼 엔진은요.
47
00:03:43,639 --> 00:03:49,320
저희가 주로 트리플 A 게임 퀄리티 높은 게임이라고 하는 걸 만들 때
48
00:03:49,320 --> 00:03:52,639
주로 사용되는 엔진이기도 합니다.
49
00:03:52,639 --> 00:03:57,399
사실적인 그래픽을 표현하는데 굉장히 특화된 엔진이라고 보실
50
00:03:57,399 --> 00:03:59,399
수 있을 거예요.
51
00:03:59,399 --> 00:04:04,399
왼쪽에 보이는 게임은 호그와트 레거시라고 하는 게임입니다.
52
00:04:04,399 --> 00:04:07,000
해리포터 원작의 게임이고요.
53
00:04:07,000 --> 00:04:11,679
그러다 보니까 마법적인 세계관 을 구축하는 데 굉장히 열심히
54
00:04:11,679 --> 00:04:14,679
노력한 게임입니다.
55
00:04:14,679 --> 00:04:21,239
그래서 저희가 사실적인 인물의 표현이나 아니면은 재질의 표현
56
00:04:21,239 --> 00:04:25,959
그리고 이펙트에 대한 표현도 굉장히 중요하다라고 했으니까
57
00:04:25,959 --> 00:04:31,279
언리얼 엔진이라고 하는 걸 통해서 내용을 만들 수밖에 없었어요.
58
00:04:31,279 --> 00:04:35,359
그래서 왼쪽에 보시면 알겠지만 굉장히 사실적인 그래픽을 자랑하는
59
00:04:35,359 --> 00:04:38,519
걸로 보실 수가 있겠고요.
60
00:04:38,519 --> 00:04:43,320
오른쪽에 보이는 게임도 로스타크 라고 하는 게임입니다.
61
00:04:43,320 --> 00:04:48,040
이 게임도 판타지 세계관을 보여 줄 때 조금 더 사실적인 그래픽을
62
00:04:48,040 --> 00:04:50,880
토재로 만들기를 원했어요.
63
00:04:50,880 --> 00:04:56,040
그래서 언리얼 엔진으로 만들었더니 실제로 보시면 알겠지만 굉장히
64
00:04:56,040 --> 00:05:01,679
웅장한 성을 표현하고 있는데 사실적 이기도 하죠.
65
00:05:01,679 --> 00:05:06,279
이렇게 사실적인 걸 표현하려면 다른 엔진보다는 언리얼 엔진으로
66
00:05:06,279 --> 00:05:07,279
만들어야 합니다.
67
00:05:07,279 --> 00:05:14,320
왜냐 c++라고 하는 언어가 다른 언어 보다 실제로 실행할 때 조금
68
00:05:14,320 --> 00:05:19,600
더 빠르기 때문에 그래서 그래픽 을 그리는 데에도 마찬가지로 조금
69
00:05:19,600 --> 00:05:23,160
더 여유롭게 됩니다.
70
00:05:23,160 --> 00:05:28,959
그 덕분에 저희는 이런 사실적인 그래픽을 얻을 수 있다는 것이죠.
71
00:05:28,959 --> 00:05:32,559
그리고 그래픽 뿐만이 아닙니다.
72
00:05:32,559 --> 00:05:38,119
저희가 플레이어 언노운스 배틀그라운드 라고 하는 게임도 마찬가지로 언리얼
73
00:05:38,119 --> 00:05:40,239
로 제작이 되었는데요.
74
00:05:40,239 --> 00:05:46,720
이 게임 같은 경우에는 100명의 플레이어 가 한 곳에 모여서 서로 죽고 죽이는
75
00:05:46,720 --> 00:05:49,760
게임을 하는 것입니다.
76
00:05:49,760 --> 00:05:54,720
그러다 보니까 많은 플레이어들을 그릴 필요가 있었고 그리고 실시간
77
00:05:54,720 --> 00:05:59,920
네트워크도 구현이 되어야 하다 보니까 이것도 마찬가지로 자연스럽게
78
00:05:59,920 --> 00:06:02,959
언리얼 엔진을 채택할 수밖에 없었 어요.
79
00:06:02,959 --> 00:06:08,519
그래서 여러분들이 미래에 조금 더 퀄리티 높은 그리고 좀 더 많은
80
00:06:08,519 --> 00:06:13,279
기능을 요구하는 게임을 만들 때 언리얼 엔진이라고 하는 건 필수
81
00:06:13,279 --> 00:06:19,239
불가견을 적으로 내용을 진행할 수밖에 없다고 하는 것입니다.
82
00:06:19,239 --> 00:06:25,839
그렇지만 언리얼이라고 하는 게 그냥 마냥 좋은 것은 아닙니다.
83
00:06:25,839 --> 00:06:31,480
저희가 일단 기본적으로 에디터를 보기만 해도 바로 손사래를 치시는
84
00:06:31,480 --> 00:06:33,799
분들이 많이 있어요.
85
00:06:33,799 --> 00:06:40,679
언리얼 에디터는 사실 알고 보면 굉장히 쉬운 편이기는 하지만 모르는
86
00:06:40,679 --> 00:06:46,239
사람들이 본다면 한 번에 들어오는 정보가 굉장히 많거든요.
87
00:06:46,239 --> 00:06:51,239
그래서 이것이 일종의 진입장벽 이 되어가지고 언리얼을 시작하지
88
00:06:51,239 --> 00:06:54,880
못하게 만들기도 하고요.
89
00:06:54,880 --> 00:07:02,040
그리고 가장 큰 진입장벽이라고 한다면 언어 그 자체이기도 합니다.
90
00:07:02,040 --> 00:07:08,679
c++ 언어라고 하는 건 컴퓨터 자체를 어느 정도 알고 계셔야 진행할 수
91
00:07:08,679 --> 00:07:10,959
있는 언어거든요.
92
00:07:10,959 --> 00:07:16,600
그러다보니까 저희가 이 강좌를 들으시는 분들도 c++ 언어를 선행
93
00:07:16,600 --> 00:07:19,519
하는 것을 요구하고 있습니다.
94
00:07:19,519 --> 00:07:26,000
그래서 대부분 이제 c++ 언어를 잘 다루시는 분들이기는 하겠지만
95
00:07:26,000 --> 00:07:30,679
그럼에도 불구하고 언리얼에서는 조금 더 어려운 구문을 요구하기도
96
00:07:30,679 --> 00:07:31,679
해요.
97
00:07:31,679 --> 00:07:37,200
언리얼에서 사용하는 구문이 추가 되기 때문입니다.
98
00:07:37,200 --> 00:07:40,600
왼쪽에 보이는 이너머레이터라고 하는 건데요.
99
00:07:40,600 --> 00:07:45,720
이 이너머레이터라고 하는 것은 저희가 그냥 단순히 열거형이라고
100
00:07:45,720 --> 00:07:51,160
알고 계시지만 열거형에 조금 더 추가되어 있는 내용을 보실 수 있을
101
00:07:51,160 --> 00:07:53,440
거예요.
102
00:07:53,440 --> 00:07:59,119
열거형 오른쪽에 u-meta 그래서 디스플레이 네임이라고 해가지고
103
00:07:59,119 --> 00:08:04,200
저희가 실제 언리얼 에디터에서 보여줄 때 필요한 내용도 있고요.
104
00:08:04,200 --> 00:08:08,679
그리고 메타에 들어갈 수 있는 다른 내용들도 있는데 여기에는 표현
105
00:08:08,679 --> 00:08:14,119
이 안들고 있을 뿐 더 많은 내용을 알고 계셔야 된다는 것입니다.
106
00:08:14,119 --> 00:08:19,640
그리고 위쪽에 u-enum이라고 해가지고 이너머레이터를 또 추가할 때 들어가
107
00:08:19,640 --> 00:08:22,679
야 되는 요소들도 또 있고요.
108
00:08:22,679 --> 00:08:25,600
오른쪽은 u-function도 있네요.
109
00:08:25,600 --> 00:08:29,760
u-function에 들어가는 내용도 알고 계셔야 되고 어느 위치에 들어가
110
00:08:29,760 --> 00:08:35,760
야 되는지도 알고 있어야 되고 그리고 언리얼 안쪽에서만 사용되는 오버라이드
111
00:08:35,760 --> 00:08:41,960
요소라든지 아니면 델리게이트 요소라든지 알고 계셔야 되는 부분들이
112
00:08:41,960 --> 00:08:47,320
한두 가지가 아니기 때문에 이미 실풀풀히 알고 계신다고 하시더라도
113
00:08:47,320 --> 00:08:51,359
이 내용을 접하기가 쉽지 않을 수 있습니다.
114
00:08:51,359 --> 00:08:58,080
그래서 저희는 처음 듣는 사람이라고 할지라도 저희가 언리얼에서 게임
115
00:08:58,080 --> 00:09:02,719
을 만들 때 필요한 기본 요소들을 이야기한다고 했으니까 기본 요소
116
00:09:02,719 --> 00:09:10,679
들만 하나씩 하나씩 짚어가면서 확인해드리도록 하겠습니다.
117
00:09:10,679 --> 00:09:16,200
그래서 하나하나씩 짚어서 무엇을 만드느냐 뱀파이어 서바이벌이라고
118
00:09:16,200 --> 00:09:18,880
하는 게임을 만든다고 했죠.
119
00:09:18,880 --> 00:09:24,880
뱀파이어 서바이벌이라고 하는 게임은 저희가 오른쪽에 보이는 화면
120
00:09:24,880 --> 00:09:27,760
처럼 단순한 게임입니다.
121
00:09:27,760 --> 00:09:31,239
이동이라고 하는 것만 지원을 하고 요.
122
00:09:31,239 --> 00:09:36,599
플레이어는 이동을 하면서 자동으로 이뤄지는 공격을 통해서 주변에
123
00:09:36,599 --> 00:09:39,960
몰려오는 몬스터들을 공격을 합니다.
124
00:09:39,960 --> 00:09:45,359
모든 공격은 자동으로 되기 때문에 굉장히 플레이할 때 용이해서 사람들이
125
00:09:45,359 --> 00:09:47,679
굉장히 많이 찾기도 하고요.
126
00:09:47,679 --> 00:09:52,239
위쪽에 보시면 숫자가 있는 걸 보실 수가 있어요.
127
00:09:52,239 --> 00:09:58,080
저 숫자는 지금까지 버틴 초를 나타내고 있습니다.
128
00:09:58,080 --> 00:10:02,679
그래서 저희가 30분을 버티는 게 기본적인 요소인데요.
129
00:10:02,679 --> 00:10:07,119
rpg를 추격해놓은 형태라고 보실 수 있겠습니다.
130
00:10:07,119 --> 00:10:13,760
rpg를 30분 만에 담고 이동하는 것을 대신 몬스터가 다가오는 걸로 표현
131
00:10:13,760 --> 00:10:17,960
해놓는 게임이라고 생각해두시면 되겠어요.
132
00:10:17,960 --> 00:10:22,840
그래서 저희가 공격이라고 하는 것도 자동으로 되고 몬스터가 다가오는
133
00:10:22,840 --> 00:10:29,039
것도 챕터가 넘어가는 거라고 생각하시면 되고 보스가 오는 것도 자동으로
134
00:10:29,039 --> 00:10:30,919
이루어집니다.
135
00:10:30,919 --> 00:10:36,400
그래서 rpg라고 하는 건 스스로 완급 조절을 할 수 있지만 이거는 완급
136
00:10:36,400 --> 00:10:41,960
조절을 게임이 진행하면서 저희가 효율적으로 rpg를 진행을 해야되게
137
00:10:41,960 --> 00:10:47,159
끔 만든 게임이라고 생각해주시면 되겠습니다.
138
00:10:47,159 --> 00:10:52,440
근데 이 게임 같은 경우에는 한 가지 특징이 있는데요.
139
00:10:52,440 --> 00:10:55,679
바로 무기 시스템입니다.
140
00:10:55,679 --> 00:11:01,039
아무래도 이동이라고 하는 것만 플레이하고 공격은 저희가 직접
141
00:11:01,039 --> 00:11:06,880
하는 것이 아니다 보니까 무기는 어떤 것을 구성하느냐라고 하는
142
00:11:06,880 --> 00:11:09,280
게 굉장히 중요한데요.
143
00:11:09,280 --> 00:11:15,960
무기의 조합이라든지 하는 것들을 레벨업을 통해서 얻게 됩니다.
144
00:11:15,960 --> 00:11:20,080
레벨을 통해서 무기를 고르고 그 무기를 조합해가지고 새로운 걸
145
00:11:20,080 --> 00:11:25,760
만들고 그 새로운 걸 통해서 저희가 효율적인 조합을 찾아내서 30분
146
00:11:25,760 --> 00:11:30,000
을 버티는 게 이 게임의 핵심이라고 볼 수 있죠.
147
00:11:30,000 --> 00:11:35,119
그래서 저희도 마찬가지로 이런 것들을 만들어 보도록 할 건데요.
148
00:11:35,119 --> 00:11:41,840
무기를 어떻게 저희의 캐릭터한테 붙이느냐 입니다.
149
00:11:41,840 --> 00:11:45,119
저희가 앞에 보이는 이 캐릭터들은 요.
150
00:11:45,119 --> 00:11:48,919
언리얼의 마네킹이라고 이야기 하는 건데요.
151
00:11:48,960 --> 00:11:53,880
언리얼을 하신다라고 한다면 앞으로 자주 보실 내용입니다.
152
00:11:53,880 --> 00:11:58,960
언리얼에서 제공되는 에셋도 있지만 다른 사람들이 만든 에셋 제작자들이
153
00:11:58,960 --> 00:12:01,599
만든 에셋들도 있죠.
154
00:12:01,599 --> 00:12:05,400
그런 애들도 전부 다 이 마네킹 이라고 하는 걸 기반으로 만들어질
155
00:12:05,400 --> 00:12:06,880
건데요.
156
00:12:06,880 --> 00:12:11,880
그래서 저희는 이 마네킹한테 이동 하는 능력을 부여를 하도록 할
157
00:12:11,880 --> 00:12:13,479
거예요.
158
00:12:13,479 --> 00:12:19,719
그리고 이 이동을 담당하는 컨트롤러 라고 하는 게 있게 될 겁니다.
159
00:12:19,719 --> 00:12:25,559
컨트롤러는 저희가 캐릭터라고 하는 걸 만들었을 때 사실 캐릭터들의
160
00:12:25,559 --> 00:12:30,880
기능은 다 똑같지만 플레이어가 사용을 하느냐 아니면 몬스터가
161
00:12:30,880 --> 00:12:36,520
사용하느냐 아니면 다른 플레이어 가 사용하느냐 라고 하는 거에 따라서
162
00:12:36,520 --> 00:12:39,559
굉장히 달라질 수 있거든요.
163
00:12:39,559 --> 00:12:45,320
그래서 캐릭터를 만드는 것과 컨트롤러 를 만드는 걸 굉장히 열심히 분류를
164
00:12:45,320 --> 00:12:47,400
해놓았습니다.
165
00:12:47,400 --> 00:12:53,239
그래서 저희는 캐릭터의 이동 컨트롤러의 조작이라고 하는 걸 통해서 기본적인
166
00:12:53,239 --> 00:12:58,039
움직임을 이 친구들한테 부여를 해주도록 할 거고요.
167
00:12:58,039 --> 00:13:00,559
그리고 그대로만 끝나면 안 되죠 .
168
00:13:00,559 --> 00:13:05,719
저희 뱀파이어 소바이벌 같은 경우에는 이동이 주축이긴 하지만 저희가
169
00:13:05,719 --> 00:13:10,960
무기가 필요하다라고 했으니까 이 무기를 컴포넌트라고 하는 걸
170
00:13:10,960 --> 00:13:14,200
가지고 달아줄 예정입니다.
171
00:13:14,200 --> 00:13:19,080
유니티를 하셨다라고 한다면 굉장히 익숙할 개념인데요.
172
00:13:19,080 --> 00:13:25,039
컴포넌트라고 하는 것은 저희가 무슨 기능이라고 하는 것 저희는
173
00:13:25,039 --> 00:13:29,679
오브젝트 게임 오브젝트라고 하는 것들은 언리얼에서 액터라고 불러
174
00:13:29,679 --> 00:13:36,559
요 활동하는 요소들에게 추가적인 기능을 넣어준다라고 생각을 해주
175
00:13:36,559 --> 00:13:38,320
시면 되고요.
176
00:13:38,320 --> 00:13:44,039
이것들을 꽂아서 사용한다 같은 느낌으로 보시면 되겠습니다.
177
00:13:44,039 --> 00:13:49,599
그래서 저희는 이 컴포넌트를 만들어서 무기를 제작을 해보도록 할 거
178
00:13:49,599 --> 00:13:50,960
고요.
179
00:13:50,960 --> 00:13:55,640
무기라고 하는 건 굉장히 다양한 내용이 있을 수 있어요.
180
00:13:55,640 --> 00:14:02,159
그래서 저같은 경우에는 무기의 가장 기본적인 요소들만 딱 추려서
181
00:14:02,159 --> 00:14:04,960
가지고 만들어드리도록 할 거고요 .
182
00:14:04,960 --> 00:14:11,400
여러분들이 이 요소를 보고 중간 중간 어 이렇게 만들 수 있겠는데
183
00:14:11,400 --> 00:14:15,359
라고 생각하시는 부분들이 있을 겁니다.
184
00:14:15,359 --> 00:14:22,320
그러면 여러분들만의 무기를 만들어 나가시면서 제가 한 것 외에도 다양한
185
00:14:22,320 --> 00:14:25,159
시도를 한번 해보시는 게 좋아요 .
186
00:14:25,159 --> 00:14:30,599
그래야 여러분들의 실력이 훨씬 더 많이 향상이 될 겁니다.
187
00:14:30,599 --> 00:14:36,719
그래서 저희는 이런 느낌으로 뱀파이어 서바이벌을 만들어 나갈 것이다
188
00:14:36,719 --> 00:14:39,599
라고 이야기를 하는 것이다.
189
00:14:39,599 --> 00:14:45,440
그래서 간략한 설명은 이정도만 해도 괜찮을 것 같습니다.
190
00:14:45,440 --> 00:14:50,599
저희 나머지 내용은 이제 언리얼 엔진 배워다 가면서 확인을 해보도록
191
00:14:50,599 --> 00:14:52,440
할 건데요.
192
00:14:52,440 --> 00:14:58,919
앞으로 여러분들 방금도 말씀드렸 지만 복습하는 것 또는 여러분들이
193
00:14:58,919 --> 00:15:04,760
상상하는 걸 구현하는 것이 제일 중요하다 보니까 이 부분을 항상
194
00:15:04,760 --> 00:15:10,520
염두에 나가시면서 같이 강의 시작 했으면 좋을 것 같습니다.
195
00:15:10,520 --> 00:15:16,919
그러면 1강은 여기서 마치도록 하고 다음 회사 계속 보도록 하겠습니다.
196
00:15:16,919 --> 00:15:17,960
고생하셨습니다.
25 뱀파이어 서바이벌로 배우는 언리얼 C++
강의 개요와 목표
강의: 뱀파이어 서바이벌로 배우는 언리얼 C++
목표 1: 언리얼 엔진의 게임 제작에 필요한 기본 요소 이해
목표 2: C++ 기반으로 실제 게임 모작 프로젝트(뱀파이어 서바이벌) 완성
목표 3: 현업에서 사용하는 언리얼 C++ 개발 흐름에 참여 가능한 수준으로 역량 향상
1강은 이론·소개 위주의 오리엔테이션 성격, 편안하게 듣는 것을 권장
사용 도구와 환경
필수 도구 1: 언리얼 엔진
게임, 영화, 건축 등 다양한 산업에서 활용되는 실시간 엔진
강의에서는 주로 게임 엔진 기능 중심으로 학습
필수 도구 2: 메가스캔즈 퀵셀
현실의 사물을 3D로 스캔한 에셋 라이브러리
사실적인 오브젝트를 게임에 바로 가져와 활용 가능
더 현실적인 그래픽과 환경 구성에 도움
언리얼 엔진의 특징과 장점
주 용도: 퀄리티가 높은 트리플 A 게임 개발에 널리 사용
그래픽 특화
호그와트 레거시, 로스트아크 같은 사실적인 그래픽·이펙트 표현
인물, 재질, 이펙트, 웅장한 배경을 고퀄리티로 구현 가능
성능 측면
언리얼 엔진은 내부적으로 C++을 사용
C++은 실행 속도가 빠르고, 복잡한 그래픽·로직을 효율적으로 처리
대규모 멀티플레이
배틀그라운드처럼 100명 이상 플레이어가 동시에 접속하는 게임 구현 사례
실시간 네트워크, 대규모 플레이어 처리에 강점
결론: 고퀄리티 그래픽·다양한 기능·대규모 게임을 만들고자 할 때 사실상 필수 엔진으로 자리잡음