WEBVTT 00:00:00.000 --> 00:00:05.940 안녕하세요, 제 이름은 Mark입니다. 저는 수년동안 Unity같은 소프트웨어를 이용하여 00:00:05.940 --> 00:00:13.320 게임을 만들고 싶었습니다. Unity는 "컵헤드" ,"네온 화이트", "튜닉"; 00:00:13.320 --> 00:00:18.600 "아우터 와일즈", "하스스톤", "파이어워치", 심지어 포켓몬 다이다몬드 리메이크에도 사용되었습니다. 00:00:18.600 --> 00:00:26.280 그런데 저는 항상 긴 튜토리얼 영상을 볼 때마다 잠이 오더군요 00:00:26.280 --> 00:00:31.140 전 다른 사람이 하는걸 보면서 따라하는 것보다 직접 시도해보는게 적성에 더 맞더라고요 00:00:31.140 --> 00:00:37.500 그래서 작년에 3단계로 구성된 해결법을 만들었는데, 꽤 효과가 좋았습니다 00:00:37.500 --> 00:00:44.820 1. Unity의 기본'만' 배우기, 2. 간단한 시험으로 기본 익히기, 00:00:44.820 --> 00:00:51.180 3. 나머지는 게임을 만들면서 알아서 배우기. 제가 해봤더니 정말로 되더군요! 00:00:51.180 --> 00:00:57.000 다른 모바일 게임을 배끼는 것부터 시작해서, 자석을 이용한 저만의 퍼즐 플랫포머 게임을; 00:00:57.000 --> 00:01:03.480 만들기까지 1년정도 걸렸습니다 00:01:03.480 --> 00:01:08.580 그런데 Unity같이 복잡한 소프트웨어의 기본을 어떻게 배워야 하는지 00:01:08.580 --> 00:01:11.580 의문점이 들겁니다 00:01:11.580 --> 00:01:15.360 저는 대부분의 게임의 들어가는 공통적인 요소를 리스트로 만들었습니다 00:01:15.360 --> 00:01:19.980 캐릭터를 화면에 띄우는 방법; 00:01:19.980 --> 00:01:24.060 캐릭터를 움직이게 하는 방법, 뭔갈 생성하거나 없애는 방법; 00:01:24.060 --> 00:01:28.680 캐릭터의 판정, 게임 오버, 애니매이션, 사운드 등등; 00:01:28.680 --> 00:01:33.540 전 이 방법들을 긴 튜토리얼 영상, Unity 문서; 00:01:33.540 --> 00:01:36.780 검색, 그리고 수많은 시행착오를 겪으면서 배웠습니다 00:01:36.780 --> 00:01:41.820 이 영상의 목적은 여러분이 그걸 겪지 않게 만드는 것입니다 00:01:41.820 --> 00:01:46.380 이 영상은 제가 Unity를 배울 적에 봤다면 좋았을 영상입니다 00:01:46.380 --> 00:01:52.080 앞으로 40분동안 우리는 Unity를 이용해 플래피 버드를 만들겁니다 00:01:52.080 --> 00:01:57.060 플래피 버드를 만들고 싶어서가 아니라, 플래피 버드를 만들려면 00:01:57.060 --> 00:02:02.220 제가 아까 말한 요소인 뭔갈 생성하는 것부터 게임 오버까지 전부 필요하기 때문입니다 00:02:02.220 --> 00:02:08.460 이 튜토리얼에서는 Unity 설치부터 UI 이해; 00:02:08.460 --> 00:02:13.680 프로그래밍, 그리고 당신의 지인들과 공유할 수 있도록 게임을 빌드하는 것까지 배우게 됩니다 00:02:13.680 --> 00:02:19.080 그리고 튜토리얼이 끝난 후, 간단한 시험을 통해 기본을 익히게 되고, 00:02:19.080 --> 00:02:25.920 그 후로는 스스로 배우는게 가능해질겁니다 괜찮은 것 같나요? 그렇다면 이제 시작하죠. 00:02:26.880 --> 00:02:34.200 Unity를 다운받는 것부터 시작합시다. 다운로드 후 Unity Hub를 설치하세요 00:02:34.800 --> 00:02:39.660 Unity를 사용하려면 계정이 필요합니다. 계정을 만든 후, 00:02:39.660 --> 00:02:45.840 Unity 에디터 설치 창이 나올겁니다. 설치하세요 00:02:45.840 --> 00:02:49.020 *(이 영상에선 2021.3을 사용했지만, 2022를 사용해도 상관없습니다) 00:02:49.020 --> 00:02:52.380 *(설치 시 약 15분정도 걸립니다 너무 오래 걸리면, Unity Hub를 관리자 권한으로 실행해보세요) 00:02:52.380 --> 00:02:59.300 아직 끝난게 아닙니다. 옆에 톱니바퀴 아이콘을 누르고 모듈을 누르면 00:03:00.300 --> 00:03:04.980 Visual Studio가 체크되어있는게 보일겁니다 저희는 이 프로그램으로 00:03:04.980 --> 00:03:10.620 코드를 작성할 겁니다 Visual Studio를 설치한 후, 이 화면에서 00:03:10.620 --> 00:03:15.420 아래로 스크롤하고 "Unity를 활용한 게임 개발"은 체크하고, Unity Hub는 해제합니다 00:03:15.420 --> 00:03:20.340 왜냐면 Hub는 이미 설치 되있으니까요. Visual Studio는 계정이 필요없으니 이건 스킵하고, 00:03:20.340 --> 00:03:23.580 어차피 나중에 열거니 이 창은 닫아도 됩니다 00:03:23.580 --> 00:03:31.140 이제 Unity Hub에서 '새 프로젝트'를 누르고, '모든 템플릿'을 선택하고 '2D 코어'를 선택합니다 00:03:31.140 --> 00:03:35.940 '2D 코어'는 2D 게임을 만드는데 적합한 빈 프로젝트입니다 00:03:35.940 --> 00:03:41.220 이름을 정하고, '프로젝트 생성' 버튼을 누르세요 00:03:43.260 --> 00:03:48.720 첫번째로, 우리는 Unity의 UI를 배울겁니다 00:03:48.720 --> 00:03:52.500 다른 패널들을 탐방하면서, 화면에 새를 띄울겁니다 00:03:52.500 --> 00:03:58.800 이게 Unity의 기본 레이아웃입니다 4개의 패널로 나뉘어져 있죠 00:03:59.880 --> 00:04:05.340 아래에는 프로젝트 패널이 있습니다 여기에는 게임에 들어가는 모든 요소가 포함됩니다 00:04:05.340 --> 00:04:12.660 예를 들면 스프라이트, 사운드, 스크립트, 타일, 폰트 등이 있습니다 이중 일부는 Unity에서 직접 만들거지만 00:04:12.660 --> 00:04:17.940 다른 곳에서 파일을 드래그해도 됩니다 00:04:17.940 --> 00:04:22.800 저는 포토샵에서 새와 파이프의 스프라이트를 만든 후 00:04:22.800 --> 00:04:27.540 이걸 프로젝트에 드래그했습니다 전 여러분이 스프라이트를 직접 만들면 좋겠지만 00:04:27.540 --> 00:04:32.400 만약 그림을 잘 못그리겠다면 설명에 에셋 다운로드 링크를 확인하세요 00:04:32.400 --> 00:04:38.940 왼쪽에는 계층 구조 패널이 있습니다 여기에는 현재 '장면'에 있는 것들이 포함되며 00:04:38.940 --> 00:04:42.960 '장면'은 대부분의 게임에서 레벨의 역할을 합니다. 우선 새를 만드는 것부터 시작합시다 00:04:42.960 --> 00:04:50.280 계층 구조에서 빈 오브젝트 생성을 누르면 빈 GameObject가 생성됩니다 00:04:50.280 --> 00:04:56.700 GameObject는 투명한 컨테이너와 같습니다 위치를 지정하거나 회전할 수 있고; 00:04:56.700 --> 00:05:03.300 크기를 조절할수도 있습니다. 그리고 컨테이너 안에 컴포넌트를 넣어 기능을 추가할 수 있죠 00:05:03.300 --> 00:05:08.220 예를 들어, '스프라이트 렌더러' 컴포넌트를 넣으면 GameObject에 이미지를 넣을 수 있죠 00:05:08.220 --> 00:05:13.260 이 게임의 모든 것들은 '컴포넌트가 있는 GameObject'로 구성되어 있습니다 00:05:13.260 --> 00:05:16.440 새, 파이프, 심지어 UI와 카메라까지 00:05:16.440 --> 00:05:22.680 이 모든 것들은 오른쪽의 인스펙터에서 관리할 수 있습니다 00:05:22.680 --> 00:05:28.440 빈 GameObject를 선택한 후, 위에서 이름을 정할 수 있습니다 00:05:28.440 --> 00:05:34.860 이름은 그냥 Bird라고 하죠 그리고 Transform에서 위치, 기울기, 크기를 조절할 수 있습니다 00:05:34.860 --> 00:05:41.520 이제 '컴포넌트 추가'를 누르고, Rendering을 누르고 Sprite Renderer를 선택하세요 00:05:41.520 --> 00:05:45.540 이걸 작동하게 하려면, 스프라이트를 선택해야 하는데, 그냥 프로젝트 패널에서 새 이미지를 00:05:45.540 --> 00:05:49.620 빈칸에 드래그하면, 그래픽이 생겼네요! 00:05:49.620 --> 00:05:53.280 그래픽은 중앙에 있는 씬 패널에 나타납니다 00:05:53.280 --> 00:05:57.240 씬에서는 현재 씬에 무엇이 있는지 볼 수 있고, 00:05:57.240 --> 00:06:01.560 이 기능들을 이용하여 움직이거나 회전시킬 수 있습니다 00:06:01.560 --> 00:06:06.900 이 섹션에는 '게임'이라는 탭이 있는데, 여기선 게임을 실행할때 메인 카메라에서 00:06:06.900 --> 00:06:13.440 어떻게 보이는지 확인할 수 있습니다 그리고 여기에선 해상도나 화면비를 설정할 수 있습니다 00:06:13.440 --> 00:06:19.080 다른 화면에서 어떻게 보이는지 알 수 있죠 - 저는 1920x1080을 선택하겠습니다 00:06:19.080 --> 00:06:23.940 새가 너무 많은 공간을 차지하네요 새의 크기를 줄일 수도 있지만, 저희는 00:06:23.940 --> 00:06:29.700 카메라를 축소할 겁니다. 카메라 또한 계층 구조에 있는 GameObject이기에 이를 선택하면 00:06:29.700 --> 00:06:35.880 Camera 컴포넌트에서 수치를 조절할 수 있습니다 '크기'를 높이면 카메라가 축소됩니다 00:06:36.420 --> 00:06:39.420 그리고 배경 색도 바꾸겠습니다. 좋네요 00:06:39.420 --> 00:06:44.340 이제 위에 있는 Play 버튼을 누르면 세상에서 가장 00:06:44.340 --> 00:06:47.760 지루한 게임이 시작됩니다 네. 이제 덜 지루하게 만들어 보죠 00:06:49.320 --> 00:06:55.440 잠깐 되돌아봅시다 Unity에는 4개의 패널이 있고 그중 프로젝트에는 모든 요소가 들어가고, 00:06:55.440 --> 00:07:00.900 계층 구조에는 현재 레벨에 있는 GameObject가 표시되고, 인스펙터에는 00:07:00.900 --> 00:07:04.740 GameObject를 마음대로 조절할 수 있고, 씬에서는 레벨을 볼 수 있다. 00:07:04.740 --> 00:07:10.800 그리고 GameObject는 Sprite Renderer같은 컴포넌트를 담을 수 있는 투명한 컨테이너다. 00:07:11.580 --> 00:07:15.900 두번째로, 저희는 더 많은 컴포넌트를 이용하여 00:07:15.900 --> 00:07:19.320 새를 중력에 영향을 받는 물리 오브젝트로 만들고 00:07:19.320 --> 00:07:23.400 코드를 이용하여 스페이스 바를 누를 떄마다 새를 위로 날게 만들겁니다 00:07:23.400 --> 00:07:29.760 이제 새에다가 Rigidbody2D 컴포넌트를 추가합시다. 00:07:29.760 --> 00:07:36.600 이 컴포넌트는 새를 물리 오브젝트로 만들어 줍니다. 그래서 Play 버튼을 누르면 새가 화면 밖으로 떨어집니다. 00:07:36.600 --> 00:07:42.279 이 새가 다른 오브젝트와 상호작용하게 만들려면 Collider가 필요합니다 00:07:42.279 --> 00:07:43.920 Circle Collider 2D를 추가합시다 00:07:43.920 --> 00:07:49.920 씬을 보면 초록색으로 된 선이 보입니다 중심이 약간 안맞기 때문에; 00:07:49.920 --> 00:07:55.260 오프셋을 조절해서 움직이겠습니다 여기서 게임 디자인 팁을 주자면 00:07:55.260 --> 00:08:00.720 Collider(판정)를 이미지보다 조금 작게 만들면 플레이어가 파이프에 아주 살짝 닿았더라도 00:08:00.720 --> 00:08:05.220 게임 오버가 되지 않기에 빡센 느낌이 줄어들게 됩니다 00:08:05.220 --> 00:08:10.920 마지막으로, 스크립트를 추가하겠습니다 스크립트를 활용하면 사실상 나만의 컴포넌트를 00:08:10.920 --> 00:08:16.680 만들 수 있게 되지만, 우리가 코드를 이용해서 직접 만들어야 합니다 컴포넌트 추가에서 New Script를 선택하고, 00:08:16.680 --> 00:08:21.780 이름은 BirdScript라고 하겠습니다. 만든 후, 스크립트를 더블클릭하면 00:08:21.780 --> 00:08:27.000 전에 설치한 Visual Studio가 열릴겁니다 00:08:27.000 --> 00:08:31.020 프로그래밍의 세계에 온걸 환영합니다! 너무 무섭게 생각하지 마세요; 00:08:31.020 --> 00:08:35.460 천천히 설명해드릴 겁니다. 저희는 C#으로 코드를 작성할겁니다 00:08:35.460 --> 00:08:41.340 먼저 Start와 Update, 이 2개에 대해 알아보겠습니다 00:08:41.340 --> 00:08:46.620 Start는 (이 스크립트가 활성화 돼있으면) 처음으로 실행되는 코드이고, 00:08:46.620 --> 00:08:52.620 단 한번만 실행됩니다. Update는 (이 스크립트가 활성화 돼있으면) 항상 실행되는 코드이고, 00:08:52.620 --> 00:08:57.360 매 프레임마다 코드가 실행됩니다. 00:08:58.080 --> 00:09:02.820 아무튼, 저희가 코드로 작성할 건 - Unity로 다시 돌아가보면 00:09:02.820 --> 00:09:08.340 컴포넌트에 있는 숫자들이나 텍스트를 마음대로 조절할 수 있죠 00:09:08.340 --> 00:09:13.320 저희는 코드를 이용하여 게임이 실행되는 동안 이것들을 조절할 겁니다 00:09:13.320 --> 00:09:17.880 간단한 예시를 들자면 00:09:17.880 --> 00:09:24.920 Start에 gameObject(오른쪽 위에 있는걸 의미함)를 치고, 점[.]을 치면 리스트가 보일겁니다 00:09:24.920 --> 00:09:25.920 *(리스트가 안보이면, Unity 위에 '창'->'패키지 관리자'->아래로 내려서 'Visual Studio Editor' 선택 후 설치 그후 Unity 위에 '편집'->'환경 설정'->'외부 툴'->Visual Studio 선택 후 전부 체크하고 재실행) 00:09:25.920 --> 00:09:30.720 이중 대부분은 인스펙터에 있는걸 나타냅니다 예를 들면 정적(isStatic); 00:09:30.720 --> 00:09:38.940 태그, 레이어, 이름이 있죠 name을 선택하고, [=] 쓰고, 큰따옴표[" "]로 00:09:38.940 --> 00:09:44.640 새의 이름을 넣으면 됩니다. 마지막으로, 명령 끝엔 항상 세미콜론[;]이 있어야 합니다 00:09:45.433 --> 00:09:49.573 그리고 스크립트를 저장하는것도 잊지 마세요 00:09:49.573 --> 00:09:54.360 이제 게임을 실행하면... GameObject의 이름이 바뀌였네요. 좋습니다 00:09:55.080 --> 00:09:58.560 네, 이제 그 코드는 지우세요. 방금 쓴 코드는 우리가 코드로 00:09:58.560 --> 00:10:03.120 게임과 대화할 수 있다는 걸 알려줍니다 저희는 코드를 작성하여 누구와 대화할지 00:10:03.120 --> 00:10:08.280 대상을 정할 수 있고, 대화의 주제도 정하고, 00:10:08.280 --> 00:10:14.160 그 후 명령을 정할 수 있습니다 저희는 이 짓을 많이 하게 될겁니다. 00:10:14.880 --> 00:10:19.740 아무튼 저희가 진짜로 해야할 일은, Rigidbody2D 컴포넌트에서 Info 아래에 보면 00:10:19.740 --> 00:10:23.400 Velocity가 회색으로 표시된게 보일겁니다 00:10:23.400 --> 00:10:27.120 저희는 위쪽으로 Velocity를 주는 코드를 작성해서 새가 하늘로 날 수 있게 만들겁니다 00:10:27.120 --> 00:10:32.640 문제는, 이 스크립트는 GameObject의 윗부분과 Transform끼리만 대화할 수 있고 00:10:32.640 --> 00:10:37.200 다른 컴포넌트의 존재도 모릅니다 00:10:37.200 --> 00:10:42.480 그래서 이 스크립트에 RigidBody2D를 위한 공간을 만들어야 합니다 00:10:42.480 --> 00:10:48.360 그러면 대화를 할 수 있게 되고 명령을 보낼 수 있게 되며 이를 '레퍼런스'라 부릅니다 00:10:48.360 --> 00:10:52.380 Class와 Start 사이에 레퍼런스를 작성할 겁니다: 00:10:52.380 --> 00:10:57.840 public RigidBody2D myRigidBody; 00:11:00.540 --> 00:11:06.480 이제 RigidBody2D를 보관할 공간이 생겼고, 다른 Rigidbody2D와 구분하기 위해 00:11:06.480 --> 00:11:12.060 공간의 이름도 정했습니다 public으로 정했기 때문에 스크립트 밖에서도 00:11:12.060 --> 00:11:18.240 공간을 건드릴 수 있습니다 저장하고 Unity로 돌아가면, 스크립트 컴포넌트에 00:11:18.240 --> 00:11:24.780 RigidBody2D를 위한 공간이 생긴걸 볼 수 있습니다 이제 RigidBody2D 컴포넌트를 빈칸에 드래그하면, 00:11:24.780 --> 00:11:28.740 이제 스크립트와 RigidBody간의 통신선이 생겼습니다. 00:11:29.340 --> 00:11:36.300 다시 Visual Studio로 돌아와서, Update에 myRigidBody 그리고 점[.]을 치면 00:11:36.300 --> 00:11:40.440 이 많은 대화 주제들을 보세요 angularDrag, gravityScale, mass; 00:11:40.440 --> 00:11:45.540 이것들이 전부 RigidBody2D에 있는 속성들입니다 우리가 원하는건 velocity죠 00:11:45.540 --> 00:11:51.060 전에 했던 것처럼 [=]을 쓰고, 00:11:51.060 --> 00:11:57.180 여기에서는 Vector라는 2D 공간에서 위치를 나타내는 값을 이용할 겁니다 00:11:57.180 --> 00:12:02.400 여기서 Vector는 새가 나는 방향을 나타내는데 사용할겁니다 00:12:02.400 --> 00:12:08.940 저희는 새가 위로 나는걸 원하기 때문에, (0,1)이 좋겠네요. 저는 Vector2.up을 이용할 겁니다 00:12:08.940 --> 00:12:14.400 *Vector2.up은 Vector2(0,1)과 같은 의미입니다 그리고 힘을 주려면 00:12:14.400 --> 00:12:19.920 Vector에 힘을 곱하면 됩니다 힘은 대충 10 정도면 충분할 겁니다 00:12:19.920 --> 00:12:24.720 그리고, 전에 말했지만, Update 안에 있는 코드는 매 프레임마다 실행되기 때문에 00:12:24.720 --> 00:12:31.560 저장하고 플레이 해보면... 영원히 날아갑니다 00:12:31.560 --> 00:12:36.360 하지만 저희가 원하는건 스페이스 바를 누를 때만 새가 날아가게 하는 것이죠 00:12:36.360 --> 00:12:41.040 이제 프로그래밍에서 가장 중요한 요소를 사용할 때입니다: 바로 if 입니다. 00:12:41.040 --> 00:12:43.380 if는 마치 검문소와도 같습니다 00:12:43.380 --> 00:12:47.640 게임이 특정 조건을 만족하지 못한다면, 매 프레임마다 그 코드는 완전히 무시됩니다 00:12:47.640 --> 00:12:52.020 반대로, 검문소에 적혀 있는 특정 조건을 만족한다면, 00:12:52.020 --> 00:12:56.700 통과할 수 있게 되고 코드가 실행됩니다. 00:12:56.700 --> 00:13:00.960 저희가 원하는건 "만약 플레이어가 스페이스 바를 누르면, 위쪽으로 velocity를 더한다"죠 00:13:00.960 --> 00:13:06.300 if를 적고 괄호 안에 조건을 적으면 됩니다 00:13:06.300 --> 00:13:12.360 여기서는 컴포넌트와 대화하는게 아니라 Unity와 대화하게 됩니다 정확히는 Unity의 인풋 시스템이죠 00:13:12.360 --> 00:13:20.160 Input.GetKeyDown, 그리고 괄호 안에 KeyCode.Space 00:13:20.160 --> 00:13:25.200 00:13:25.200 --> 00:13:31.020 00:13:31.020 --> 00:13:35.280 00:13:35.280 --> 00:13:38.520 00:13:38.520 --> 00:13:43.740 00:13:43.740 --> 00:13:48.960 00:13:50.100 --> 00:13:54.240 00:13:54.240 --> 00:13:59.340 00:13:59.340 --> 00:14:02.760 00:14:02.760 --> 00:14:08.160 00:14:08.160 --> 00:14:11.460 00:14:11.460 --> 00:14:17.340 00:14:17.340 --> 00:14:23.100 00:14:23.100 --> 00:14:31.860 00:14:31.860 --> 00:14:36.540 00:14:36.540 --> 00:14:41.520 00:14:41.520 --> 00:14:47.160 00:14:47.160 --> 00:14:51.960 00:14:51.960 --> 00:14:57.720 00:14:57.720 --> 00:15:02.040 00:15:02.040 --> 00:15:06.900 00:15:06.900 --> 00:15:11.340 00:15:11.340 --> 00:15:15.360 00:15:15.360 --> 00:15:18.660 00:15:18.660 --> 00:15:22.680 00:15:22.680 --> 00:15:26.700 00:15:26.700 --> 00:15:29.640 00:15:30.300 --> 00:15:31.440 00:15:31.440 --> 00:15:36.000 00:15:36.000 --> 00:15:40.860 00:15:40.860 --> 00:15:45.000 00:15:45.000 --> 00:15:49.860 00:15:50.400 --> 00:15:56.280 00:15:56.280 --> 00:16:01.920 00:16:01.920 --> 00:16:04.740 00:16:04.740 --> 00:16:07.860 00:16:09.480 --> 00:16:13.680 00:16:13.680 --> 00:16:18.180 00:16:18.180 --> 00:16:23.640 00:16:23.640 --> 00:16:28.620 00:16:28.620 --> 00:16:32.280 00:16:32.280 --> 00:16:35.100 00:16:35.100 --> 00:16:40.500 00:16:40.500 --> 00:16:44.520 00:16:44.520 --> 00:16:50.700 00:16:50.700 --> 00:16:55.080 00:16:55.980 --> 00:17:00.000 00:17:00.900 --> 00:17:06.840 00:17:06.840 --> 00:17:13.440 00:17:13.440 --> 00:17:19.020 00:17:19.020 --> 00:17:24.420 00:17:24.420 --> 00:17:31.020 00:17:31.020 --> 00:17:35.400 00:17:35.400 --> 00:17:38.940 00:17:40.680 --> 00:17:46.080 00:17:46.080 --> 00:17:50.700 00:17:50.700 --> 00:17:56.100 00:17:56.100 --> 00:18:03.360 00:18:03.360 --> 00:18:08.580 00:18:08.580 --> 00:18:14.760 00:18:14.760 --> 00:18:19.980 00:18:20.580 --> 00:18:26.160 00:18:26.160 --> 00:18:31.200 00:18:31.200 --> 00:18:37.320 00:18:39.000 --> 00:18:43.500 00:18:43.500 --> 00:18:47.520 00:18:47.520 --> 00:18:53.280 00:18:53.280 --> 00:18:58.860 00:18:58.860 --> 00:19:03.060 00:19:03.060 --> 00:19:07.680 00:19:07.680 --> 00:19:11.880 00:19:11.880 --> 00:19:16.440 00:19:16.440 --> 00:19:22.680 00:19:22.680 --> 00:19:30.660 00:19:30.660 --> 00:19:36.420 00:19:36.420 --> 00:19:41.280 00:19:41.280 --> 00:19:44.820 00:19:44.820 --> 00:19:49.320 00:19:49.320 --> 00:19:53.580 00:19:53.580 --> 00:19:59.400 00:19:59.400 --> 00:20:04.560 00:20:04.560 --> 00:20:10.740 00:20:10.740 --> 00:20:16.980 00:20:16.980 --> 00:20:22.500 00:20:22.500 --> 00:20:26.460 00:20:26.460 --> 00:20:29.460 00:20:30.720 --> 00:20:36.240 00:20:36.240 --> 00:20:41.820 00:20:41.820 --> 00:20:46.800 00:20:47.400 --> 00:20:51.360 00:20:51.360 --> 00:20:54.276 00:20:54.276 --> 00:20:58.680 00:20:58.680 --> 00:21:03.840 00:21:03.840 --> 00:21:07.920 00:21:07.920 --> 00:21:11.580 00:21:11.580 --> 00:21:17.880 00:21:17.880 --> 00:21:22.980 00:21:22.980 --> 00:21:28.500 00:21:28.500 --> 00:21:32.760 00:21:32.760 --> 00:21:37.560 00:21:37.560 --> 00:21:42.180 00:21:42.180 --> 00:21:46.800 00:21:48.300 --> 00:21:52.740 00:21:52.740 --> 00:21:55.560 00:21:55.560 --> 00:21:59.760 00:21:59.760 --> 00:22:05.100 00:22:05.100 --> 00:22:10.140 00:22:10.140 --> 00:22:14.520 00:22:14.520 --> 00:22:19.560 00:22:19.560 --> 00:22:22.980 00:22:22.980 --> 00:22:29.400 00:22:29.400 --> 00:22:34.980 00:22:34.980 --> 00:22:39.780 00:22:39.780 --> 00:22:42.600 00:22:42.600 --> 00:22:48.480 00:22:48.480 --> 00:22:53.040 00:22:53.040 --> 00:22:58.440 00:22:58.440 --> 00:23:01.740 00:23:01.740 --> 00:23:05.220 00:23:05.220 --> 00:23:09.540 00:23:09.540 --> 00:23:14.520 00:23:14.520 --> 00:23:22.560 00:23:22.560 --> 00:23:28.500 00:23:28.500 --> 00:23:33.420 00:23:33.420 --> 00:23:38.820 00:23:38.820 --> 00:23:44.100 00:23:44.100 --> 00:23:49.560 00:23:49.560 --> 00:23:55.320 00:23:55.320 --> 00:24:00.900 00:24:00.900 --> 00:24:06.120 00:24:06.120 --> 00:24:10.260 00:24:10.260 --> 00:24:15.180 00:24:15.180 --> 00:24:21.420 00:24:21.420 --> 00:24:27.720 00:24:27.720 --> 00:24:32.340 00:24:32.340 --> 00:24:37.800 00:24:38.760 --> 00:24:44.700 00:24:44.700 --> 00:24:49.080 00:24:49.080 --> 00:24:52.980 00:24:52.980 --> 00:24:58.140 00:24:58.140 --> 00:25:03.960 00:25:03.960 --> 00:25:08.520 00:25:08.520 --> 00:25:14.220 00:25:14.220 --> 00:25:19.800 00:25:19.800 --> 00:25:22.200 00:25:22.200 --> 00:25:29.820 00:25:29.820 --> 00:25:36.600 00:25:37.560 --> 00:25:41.400 00:25:41.400 --> 00:25:47.400 00:25:47.400 --> 00:25:53.700 00:25:53.700 --> 00:25:59.160 00:25:59.160 --> 00:26:05.160 00:26:05.160 --> 00:26:12.300 00:26:14.220 --> 00:26:19.560 00:26:19.560 --> 00:26:24.780 00:26:24.780 --> 00:26:30.120 00:26:30.120 --> 00:26:35.100 00:26:35.100 --> 00:26:40.140 00:26:40.140 --> 00:26:45.060 00:26:45.060 --> 00:26:50.700 00:26:50.700 --> 00:26:58.260 00:26:58.260 --> 00:27:06.120 00:27:06.120 --> 00:27:13.020 00:27:15.720 --> 00:27:18.840 00:27:18.840 --> 00:27:24.420 00:27:24.420 --> 00:27:32.880 00:27:32.880 --> 00:27:39.420 00:27:39.420 --> 00:27:44.820 00:27:44.820 --> 00:27:50.280 00:27:51.900 --> 00:27:52.800 00:27:52.800 --> 00:27:55.560 00:27:55.560 --> 00:27:58.980 00:27:58.980 --> 00:28:04.020 00:28:04.020 --> 00:28:08.940 00:28:08.940 --> 00:28:12.660 00:28:12.660 --> 00:28:17.400 00:28:17.400 --> 00:28:21.540 00:28:21.540 --> 00:28:26.520 00:28:26.520 --> 00:28:30.960 00:28:32.400 --> 00:28:35.820 00:28:35.820 --> 00:28:39.360 00:28:39.360 --> 00:28:43.380 00:28:43.380 --> 00:28:47.460 00:28:47.460 --> 00:28:52.560 00:28:52.560 --> 00:28:57.540 00:28:57.540 --> 00:29:01.260 00:29:01.260 --> 00:29:06.600 00:29:06.600 --> 00:29:11.520 00:29:11.520 --> 00:29:16.680 00:29:16.680 --> 00:29:21.660 00:29:21.660 --> 00:29:28.260 00:29:28.260 --> 00:29:34.200 00:29:34.200 --> 00:29:40.140 00:29:40.140 --> 00:29:44.700 00:29:46.620 --> 00:29:49.080 00:29:49.080 --> 00:29:53.280 00:29:53.280 --> 00:29:56.640 00:29:56.640 --> 00:29:59.820 00:29:59.820 --> 00:30:02.940 00:30:03.960 --> 00:30:08.820 00:30:08.820 --> 00:30:13.860 00:30:13.860 --> 00:30:18.180 00:30:18.180 --> 00:30:22.740 00:30:22.740 --> 00:30:27.600 00:30:27.600 --> 00:30:30.360 00:30:30.360 --> 00:30:34.980 00:30:34.980 --> 00:30:40.680 00:30:40.680 --> 00:30:46.320 00:30:46.320 --> 00:30:52.500 00:30:52.500 --> 00:30:58.680 00:30:59.280 --> 00:31:04.680 00:31:04.680 --> 00:31:09.540 00:31:09.540 --> 00:31:16.020 00:31:16.020 --> 00:31:20.460 00:31:20.460 --> 00:31:25.009 00:31:25.740 --> 00:31:30.840 00:31:30.840 --> 00:31:39.240 00:31:39.240 --> 00:31:45.720 00:31:45.720 --> 00:31:51.720 00:31:52.800 --> 00:31:56.580 00:31:56.580 --> 00:32:02.820 00:32:05.340 --> 00:32:10.140 00:32:10.800 --> 00:32:14.460 00:32:15.060 --> 00:32:18.660 00:32:18.660 --> 00:32:23.220 00:32:23.220 --> 00:32:28.380 00:32:28.380 --> 00:32:33.060 00:32:33.060 --> 00:32:37.740 00:32:37.740 --> 00:32:42.000 00:32:42.000 --> 00:32:45.180 00:32:45.180 --> 00:32:50.700 00:32:50.700 --> 00:32:55.920 00:32:55.920 --> 00:33:00.900 00:33:00.900 --> 00:33:06.420 00:33:06.420 --> 00:33:13.920 00:33:13.920 --> 00:33:18.960 00:33:18.960 --> 00:33:25.620 00:33:25.620 --> 00:33:30.060 00:33:30.060 --> 00:33:34.440 00:33:34.440 --> 00:33:41.340 00:33:41.340 --> 00:33:45.840 00:33:45.840 --> 00:33:51.060 00:33:51.060 --> 00:33:56.880 00:33:56.880 --> 00:34:01.320 00:34:01.320 --> 00:34:05.520 00:34:05.520 --> 00:34:08.340 00:34:08.340 --> 00:34:12.720 00:34:12.720 --> 00:34:16.800 00:34:16.800 --> 00:34:23.820 00:34:23.820 --> 00:34:30.060 00:34:30.060 --> 00:34:34.680 00:34:34.680 --> 00:34:37.380 00:34:37.380 --> 00:34:46.740 00:34:46.740 --> 00:34:50.820 00:34:50.820 --> 00:34:54.420 00:34:54.420 --> 00:34:57.900 00:34:57.900 --> 00:35:02.280 00:35:03.480 --> 00:35:09.300 00:35:09.300 --> 00:35:13.800 00:35:13.800 --> 00:35:19.020 00:35:19.020 --> 00:35:22.740 00:35:22.740 --> 00:35:28.200 00:35:28.860 --> 00:35:33.960 00:35:35.400 --> 00:35:41.340 00:35:41.340 --> 00:35:47.340 00:35:47.340 --> 00:35:52.860 00:35:52.860 --> 00:35:57.660 00:35:57.660 --> 00:36:03.900 00:36:03.900 --> 00:36:10.620 00:36:10.620 --> 00:36:15.480 00:36:15.480 --> 00:36:20.400 00:36:22.560 --> 00:36:27.494 00:36:27.494 --> 00:36:33.420 00:36:33.420 --> 00:36:38.520 00:36:39.240 --> 00:36:45.360 00:36:45.360 --> 00:36:50.160 00:36:50.160 --> 00:36:54.900 00:36:54.900 --> 00:36:58.980 00:36:58.980 --> 00:37:03.120 00:37:03.120 --> 00:37:07.440 00:37:07.440 --> 00:37:12.660 00:37:12.660 --> 00:37:14.040 00:37:14.040 --> 00:37:17.880 00:37:17.880 --> 00:37:22.920 00:37:22.920 --> 00:37:25.680 00:37:25.680 --> 00:37:29.760 00:37:29.760 --> 00:37:34.080 00:37:34.080 --> 00:37:36.660 00:37:36.660 --> 00:37:42.300 00:37:42.300 --> 00:37:46.740 00:37:46.740 --> 00:37:50.940 00:37:50.940 --> 00:37:56.580 00:37:56.580 --> 00:37:59.400 00:38:01.020 --> 00:38:06.900 00:38:06.900 --> 00:38:11.340 00:38:11.340 --> 00:38:16.320 00:38:16.980 --> 00:38:21.060 00:38:21.060 --> 00:38:28.440 00:38:30.960 --> 00:38:36.900 00:38:36.900 --> 00:38:41.580 00:38:43.440 --> 00:38:48.000 00:38:48.000 --> 00:38:53.520 00:38:53.520 --> 00:38:58.680 00:38:59.520 --> 00:39:02.100 00:39:02.100 --> 00:39:07.080 00:39:07.080 --> 00:39:12.060 00:39:12.060 --> 00:39:17.580 00:39:17.580 --> 00:39:22.560 00:39:23.940 --> 00:39:30.180 00:39:30.180 --> 00:39:35.460 00:39:35.460 --> 00:39:42.720 00:39:44.580 --> 00:39:48.000 00:39:48.960 --> 00:39:53.340 00:39:57.300 --> 00:40:02.580 00:40:02.580 --> 00:40:07.560 00:40:07.560 --> 00:40:12.000 00:40:13.380 --> 00:40:16.260 00:40:16.260 --> 00:40:22.620 00:40:22.620 --> 00:40:27.750 00:40:27.900 --> 00:40:30.116 00:40:31.467 --> 00:40:38.611 00:40:38.820 --> 00:40:42.300 00:40:42.300 --> 00:40:48.180 00:40:48.180 --> 00:40:52.680 00:40:52.680 --> 00:40:57.720 00:40:57.720 --> 00:41:03.360 00:41:03.360 --> 00:41:10.277 00:41:10.277 --> 00:41:16.440 00:41:16.440 --> 00:41:21.420 00:41:21.420 --> 00:41:28.380 00:41:28.380 --> 00:41:34.320 00:41:34.320 --> 00:41:38.340 00:41:38.940 --> 00:41:44.160 00:41:44.160 --> 00:41:49.080 00:41:49.080 --> 00:41:54.480 00:41:54.480 --> 00:42:01.200 00:42:01.200 --> 00:42:06.360 00:42:06.360 --> 00:42:11.400 00:42:11.400 --> 00:42:17.040 00:42:17.040 --> 00:42:24.360 00:42:24.360 --> 00:42:31.500 00:42:31.500 --> 00:42:35.400 00:42:35.400 --> 00:42:39.960 00:42:39.960 --> 00:42:43.980 00:42:43.980 --> 00:42:48.660 00:42:48.660 --> 00:42:53.700 00:42:53.700 --> 00:42:55.573 00:42:55.573 --> 00:43:00.060 00:43:00.060 --> 00:43:05.220 00:43:05.220 --> 00:43:10.440 00:43:10.440 --> 00:43:15.660 00:43:15.660 --> 00:43:21.420 00:43:21.420 --> 00:43:27.559 00:43:27.559 --> 00:43:31.674 00:43:31.674 --> 00:43:37.260 00:43:37.260 --> 00:43:41.160 00:43:41.160 --> 00:43:43.860 00:43:43.860 --> 00:43:48.360 00:43:48.360 --> 00:43:51.900 00:43:51.900 --> 00:43:55.020 00:43:55.020 --> 00:44:00.300 00:44:00.300 --> 00:44:05.700 00:44:05.700 --> 00:44:11.220 00:44:11.220 --> 00:44:15.600 00:44:15.600 --> 00:44:19.320 00:44:19.320 --> 00:44:22.800 00:44:22.800 --> 00:44:25.740 00:44:25.740 --> 00:44:30.540 00:44:30.540 --> 00:44:35.400 00:44:35.400 --> 00:44:40.620 00:44:40.620 --> 00:44:45.120 00:44:45.120 --> 00:44:48.840 00:44:48.840 --> 00:44:53.280 00:44:53.280 --> 00:44:58.320 00:44:58.320 --> 00:45:03.480 00:45:03.480 --> 00:45:07.500 00:45:07.500 --> 00:45:11.580 00:45:11.580 --> 00:45:15.060 00:45:15.060 --> 00:45:19.200 00:45:19.200 --> 00:45:20.940 00:45:20.940 --> 00:45:25.680 00:45:25.680 --> 00:45:30.600 00:45:30.600 --> 00:45:35.223 00:45:35.223 --> 00:45:38.879 00:45:38.879 --> 00:45:46.366 00:45:46.366 --> 00:45:52.279 00:45:52.279 --> 00:45:54.540 00:45:54.540 --> 00:45:58.680 00:45:58.680 --> 00:46:04.380 00:46:04.380 --> 00:46:10.380 00:46:10.380 --> 00:46:14.040 00:46:14.040 --> 00:46:17.460 00:46:17.460 --> 00:46:22.140 00:46:22.140 --> 00:46:25.440 00:46:25.440 --> 00:46:30.540