Startik Startik
Guest
홈으로
로그아웃
브라우저에서 비디오를 지원하지 않습니다.
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명 이상 플레이어가 동시에 접속하는 게임 구현 사례
    • 실시간 네트워크, 대규모 플레이어 처리에 강점
  • 결론: 고퀄리티 그래픽·다양한 기능·대규모 게임을 만들고자 할 때 사실상 필수 엔진으로 자리잡음

언리얼·C++의 진입장벽

  • 언리얼 에디터 난이도
    • 처음 보면 창과 정보가 매우 많아 부담을 느끼기 쉬움
    • 실제 동작 원리를 알면 구조는 단순하지만, 처음 접할 때는 진입장벽이 됨
  • C++ 언어 난이도
    • C++은 컴퓨터 동작 원리에 대한 이해를 어느 정도 전제로 하는 언어
    • 강의 수강 전, 기본 C++ 문법을 선행 학습한 것을 요구
  • 언리얼 전용 C++ 문법 요소
    • 일반 C++ 외에 언리얼 특유의 매크로·어트리뷰트 사용
      • \( UENUM, UFUNCTION, UPROPERTY, UMeta \) 등
      • 에디터 표시 이름(DisplayName)과 각종 메타 정보 설정 필요
      • 언리얼 전용 오버라이드, 델리게이트 등도 추가로 이해해야 함
  • 강의 접근 방식
    • 처음 듣는 사람도 따라올 수 있도록 게임 제작에 꼭 필요한 기본 요소만 하나씩 짚어 설명
    • 복잡한 전체 기능보다는, 실전에서 바로 쓰이는 최소 핵심 구문 위주로 학습

뱀파이어 서바이벌 게임 구조

  • 게임 기본 구조
    • 플레이어 입력: 이동만 조작
    • 공격: 자동 공격 시스템 (플레이어 직접 조작 없음)
    • 목표: 몰려오는 몬스터를 처치하며 30분 동안 생존
    • 상단 숫자: 지금까지 버틴 시간(초)
  • 장르적 특징
    • RPG의 핵심을 30분에 압축한 구조
    • 이동 대신 몬스터가 다가오는 속도·패턴으로 난이도와 진행을 표현
    • 보스 등장, 몬스터 물량 증가 등도 자동으로 진행
    • 플레이어는 효율적인 빌드 선택에 집중
  • 무기 시스템
    • 공격이 자동이기 때문에 무기 종류·조합이 게임의 핵심
    • 레벨업 시 주어지는 선택지를 통해 무기를 획득·강화·조합
    • 무기 조합으로 새로운 무기를 만들고, 최적의 빌드를 찾아 30분 생존
  • 강의에서의 구현 범위
    • 이동, 자동 공격, 몬스터 스폰, 생존 시간 관리 등 핵심 알고리즘 구현
    • 무기 획득·조합 로직의 기본 구조 구현

캐릭터·컨트롤러·컴포넌트 설계

  • 언리얼 마네킹
    • 언리얼에서 기본 제공하는 캐릭터 모델
    • 마켓플레이스 에셋 등도 이 마네킹 기준으로 제작되는 경우가 많음
    • 강의에서는 이 마네킹에 움직임과 무기를 부여
  • 캐릭터와 컨트롤러 분리
    • 캐릭터: 이동, 애니메이션 등 기본 동작을 가진 주체
    • 컨트롤러: 누가 어떻게 조작하는지를 정의
      • 플레이어 컨트롤러: 사람 플레이어 입력 처리
      • AI/몬스터 컨트롤러: 적 캐릭터의 자동 행동 처리
      • 멀티플레이어 컨트롤러: 다른 유저 조작 처리
    • 강의에서는 마네킹에 이동을 담당하는 컨트롤러를 연결해 기본 조작 구현
  • 컴포넌트 기반 무기 설계
    • 유니티의 컴포넌트 개념과 유사
    • 언리얼에서 액터는 게임 오브젝트에 해당하며, 컴포넌트를 붙여 기능을 확장
    • 무기 = 캐릭터에 붙는 하나의 컴포넌트로 설계
      • 공격 주기, 범위, 투사체 생성 등 무기 기능을 컴포넌트로 구현
      • 필요한 컴포넌트를 꽂아 넣는 식으로 다양한 무기 조합 가능
  • 무기 구현 전략
    • 여러 무기 유형 중 가장 기본적인 공통 요소를 추려 설계
    • 수강생이 이를 응용해 자신만의 무기와 변형 시스템을 추가하는 것을 권장
    • 직접 변형·확장해 볼수록 실력이 크게 향상된다는 점을 강조

학습 방법과 마무리 당부

  • 필수 학습 태도
    • 단순 시청이 아니라, 직접 구현·복습하는 것에 중점
    • 강의에서 다룬 기본 요소를 토대로 스스로 변형·확장 시도
  • 추천 연습 방식
    • 각 강의 후 배운 개념으로 숙제·개인 실습 진행
    • “이렇게도 만들 수 있겠다” 싶은 아이디어는 바로 시도
    • 기본 무기 외에 자신만의 무기, 패턴, 조합 로직을 추가해 보기
  • 1강 마무리
    • 1강은 강의 목표와 전체 구성을 파악하는 시간으로 여기면 충분
    • 이후 강의에서 언리얼 엔진의 구체적 사용법과 C++ 구현을 단계적으로 학습 예정
