Unity 게임의 윈도우 스토어 포팅 강좌 1/6
1. 'Unity 게임을 윈도우 스토어로 포팅 하는 내용의 점프 스타트' 강좌 슬라이드에 설명을 달아서 포스트 합니다. MVA에 가시면 전체 시리즈의 영상 및 발표자료를 받으실 수 있습니다. (보는 것은 무료이며, Microsoft ID로 로그인이 필요합니다) 세션 영상만 보고자 하실 경우에는 Channel 9에 가시면 로그인 없이 보실 수도 있습니다. (다운로드도 가능)
참고로 MVA는 Microsoft Virtual Academy의 약자로서 수많은 교육 자료들이 올라와 있는 사이트입니다. 발표자료 및 영상을 온라인으로 보거나 다운받을 수 있습니다. 최근에 한국마이크로소프트에서 진행한 유니티를 이용해서 간단한 2D 게임을 만들어보는 행사 자료는 아래 링크에 가시면 받으실 수 있습니다.
2. 이번 점프스타트 강좌의 목차 입니다. 이 강좌는 Unity로 만든 게임의 Porting 에 집중하고 있으며, 이와 더불어 Unity 게임을 개발하는 것과 관련한 강좌도 있습니다. (아래 URL)
Developing 2D & 3D Games with Unity for Windows Jump Start – MVA (영상 및 슬라이드)
Developing 2D & 3D Games with Unity for Windows Jump Start - Channel 9 (영상)
3. 첫 번째 모듈인 Getting Started 부분을 시작해봅시다. 필요한 시스템이나 도구 등에 대해서 이야기 할 것입니다.
4. Windows Store 및 Windows Phone개발을 위해서 사전에 필요한 것은 위 표에 나온 것과 같습니다. 운영체제는 최소 Windows 8이상 있어야 합니다. (없다면 90일 무료 평가 판을 활용할 수도 있습니다.) Unity는 4.5 버전 이상이 필요하며 무료 버전도 상관 없습니다. Visual Studio 2013도 필요하며 평가 판이나 무료인 Express 버전도 사용 가능합니다. (학생은 DreamSpark, 스타트업은 BizSpark 프로그램으로 무료로 Visual Studio 유료 버전을 사용할 수 있습니다.) 개발자 계정은 최근 개발자센터 혜택을 통해 무료로 받으실 수 있습니다.
윈도우폰은 Visual Studio에 포함된 에뮬레이터가 성능이 좋아서 실제 디바이스가 없이도 개발할 수 있으며, 2014년 말까지 진행하는 유니티 오퍼에 등록하고 게임을 올리면 디바이스를 받을 수도 있습니다. 현재 개발자센터오퍼 프로그램을 이용하시면 기존에 모바일 앱을 만들었던 개수 및 품질에 따라서 개발자 등록 토큰 및 스토어 기프트 카드, 컨설팅, 광고, 마케팅 등을 받을 수 있습니다.
5. 개발 도구와 관련된 정보들을 이야기 하겠습니다.
6. 윈도우 스토어와 윈도우 폰으로 유니티 게임을 익스포팅하는 데모 입니다. 데모에서는 유니티 에디터에서 윈도우8 혹은 윈도우폰8 플랫폼을 선택하고 이를 Build하는 것을 보여줍니다. Universal 8.1을 통해서 Windows 와 Windows Phone을 함께 Build 할 수도 있습니다.
7. 유니티에서 Platform을 Windows Store를 선택하면 SDK에 4가지(8.0, 8.1, Phone 8.1, Universal)를 선택할 수 있습니다. 더 많은 플랫폼 지원을 위해서 Windows와 Windows Phone 모두에 출시하는 것을 권장합니다.
8. Universal로 진행할 경우에 플랫폼 특화 내용이 있는 Windows 8.1과 Windows Phone 8.1용 프로젝트와 공통 내용이 Shared 프로젝트가 생기게 됩니다.
9. 출시를 위해서는 Master로 설정을 하고, PC에서 구동되기 위해서는 x86을 선택해줍니다. (Release에서는 Profiler가 켜져 있는 설정이다)
10. 현재 Windows Phone 플랫폼으로는 8.0과 8.1을 각각 타겟팅할 수 있다. 8.0을 타겟팅하면 8.1 플랫폼에서는 구동되지만 반대로는 되지 않습니다. 8.1 플랫폼의 향상된 내용을 쓰고 싶다면 8.1 패키지와 8.0 패키지를 모두 만드는 것을 권장합니다. Windows 플랫폼도 마찬가지로 8.0으로 만들었을 경우에는 8.1에서도 구동되며, 반대는 안 됩니다. 그리고 Universal App을 유니티에서도 지원해서 각각의 플랫폼 특화된 프로젝트와 공유되는 Shared 프로젝트가 있게 빌드를 할 수도 있습니다.
11. 이미 설명한 Universal 솔루션의 구조는 이와 같습니다. 각각의 플랫폼용 패키지는 따로 만들고, 각각의 스토어에 올려줘야 합니다. 대신 같은 이름의 경우는 스토어간에 연관을 시켜줄 수 있고, 이렇게 되면 두 개 플랫폼에 같이 앱(게임)이 있다는 것을 알 수 있습니다.
12. 유니티 4.5.3부터 유니버셜앱으로 빌드하는 것을 지원하기 시작했습니다. 프로젝트 타입은 두 가지가 있는데 둘다 XAML을 통해서 UI와 관련한 부분(예를 들면 IAP, Facebook 통합 등)에 대한 것을 처리할 수 있습니다. 유니티 개발자들은 C#으로 스크립트를 작성하는 경우가 많기 때문에, 여기에서도 C#을 하는 것을 권장합니다. C++의 경우 성능이 조금 더 나을 수는 있습니다.
13. Windows Store Build 세팅에 대한 내용 입니다.
14. 윈도우 플랫폼 특화된 내용에 대한 설명입니다. 유니티 쪽에서 미리 설정을 할 수도 있고, Visual Studio의 .appxmanifest에서 설정을 할 수도 있습니다.
15. Windows Phone 8의 경우는 선택할 수 있는 것이 더 적습니다. Windows Phone 8.1 용으로 빌드하기 위해서는 Windows Store에서 선택할 수 있습니다.
16. Player pref과 app manifest가 Windows Store보다 더 적습니다.
17. 유니티에서 최대한 많이 설정을 하고, 이후에 Visual Studio에서 추가하는 것을 권장합니다. 개발 중에 추가로 re-expor하면 관련 내용들이 덮어씌워질 수 있으므로, Visual Studio 쪽에서 추가 및 변경을 많이 할 경우에는 소스코드 컨트롤러이나 Merge/Diff 도구를 쓰는 것도 고려할 수 있습니다.
18. 윈도우폰 에뮬레이터의 기능에 대한 데모를 보여줍니다.
19. 폰의 경우 다양한 에뮬레이터를 볼 수 있고, 실제 디바이스가 아닌 에뮬레이터에서 구동할 경우에는 x86으로 설정을 해야 구동이 가능합니다.
20. Windows Phone Build를 하는 과정에 대해서 정리를 한 슬라이드 입니다.
21. Windows 는 Simulator가 있어서, Windows Tablet 환경을 시뮬레이션 해볼 수 있습니다.
22. Windows 8.x 빌드를 배포하는 방법이며, 로컬 머신과 시뮬레이터에 따라서 각각 설명합니다.
23. VS에서 타겟 설정에 대한 설명입니다. 스토어 출시를 위해서는 반드시 Master로 설정을 하길 바랍니다. Release의 경우는 Profiler가 있습니다.
24. Export된 폴더 구조에 대해서 설명 합니다. Data 폴더의 경우 새로 Export를 하면 계속 덮어씌워지는 폴더입니다. 유니티에서 만든 게임이나 설정들이 들어가게 됩니다.
25. 정리하면 유니티 에디터로 동일하게 게임을 개발하고, Visual Studio 솔루션으로 Export 합니다. 프로젝트 설정은 유니티나 Visual Studio에서 할 수 있으며, 배포 및 디버깅 할 수 있습니다.
(내용 중 문의가 있으시면 댓글이나 우측 상단의 이메일 보내기를 통해서 문의 주시길 바랍니다.)