Новости
															
														Хтось може припустити, що статистичні опитування - важлива складова будь-якої діяльності, що дає розгорнуту інформацію про той чи інший процесі. Але не у випадку з портированием ігор. Інформація про те, що 99% розробників асоціюють цей процес зі словом «біль», думаю, не здивує нікого. У зв'язку з цим потрібно розібратися, а як все-таки почати працювати з платформою Windows Phone в зв'язці з Unity . Розбиратися будемо на прикладі останньої версії Unity (на момент написання статті це 4.5.2) і магазинів Windows, і спробуємо зрозуміти, так це складно насправді.
Повідомлення: весь показаний в статті код не є зразком для наслідування, прикладом ідеального коду та інших вигаданих і не існуючих в природі речей. Практики, застосовані в статті, можуть бути одними з безлічі рішень конкретної проблеми. А можуть і не бути.
Для початку нам з вами, очевидно, знадобиться гра. Пара годин нескладного кодування і вимученої геймдізайн подарують нам наступний шедевр ігрової індустрії прямо з 1982 року.

  збільшити 
  Гравець рухає мишею вгору-вниз, кораблик його негайно слухається, снаряди вилітають, здивовані вороги з іншої популярної гри безславно гинуть в безодні Destroy (gameObject).  Загалом, все просто. 
  Тут починається причина болю номер один - підтримка всіх можливих дозволів екранів.  У нашому випадку на допомогу приходить простий скрипт, який ми використовуємо для головної камери в процесі розробки.  Скрипт змінює розмір game view так, щоб він (розмір) відповідав співвідношенню сторін використовуваного екрану. 
  Скрипт на pastebin 
  Для збірки Unity-гри під Windows Phone або Windows 8 (з подальшою публікацією в Store) потрібні   Windows Phone SDK 8.0   (Який включає в себе безкоштовний VS2013 Express), Windows 8 або вище (є   пробна 90-денна версія   ), Обліковий запис Microsoft (   тиц   ), Обліковий запис розробника (студенти можуть отримати її безкоштовно за програмою   DreamSpark   ) І, очевидно, пристрій на потрібній платформі.  Unity, згідно Офіційний документації підтримує емулятори, але працює в них не дуже добре. 
  Обробка введення 
  У випадку з мишею нам практично не потрібно робити додаткових доробок коду - обробка натискань і переміщень миші буде достатньою умовою для того, щоб це все працювало для touch-екранів мобільних пристроїв без зайвого шаманства. 
  Тобто, Input.mousePosition.x буде повертати місце, де зараз знаходиться миша в разі версій для комп'ютера, і координати торкання (будь-якого) в разі влаштування з тачскріном.  Аналогічно і з іншими методами.  Якщо ви розробляєте гру відразу під тач-інтерфейс або хочете обробити якісь специфічні жести, то на допомогу вам прийде   Input.Touch   . 
  Крім того, якщо ви хочете, наприклад, виводити цільові повідомлення користувачам певної платформи, можна використовувати такі конструкції: 
  #if UNITY_EDITOR 
  // код, виконуваний тільки в редакторі unity. 
  Debug.Log ( «Unity Editor»); 
  #endif 
  Для Windows Phone 8 ця директива може виглядати так: 
  #if (UNITY_WP8 &&! UNITY_EDITOR) або просто # UNITY_WP8 
  докладний   список директив і парочку прикладів   можна подивитися в офіційній документації Unity. 
  Щоб зібрати гру, вам потрібно вибрати цільову платформу Windows Phone 8 в меню File - Build Settings. 
  збільшити 
  Після складання Unity згенерує проект Windows Phone Xaml / C #, який потрібно буде скомпілювати в Visual Studio для отримання фінального пакета (XAP) і файлу-маніфесту, які потрібні для безпосереднього запуску гри під Windows Phone.  Налагоджувальний запуск проекту через Visual Studio на реальному пристрої виглядає ось так: 
  З одного боку, це все що необхідно.  З іншого боку, грі може знадобитися оптимізація для відповідності мобільному «заліза».  В цілому, у апаратної частини пристроїв Windows Phone високий ступінь сумісності (додаток, запускається на одному телефоні, без проблем запуститься і на іншому), але зупинимося на основних моментах, які доведеться мати на увазі. 
  збільшити 
  графіка 
  Апаратне прискорення з програмованим GPU і підтримкою Direct3D. 
  дисплей 
  На даний момент підтримуються 4 дозволу екрану: 480х800 (WVGA), 768x1280 (WXGA), 720x1280 (720p) і 1080x1920 (1080p).  Для визначення розмірів екрану можна звернутися до Screen.width і Screen.height прямо з Unity.  Для картинок поза грою (splash-screen, плиток) досить підтримувати дозвіл WXGA. 
  пам'ять 
  Можливі кілька конфігурацій пам'яті: 512 мегабайт для пристроїв з WVGA і як мінімум 1 гігабайт для пристроїв з роздільною здатністю 720p.  На найсвіжіших моделях розмір пам'яті може досягати двох гігабайт. 
  апаратні API 
  Акселерометр встановлений на всіх телефонах з Windows Phone і доступний прямо з Unity, наявність доступу до гіроскопа залежить від його присутності в телефоні.  API для компаса, мікрофона, камери і місця розташування доступні в Unity з версії 4.3 
  Для інтеграції з платформою можна додати в вашу гру підтримку живих плиток і Push-повідомлень, а також монетизацію (пробну версію гри або внутрішньоігрові покупки) 
  Перед відправкою гри в магазин переконайтеся, що у вас є обліковий запис розробника Windows Phone і ліцензійна версія Unity.  Якщо це дійсно так, то швидше за збирайте свою власну гру, відправляйте її в магазин Windows Phone