Unity3d vs Unreal Engine 4

Не так давно ми стикнулися з труднощами у виборі, який движок використовувати, Unity3d чи Unreal Engine 4 (UE4). Тому я вирішив написати невелику статтю на цю тему. Тут я коротко опишу переваги та недоліки кожного движка, а також поділюсь аргументами, які вплинули на наш остаточний вибір.

Хоча багато студій розробки ігор використовують власні ігрові движки, існує також величезний ринок інді-розробників, а також великі студії, які потребують ігрового движка, що допоможе створити гру з найкращою графікою та продуктивністю якомога швидше. Unity3d та Unreal Engine 4 є найпопулярнішими ігровими движками, доступними сьогодні. Але, напевно, ви запитуєте себе: "Який ігровий движок мені слід використовувати?". Обидва з них є чудовими ігровими движками, і ваш вибір залежатиме від того, що ви хочете зробити. Можливо, вам подобається простий зручний інтерфейс, або мова програмування є для вас головною справою.

В будь-якому випадку, незалежно від обставин, я спробую провести порівняння та визначити сильні та слабкі сторони кожного движка. Після цього ви зможете вирішити суперечку між Unity3d та Unreal Engine принаймні для вашого поточного проекту та вибрати движок, який найкраще підійде для вас.

Які ігри ви плануєте створити?

Unity3D or Unreal Engine 4

Перше питання, яке ви повинні задати собі: як ви плануєте використовувати цей движок і який тип ігри ви хочете створити? Чи плануєте ви створити 2d аркаду або 3d шутер від першої особи? А може, це буде гібрид 2d-3d? Можливо, ви хочете почати з невеликої гри та розробити просту головоломку з базовою фізикою, або вам більше подобається запускати свою гру у веб-браузері чи на мобільних платформах? Або на ігровій консолі? До речі, як ви плануєте заробляти на своїй грі? Запроваджуючи внутрішньоігрові покупки, рекламу чи просто продаючи повну версію вашої гри?

Відповіді можуть допомогти вам визначити, яке програмне забезпечення, Unreal Engine чи Unity, використовувати. Обидва движки можуть впоратися з будь-якими з цих завдань, але в залежності від того, що ви робите, один з них може бути набагато кориснішим і оптимальнішим за інший.

Якщо ви хочете створити мобільні ігри, Unity є ідеальним рішенням. Просто погляньте на домінування Unity серед розробників мобільних ігор, а також на велику кількість доступних плагінів, які дозволяють використовувати нативні можливості мобільних платформ. Не забудьте про рекламу, внутрішньоігрові покупки, аналітику, ігрові центри тощо. Усе це можна інтегрувати в гру за кілька хвилин. Якщо ваша мета - розробка 2d ігор, Unity також буде відмінним вибором. Хоча останнім часом Unreal Engine 4 робить все можливе, щоб залучити розробників мобільних додатків, обіцяючи ще більші можливості для створення 2d ігор.

Можливо, ви плануєте створити 3D ігри. Unity також є дуже потужним інструментом для цього. Хоча його графічні можливості не такі хороші, як у Unreal Engine 4.

Оскільки наша команда спеціалізується на розробці 2D мобільних ігор, ми обираємо Unity.

Програмування

Unreal Engine 4 використовує C++. Unity3d в основному використовує C# або JavaScript. Повинен сказати, що ми більше надаємо перевагу C#, оскільки раніше ми розробляли ігри на движку LibGDX з підтримкою Java. Перехід з Java на C# не є таким болісним, як на C++. Вибір мови програмування — це справді ваше рішення. Дехто вважає, що C++ застарів, інші можуть буквально молитися за нього. Якщо ви надаєте перевагу будь-якій з цих мов, вибір движка для вас очевидний.

Unity3D або Unreal Engine 4

Але Unreal Engine 4 пропонує рішення для тих, хто боїться високого бар'єру C++. Знайомтеся з Blueprint, візуальним редактором скриптів. Технічно, вам не потрібно писати жодного рядка коду. Це дуже зручно для створення швидких прототипів, і ви навіть можете створити повноцінні ігри за його допомогою. Якщо ви не є майстром програмування, Unreal Engine 4 стане для вас відмінним варіантом. До речі, у Unity є подібне рішення. У Unity Asset Store ви можете придбати розширення для редактора Playmaker, яке також дозволяє розробляти прототипи ігор без написання коду.

Asset Store

Як Unreal Engine 4, так і Unity3d мають свої магазини активів. Там ви можете отримати готові 3D моделі персонажів і середовищ, текстури, а також такі речі, як звуки та системи частинок. Проте, Unity3d явно виграє за кількістю активів у своєму магазині. У нього є все, від генераторів анімації та GUI до розширень для управління штучним інтелектом і ORK Framework для створення RPG. Там є все необхідне для створення гри. Просто заплатіть і насолоджуйтеся :)

Unity3D або Unreal Engine 4

Вартість

Unreal Engine 4 і Unity3d умовно безкоштовні. Повна версія Unreal Engine 4 буде безкоштовною для вас, поки доходи від ігор менше $3,000 за квартал; якщо більше, вам доведеться ділитися 5% свого доходу.

З Unity3d все трохи складніше. Якщо ваші доходи менше $100,000 на рік, ви можете використовувати безкоштовну версію, але вона неповна. Хоча безкоштовної версії достатньо для написання повної гри, їй бракує деяких важливих функцій, таких як заміна стандартного заставки або створення Asset Bundle. За професійну версію Unity3d вам потрібно буде заплатити $1,500 одноразово або придбати підписку за $75 на місяць. Якщо ви розробляєте мобільні ігри, ваші витрати на цьому не закінчуються. Вам доведеться заплатити $1,500 ($75 на місяць) за ліцензію на iOS та Android. Ця особливість Unity3d трохи засмучує нас.

Unity3D або Unreal Engine 4

На відміну від Unity3d, Unreal Engine 4 має ще одну велику перевагу для програмістів — відкритий код. Незважаючи на все, ми врешті-решт обрали Unity3d. І ми анітрохи не шкодуємо про це. Основні аргументи, які нас спонукали, — це зручність і швидкість розробки для мобільних платформ, а також C# як основна мова програмування. Це не означає, що ми не будемо створювати гру на Unreal Engine 4 в майбутньому, але наразі ми залишаємося з Unity.

Цікавитесь витратами на розробку мобільних ігор? Ознайомтеся з нашою новою статтею про те, скільки коштує розробка гри на кшталт Pokémon GO!