안녕하세요, 제 이름은 Mark입니다. 저는 수년동안 Unity같은 소프트웨어를 이용하여 게임을 만들고 싶었습니다. Unity는 "컵헤드" ,"네온 화이트", "튜닉"; "아우터 와일즈", "하스스톤", "파이어워치", 심지어 포켓몬 다이다몬드 리메이크에도 사용되었습니다. 그런데 저는 항상 긴 튜토리얼 영상을 볼 때마다 잠이 오더군요 전 다른 사람이 하는걸 보면서 따라하는 것보다 직접 시도해보는게 적성에 더 맞더라고요 그래서 작년에 3단계로 구성된 해결법을 만들었는데, 꽤 효과가 좋았습니다 1. Unity의 기본'만' 배우기, 2. 간단한 시험으로 기본 익히기, 3. 나머지는 게임을 만들면서 알아서 배우기. 제가 해봤더니 정말로 되더군요! 다른 모바일 게임을 배끼는 것부터 시작해서, 자석을 이용한 저만의 퍼즐 플랫포머 게임을; 만들기까지 1년정도 걸렸습니다 그런데 Unity같이 복잡한 소프트웨어의 기본을 어떻게 배워야 하는지 의문점이 들겁니다 저는 대부분의 게임의 들어가는 공통적인 요소를 리스트로 만들었습니다 캐릭터를 화면에 띄우는 방법; 캐릭터를 움직이게 하는 방법, 뭔갈 생성하거나 없애는 방법; 캐릭터의 판정, 게임 오버, 애니매이션, 사운드 등등; 전 이 방법들을 긴 튜토리얼 영상, Unity 문서; 검색, 그리고 수많은 시행착오를 겪으면서 배웠습니다 이 영상의 목적은 여러분이 그걸 겪지 않게 만드는 것입니다 이 영상은 제가 Unity를 배울 적에 봤다면 좋았을 영상입니다 앞으로 40분동안 우리는 Unity를 이용해 플래피 버드를 만들겁니다 플래피 버드를 만들고 싶어서가 아니라, 플래피 버드를 만들려면 제가 아까 말한 요소인 뭔갈 생성하는 것부터 게임 오버까지 전부 필요하기 때문입니다 이 튜토리얼에서는 Unity 설치부터 UI 이해; 프로그래밍, 그리고 당신의 지인들과 공유할 수 있도록 게임을 빌드하는 것까지 배우게 됩니다 그리고 튜토리얼이 끝난 후, 간단한 시험을 통해 기본을 익히게 되고, 그 후로는 스스로 배우는게 가능해질겁니다 괜찮은 것 같나요? 그렇다면 이제 시작하죠. Unity를 다운받는 것부터 시작합시다. 다운로드 후 Unity Hub를 설치하세요 Unity를 사용하려면 계정이 필요합니다. 계정을 만든 후, Unity 에디터 설치 창이 나올겁니다. 설치하세요 *(이 영상에선 2021.3을 사용했지만, 2022를 사용해도 상관없습니다) *(설치 시 약 15분정도 걸립니다 너무 오래 걸리면, Unity Hub를 관리자 권한으로 실행해보세요) 아직 끝난게 아닙니다. 옆에 톱니바퀴 아이콘을 누르고 모듈을 누르면 Visual Studio가 체크되어있는게 보일겁니다 저희는 이 프로그램으로 코드를 작성할 겁니다 Visual Studio를 설치한 후, 이 화면에서 아래로 스크롤하고 "Unity를 활용한 게임 개발"은 체크하고, Unity Hub는 해제합니다 왜냐면 Hub는 이미 설치 되있으니까요. Visual Studio는 계정이 필요없으니 이건 스킵하고, 어차피 나중에 열거니 이 창은 닫아도 됩니다 이제 Unity Hub에서 '새 프로젝트'를 누르고, '모든 템플릿'을 선택하고 '2D 코어'를 선택합니다 '2D 코어'는 2D 게임을 만드는데 적합한 빈 프로젝트입니다 이름을 정하고, '프로젝트 생성' 버튼을 누르세요 첫번째로, 우리는 Unity의 UI를 배울겁니다 다른 패널들을 탐방하면서, 화면에 새를 띄울겁니다 이게 Unity의 기본 레이아웃입니다 4개의 패널로 나뉘어져 있죠 아래에는 프로젝트 패널이 있습니다 여기에는 게임에 들어가는 모든 요소가 포함됩니다 예를 들면 스프라이트, 사운드, 스크립트, 타일, 폰트 등이 있습니다 이중 일부는 Unity에서 직접 만들거지만 다른 곳에서 파일을 드래그해도 됩니다 저는 포토샵에서 새와 파이프의 스프라이트를 만든 후 이걸 프로젝트에 드래그했습니다 전 여러분이 스프라이트를 직접 만들면 좋겠지만 만약 그림을 잘 못그리겠다면 설명에 에셋 다운로드 링크를 확인하세요 왼쪽에는 계층 구조 패널이 있습니다 여기에는 현재 '장면'에 있는 것들이 포함되며 '장면'은 대부분의 게임에서 레벨의 역할을 합니다. 우선 새를 만드는 것부터 시작합시다 계층 구조에서 빈 오브젝트 생성을 누르면 빈 GameObject가 생성됩니다 GameObject는 투명한 컨테이너와 같습니다 위치를 지정하거나 회전할 수 있고; 크기를 조절할수도 있습니다. 그리고 컨테이너 안에 컴포넌트를 넣어 기능을 추가할 수 있죠 예를 들어, '스프라이트 렌더러' 컴포넌트를 넣으면 GameObject에 이미지를 넣을 수 있죠 이 게임의 모든 것들은 '컴포넌트가 있는 GameObject'로 구성되어 있습니다 새, 파이프, 심지어 UI와 카메라까지 이 모든 것들은 오른쪽의 인스펙터