KEG
01_블렌더 입문자를 위한 SD 캐릭터 만들기
학습 01_블렌더 입문자를 위한 SD 캐릭터 만들기   완료 콘텐츠
영상 2025_blender3d_08.mp4
02_누구나 쉽게! 파이썬 베이직
학습 02_누구나 쉽게! 파이썬 베이직   완료 콘텐츠
영상 2024_PYTHON BASIC_10.mp4
03_기초부터 실무까지! 자바스크립트 (ES6) 마스터하기
학습 03_기초부터 실무까지! 자바스크립트 (ES6) 마스터하기   완료 콘텐츠
영상 2025_javascript_01.mp4
04_파이썬으로 배우는 데이터 분석 기초
학습 04_파이썬으로 배우는 데이터 분석 기초   완료 콘텐츠
영상 2024_DataAnalysis1_07.mp4
05_파이썬으로 배우는 데이터 분석 심화  AI & 머신러닝
학습 05_파이썬으로 배우는 데이터 분석 심화 AI & 머신러닝   완료 콘텐츠
영상 2024_DataAnalysis2_11.mp4
06_코딩이 처음이라도 괜찮아, 엔트리로 시작하자! part.1
학습 06_코딩이 처음이라도 괜찮아, 엔트리로 시작하자! part.1   완료 콘텐츠
영상 2024_Entry_6-5.mp4
07_코딩이 처음이라도 괜찮아, 엔트리로 시작하자! part.2
학습 07_코딩이 처음이라도 괜찮아, 엔트리로 시작하자! part.2   완료 콘텐츠
영상 2024_Entry_master_13_05.mp4
08_피부미용사 필기, 무조건 합격하는 완벽 로드맵!
학습 08_피부미용사 필기, 무조건 합격하는 완벽 로드맵!   완료 콘텐츠
영상 20250408_국가자격증_미용사(피부)_김효진_8회차_0428종편_unit3.mp4
09_Microsoft 공식 자격증 MCF AI-900
학습 09_Microsoft 공식 자격증 MCF AI-900
영상 MCF AI-900_1-1.mp4
10_Unity 공식 자격증 UCU Programmer
학습 10_Unity 공식 자격증 UCU Programmer   완료 콘텐츠
영상 UCU programmer_1-3.mp4
11_30일이면 비전공자도 합격하는 PCCE 완벽 코스!
학습 11_30일이면 비전공자도 합격하는 PCCE 완벽 코스!   완료 콘텐츠
영상 PCCE_06-4.mp4
12_Adobe 공식 자격증 ACP After Effects
학습 12_Adobe 공식 자격증 ACP After Effects
영상 ACP_After Effects_01.mp4
13_영상에 감정을 입히는 기술, 컬러그레이딩  다빈치 리졸브로 배우는 실무 클래스_입문 편
학습 13_영상에 감정을 입히는 기술, 컬러그레이딩 다빈치 리졸브로 배우는 실무 클래스_입문 편   완료 콘텐츠
영상 colorgrading 01.mp4
14_하루 20분! 왕초보도 성공하는 '아이패드 드로잉 X 굿즈 수익화'
학습 14_하루 20분! 왕초보도 성공하는 '아이패드 드로잉 X 굿즈 수익화'   완료 콘텐츠
영상 3-3_v2.mp4
15_왕초보도 따라하는 완성도 최강의 버츄얼캐릭터
학습 15_왕초보도 따라하는 완성도 최강의 버츄얼캐릭터   완료 콘텐츠
영상 004Vtuber 디자인 01.기획서 종편 FHD 0616.mp4
16_실무에 바로 쓰는 SketchUp & Enscape 건축 모델링
학습 16_실무에 바로 쓰는 SketchUp & Enscape 건축 모델링   완료 콘텐츠
영상 250701_KKJ_lecture_09_유닛_01_자막.mp4
01 ACP Illustrator CC2023
학습 01 ACP Illustrator CC2023   완료 콘텐츠
영상 01 ACP Illustrator CC2023.mp4
02 ACP Premiere pro CC2023
학습 02 ACP Premiere pro CC2023   완료 콘텐츠
영상 02 ACP Premiere pro CC2023.mp4
03 ACP Photoshop CC2023
학습 03 ACP Photoshop CC2023   완료 콘텐츠
영상 03 ACP Photoshop CC2023.mp4
04 ACP Indesign CC2023
학습 04 ACP Indesign CC2023   완료 콘텐츠
영상 04 ACP Indesign CC2023.mp4
05 멘토씨리즈 포토웍스
학습 05 멘토씨리즈 포토웍스   완료 콘텐츠
영상 05 멘토씨리즈 포토웍스.mp4
06 확실하게 마스터하자! 디테일 일러스트
학습 06 확실하게 마스터하자! 디테일 일러스트   완료 콘텐츠
영상 06 확실하게 마스터하자! 디테일 일러스트.mp4
07 인포그래픽, 정보가 한눈에 보이는 Visual thinking
학습 07 인포그래픽, 정보가 한눈에 보이는 Visual thinking
영상 07 인포그래픽, 정보가 한눈에 보이는 Visual thinking.MP4
08 웹툰제작
학습 08 웹툰제작   완료 콘텐츠
영상 08 웹툰제작.mp4
09 기초부터 다져보는 누크
학습 09 기초부터 다져보는 누크   완료 콘텐츠
영상 09 기초부터 다져보는 누크.mp4
10 누크의 3D Workflow
학습 10 누크의 3D Workflow
영상 10 누크의 3D Workflow.mp4
11 기초부터 시작하는 MAYA 렌더링
학습 11 기초부터 시작하는 MAYA 렌더링   완료 콘텐츠
영상 11 기초부터 시작하는 MAYA 렌더링.mp4
12 기초부터 시작하는 MAYA 모델링
학습 12 기초부터 시작하는 MAYA 모델링   완료 콘텐츠
영상 12 기초부터 시작하는 MAYA 모델링.mp4
13 기초부터 시작하는 MAYA 애니메이션
학습 13 기초부터 시작하는 MAYA 애니메이션
영상 13 기초부터 시작하는 MAYA 애니메이션.mp4
15 Blender로 인테리어 영상 제작하기
학습 15 Blender로 인테리어 영상 제작하기   완료 콘텐츠
영상 15 Blender로 인테리어 영상 제작하기.mp4
16 멘토씨리즈 자바
학습 16 멘토씨리즈 자바   완료 콘텐츠
영상 16 멘토씨리즈 자바.mp4
17 스크래치로 공부하는 프로그래밍 기초
학습 17 스크래치로 공부하는 프로그래밍 기초   완료 콘텐츠
영상 17 스크래치로 공부하는 프로그래밍 기초.mp4
20 누구나 쉽게! Git&GitHub
학습 20 누구나 쉽게! Git&GitHub   완료 콘텐츠
영상 20 누구나 쉽게! Git&GitHub.mp4
23 디지털 드로잉 기본기 완전판
학습 23 디지털 드로잉 기본기 완전판   완료 콘텐츠
영상 23 디지털 드로잉 기본기 완전판.mp4
24 그림스타일에 딱 맞는 인체 연구
학습 24 그림스타일에 딱 맞는 인체 연구   완료 콘텐츠
영상 24 그림스타일에 딱 맞는 인체 연구.mp4
25 뱀파이어 서바이벌로 배우는 언리얼 C++
학습 25 뱀파이어 서바이벌로 배우는 언리얼 C++   현재 콘텐츠
영상 25 뱀파이어 서바이벌로 배우는 언리얼 C++.mp4
26 하나하나 꼼꼼히! 웹툰 드로잉 네 걸음
학습 26 하나하나 꼼꼼히! 웹툰 드로잉 네 걸음   완료 콘텐츠
영상 26 하나하나 꼼꼼히! 웹툰 드로잉 네 걸음.mp4
27 하나하나 꼼꼼히! 웹툰 드로잉 세 걸음
학습 27 하나하나 꼼꼼히! 웹툰 드로잉 세 걸음   완료 콘텐츠
영상 27 하나하나 꼼꼼히! 웹툰 드로잉 세 걸음.mp4
28 하나하나 꼼꼼히! 웹툰 드로잉 두 걸음
학습 28 하나하나 꼼꼼히! 웹툰 드로잉 두 걸음   완료 콘텐츠
영상 28 하나하나 꼼꼼히! 웹툰 드로잉 두 걸음.mp4
29 하나하나 꼼꼼히! 웹툰 드로잉 첫걸음
학습 29 하나하나 꼼꼼히! 웹툰 드로잉 첫걸음   완료 콘텐츠
영상 29 하나하나 꼼꼼히! 웹툰 드로잉 첫걸음.mp4
30 쉽고 재밌게 배우는 모션그래픽_애프터이펙트1
학습 30 쉽고 재밌게 배우는 모션그래픽_애프터이펙트1   완료 콘텐츠
영상 30 쉽고 재밌게 배우는 모션그래픽_애프터이펙트1.mp4
31 쉽고 재밌게 배우는 모션그래픽_애프터이펙트2
학습 31 쉽고 재밌게 배우는 모션그래픽_애프터이펙트2   완료 콘텐츠
영상 31 쉽고 재밌게 배우는 모션그래픽_애프터이펙트2.mp4
32 기초부터 심화까지 한 번에 배우는 영상편집_프리미어 프로
학습 32 기초부터 심화까지 한 번에 배우는 영상편집_프리미어 프로   완료 콘텐츠
영상 32 기초부터 심화까지 한 번에 배우는 영상편집_프리미어 프로.mp4
33 웹소설 작가 도전하기
학습 33 웹소설 작가 도전하기
영상 33 웹소설 작가 도전하기.mp4
34 올인원 DBMS!! 설계부터 운영까지!!
학습 34 올인원 DBMS!! 설계부터 운영까지!!
영상 34 올인원 DBMS!! 설계부터 운영까지!!.mp4