Який рушій обрати для створення VR-гри: Unity чи Unreal Engine
Всім привіт, мене звати Михайло Буравков, я CEO компанії ByOwls, яка займається розробками VR ігор, продуктів для Virtual Production та VR стримінгової системи. Це буде перша частина блогу, в якій я розповім про розробку VR ігор та вибір ігрового двигуна для цих цілей.
Історія становлення VR
Для цього нам потрібно більш детально розглянути історію розвитку віртуальної реальності та спробувати спрогнозувати, що її чекає у недалекому майбутньому.
Перший прототип віртуального шолому з’явився ще в далекому 1957 році — називався він Sensorama, і був першим прикладом застосування технології мультисенсорного занурення. Він був дуже громіздкий, коштував шалених грошей і мав на меті, в першу чергу, демонстрацію нових можливостей новітньої технології.
Наступною важливою історичною датою у розвитку технологій віртуальної реальності став 1984 рік, коли NASA спробувала створити «Віртуальну робочу станцію» — саме їх технології випередили час. Вони перші розробили шолом, з можливістю трекінгу рук, взаємодії та відображення повноцінної тривимірної (3D) комп’ютерної графіки, але технологія все одно залишалася надто дорогою для масового використання. Потрібно було ще багато часу, аби з’явився справді народний шолом, який буде по кишені можливо не кожному, але вже доступним для реальних поціновувачів новітніх технологій.
фото з сайту vrtifacts.com
Революція розвитку VR настала в 2011 році з появою прототипу Oculus CR1. Незважаючи на те, що проект планував бути некомерційним, низка випадкових подій допомогла розробникам провести демонстрацію можливостей прототипу VR шолому Rift на E3 2012 року у грі Doom 3, як одну із технологій 3D.
фото з сайту vrtifacts.com
Невдовзі була запущена краудфандингова компанія на 250 тисяч доларів і розробники всього за 4 години зібрали потрібну суму, а вже за деякий час закрили збір на відмітці в майже 2.5 млн доларів. В березні 2014 року компанія Oculus VR була куплена за 2 млрд доларів компанією Facebook — саме з цієї дати почалася сучасна історія розвитку віртуальної реальності.
Ця передісторія показує нам, який довгий та тернистий шлях пройшов VR та на якому етапі знаходиться зараз, а тепер давайте поговоримо про цифри.
Цифри на ринку VR
Обсяг світового ринку гарнітур для віртуальної реальності (VR) та доповненої реальності (AR) у 2021 році досяг 11,2 млн штук, збільшившись на 92,1% порівняно з показником річної давності, такі дані аналітики IDC оприлюднили 21 березня 2022 року.
Згідно з дослідженням IDC, домінуючим AR/VR-пристроєм у світі за підсумками 2021 року став шолом Oculus (Meta) Quest 2 — його ринкова частка склала 78%. На другому місці розташувалася популярна на азіатських ринках гарнітура DPVR із показником присутності близько 5%. Замкнула трійку лідерів VR-модель Pico VR від ByteDance, яка мала успіх не тільки в Азії, як DPVR, а й на ринках Північної Америки та Західної Європи. Ринкова доля пристрою у 2021 році становила 4,5%.
В 2021 ринок VR- та AR-гарнітур досяг $29,5 млрд — очікується, що в наступні п’ять років ринок продовжить зростати в середньому на 27%. До 2027 року його обсяг у грошовому еквіваленті наблизиться до $125 млрд — про це стало відомо зі звіту аналітичної компанії Research& Markets у серпні 2022 року.
Така аналітика дає чітку відповідь, чому розробники активно цікавляться розвитком VR додатків та ігор, тому що саме зараз є вікно можливостей для малих та середніх компаній зайти на ринок VR зі своїми продуктами та спробувати там закріпитися — з кожним роком ця можливість буде все менша, а великі гравці поступово витиснуть незалежні студії та компанії, як це відбувається на класичному ігровому ринку.
Як створювати VR-ігри
Насправді є декілька способів зробити продукт віртуальної реальності, від створення свого ігрового двигуна, що дає великі можливості для розвитку продукту, але є найбільш затратним і таким шляхом можуть піти тільки великі компанії як Valve з їх Half-Life: Alyx, або ж використання найпопулярніших, умовно безкоштовних двигунів для роботи з VR, а саме Unity та Unreal Engine (UE) 4/5.
фото з сайту medium.com
Сьогодні ми будемо розглядати UE4/5 і не тому що він чимось кращий — на даний час саме Unity є найбільш популярним двигуном для віртуальної реальності, і в доказ цього буде достатньо навести дві найпопулярніші гри: соціальну мережу VRChat та технологічний шутер Boneworks.
Ми будемо розповідати про UE4/5, тому що на нашу особисту думку, він має більшу перспективу у технічному плані. Опираючись на свій досвід розробки та свої міркування, чому саме цей двигун може бути передовим у VR в недалекому майбутньому.
Давайте перечислимо декілька відчутних переваг:
- виконання UE blueprints (візуальне кодування) в п’ять, а в деяких випадках, в десять разів швидше за Unity Visual Scripting;
- знання С++ має свої переваги, він складний для вивчення, але універсальний, після нього ви без великих зусиль зможете оволодіти і іншими мовами включаючи C#, також С++ використовують для написання кастомних двигунів;
- двигун є передовим у питанні графічного рендерингу;
- мобільна оптимізація на даний час є найбільш передовою, завдяки постійному розвитку гри Fortnite, яка є флагманом Epic Games та демонстрацією можливостей двигуна;
- впровадження деяких технологій в UE5, які раніше не мали підтримку у VR, наприклад Nanite та Lumen.
*Lumen — динамічна система глобального освітлення та відображень в UE5.
*Nanite — технологія, яка автоматично масштабує геометричну деталізацію в режимі реального часу в залежності від відстані до об’єкту, вона має замінити LOD (Level of Detail), які розробники використовують для оптимізації графічної частини.
Також хочу перечислити значні переваги Unity, які для багатьох можуть бути вирішальними при виборі двигуна для своєї першої гри:
- велика кількість документації, туторіалов, які можуть значним чином пришвидшити розробку;
- маркетплейс Unity значно кращий, він має велику кількість плагінів, активів та покупного контенту;
- мова С# не складна у вивченні;
- невеликий поріг входу для незалежних студій, або для створення першого ігрового проекту;
- ціна розробки є дешевшою за рахунок усього вище перерахованого.
Наша команда ByOwls є розробником мультиплеєрної VR гри — Rival Rides, з релізами на SteamVR, Oculus та Pico, саме тому ми знаємо що потрібно розуміти при плануванні розробки гри на PCVR та на Mobile VR.
Найголовніше питання, яке буде стояти перед розробником — оптимізація — саме це повинно бути в основі планування проекту: це стосується як PCVR, так і Mobile VR платформ, особливо останньої. Розробник повинен чітко розуміти можливості шоломів, кількість полігонів на сцену, розміри текстур та інші обмеження, які буде накладати на вас даний тип розробки. RenderDoc з його аналітикою буде вашим найліпшим другом.
RenderDoc — це налагоджувач кадрів з відкритим вихідним кодом, який можна використовувати для аналізу окремих кадрів в іграх. Він може забезпечити поглиблений аналіз окремих кадрів з будь-якої програми, що використовує Vulkan, D3D11, OpenGL та OpenGL ES або D3D12. Також дозволяє користувачеві маніпулювати захопленим кадром для перевірки різних речей, таких як карти текстур, моделі, активи та багато іншого. RenderDoc також може захоплювати ресурси поза увагою ігрової камери та підтримує аналіз витрат на рендеринг кадрів на графічному процесорі.
фото з сайту renderdoc.org
В залежності від проекту, вам буде необхідно тримати в голові цифри, пов’язані с обмеженнями, які на вас накладають VR шоломи, а саме: використання не більше ста тисяч полігонів на одну сцену; додавання текстур з резолюшеном 512, або не більше 1к для великих активів; обмеження використання частинок у VFX; зменшення, або повний відказ від використання опасіті у матеріалах (прозорих матеріалів); правильне налагодження конфігурацій проекту, використання типу згладжування MSAA в параметрах 2x та інше.
Ці знання та рекомендації допоможуть вам правильно спланувати всі шляхи та етапи розробки проекту, від оптимізованого створення моделей, до реалізації ігрових логік.
UE4/5 має доступну і не складну систему візуального кодування — це ті самі блюпринти, які допоможуть зекономити час при розробці проекту. Звичайно ви не зможете обійтись без базових С++ класів, які будуть використовуватися для створення блюпринтів, але майже уся гра може бути написана саме на них, так як час є найціннішим ресурсом. Тому не варто слухати історії про ААА компанії, які ніколи не використовують блюпринти, так як це нібито сповільнює виконання скриптів. В цьому є правда, але не вся та не для всіх — на мою думку ви навряд чи знайдете ігровий проект, який цілком і повністю створений на С++ об’єктах — так як в цьому просто не має сенсу, коли для цього існує готовий та швидкий інструмент — я впевнений всі добре розуміють, що час дорівнює гроші.
фото з сайту docs.unrealengine.com
Двигун UE4/5 є кросплатформленим, тому у вас не буде проблем з портами на декілька різних платформ, наприклад, як на мобільні Oculus Quest та на HTC Vive, який рендерить візуальну частину за допомогою графічної карти вашого комп’ютера — достатньо буде встановити потрібні SDK та налаштування.
Важливим елементом великої економії ресурсу є інструменти, або плагіни які ви можете знайти на маркетплейсі Epic Games.
Ми самі є розробниками одного з найбільш популярних плагінів — Virtual Plugin — для роботи з сінематиками для ігрових сцен, який використовують сотні ігрових компаній по всьому світу. Тому, якщо ви знайшли інструмент, який допоможе вам у роботі, який зекономить ваші сили — обов’язково його використайте, нехай це буде фреймворк, або блюпринт з ігровою логікою. Ви завжди зможете допрацювати його для своїх потреб — це реально збереже вам безцінний час, який ви зможете використати на поліровку, або тестування гри на кінцевих етапах розробки.
фото з сайту forums.unrealengine.com
Це тільки вступна частина про ігрові двигуни та VR, в наступній частині ми більш детально поговоримо про ігрові активи, плагіни та інші інструменти, які можливо будуть вам у нагоді при розробці вашої першої гри, тому ми й надалі обов’язково будемо ділитися з вами своїм досвідом та цікавою інформацією, до зустрічі на DOU та у віртуальних світах!
Немає коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарів