Unreal Engine — Вікіпедія

Unreal Engine
ТипІгровий рушій
РозробникEpic Games, Inc.
Стабільний випуск5.4 (23 квітня 2024; 7 місяців тому (2024-04-23))
ПлатформаПК
Mac
GameCube
Xbox
Xbox 360
Xbox One
Nintendo GameCube
Nintendo Switch
Wii
Wii U
PlayStation 2
PlayStation 3
PlayStation 4
PlayStation Portable
PlayStation Vita
iOS
Android[1]
Операційна системаMicrosoft Windows
Linux
Мова програмуванняC++[2], UnrealScript,
C#
ЛіцензіяProprietary,
UDK вільна для некомерційного використання[3][4]
Вебсайтwww.unrealengine.com

Unreal Engine — ігровий рушій, який розробляється та підтримується компанією Epic Games.

Перша гра, створена на цьому рушії — Unreal, з'явилася в 1998 році. Відтоді різні версії цього ігрового рушія використали у більш ніж сотні ігор, серед яких: Deus Ex, Lineage II, Thief: Deadly Shadows, Postal 2, серія ігор Brothers in Arms, серія ігор Splinter Cell, Tom Clancy's Rainbow Six, а також у відомих ігрових серіях Unreal та Unreal Tournament від самої Epic Games. Пристосований насамперед для шутерів від першої особи, рушій використовувався і для створення ігор інших жанрів.

Написаний мовою програмування C++, рушій дає змогу створювати ігри для більшості операційних систем і платформ таких як Microsoft Windows, Linux, Mac OS і Mac OS X, і консолей: Xbox, Xbox 360, PlayStation 2, PlayStation Portable, PlayStation 3, Wii, Dreamcast і Nintendo GameCube. У грудні 2009 Марк Рейн продемонстрував як працює рушій Unreal Engine 3 на iPod Touch і iPhone 3GS[5]. А у березні 2010 робота рушія була продемонстрована на комунікаторі Palm Pre, що базується на мобільній платформі webOS[6].

Для спрощення портування, рушій використовує модульну систему залежних компонентів: підтримує різні системи рендерингу (Direct3D, OpenGL, Pixomatic; раніше підтримувалися Glide API, S3 Metal, PowerVR SGL), відтворення звуку (EAX, OpenAL, DirectSound3D, раніше підтримувалася A3D), засоби голосового відтворення тексту, розпізнавання мовлення (тільки для Xbox 360, PlayStation 3, Nintendo Wii та Microsoft Windows[7][8], також планувалося для Linux і Mac)[9], модулі для роботи з мережею й підтримання різних пристроїв вводу.

Для багатокористувацького режиму гри підтримуються технології Windows Live, Xbox Live і GameSpy, що дає можливість під'єднати до 64 гравців (клієнтів) одночасно[10]. Попри те, що офіційно засоби розробки не містять у собі підтримки великої кількості клієнтів на одному сервері, рушій використовувався для створення MMORPG-ігор.

Основна термінологія

[ред. | ред. код]
Зонування. У камеру не потрапляє жоден портал (пунктирна лінія) червоної зони, тому об'єкти в ній не обробляються зовсім

Усі елементи ігрового рушія представлені у вигляді об'єктів, що мають набір характеристик і клас, який визначає доступні функції. Так само, будь-який клас є «дочірнім» класом об'єкта. Серед основних класів і об'єктів можна виділити такі:

  • Актор (actor) — базовий клас, що містить усі об'єкти, які стосуються ігрового процесу й мають просторові координати.
  • Пішак (pawn) — фізична модель гравця або об'єкта, керованого штучним інтелектом. Назва походить від англ. pawn — той, ким маніпулюють (pawn можна перевести також як пішак, тому такий об'єкт без якої-небудь моделі виглядає, як пішак). Метод керування описаний спеціальним об'єктом, що називається контролером. Контролер штучного інтелекту описує лише загальну поведінку пішака під час ігрового процесу, а такі параметри як «здоров'я» (кількість пошкоджень, після яких пішак перестає функціонувати) або, наприклад, відстань, на якій пішак звертає увагу на звуки, задаються для кожного об'єкта окремо.
  • Світ, рівень (world, game level) — об'єкт, що характеризує загальні властивості «простору», наприклад, силу тяжіння й туман, у якому розташовуються всі актори. Також може містити в собі параметри ігрового процесу, як, наприклад, ігровий режим, для якого призначений рівень.

Для роботи з простими та, як правило, нерухомими елементами ігрового простору (наприклад, стіни) використовується бінарна розбивка простору — увесь простір ділиться на «заповнене» й «порожнє». У «порожній» частині простору розташовуються всі об'єкти, а також лише в ній може перебувати «точка спостереження» під час рендерингу сцени. Можливість повного або часткового поміщення об'єктів у «заповнену» частину простору не виключається, однак може призвести до неправильної обробки таких об'єктів (наприклад, розрахунки фізичної взаємодії) або некоректного рендеру у випадку поміщення туди «точки спостереження» (наприклад, ефект «залу дзеркал»). Усі пішаки, що потрапляють у «заповнену» частину простору, відразу «гинуть».

Порівняння якості деталізації персонажів у різних версіях рушія

Поверхня (surface) є основним елементом бінарного дерева простору. Ці елементи створюються на грані перетину між «заповненою» й «порожньою» частинами простору. Група елементів бінарного дерева простору називається нодом (node, укр. вузол). Цей термін, як правило, вживається в контексті node count — кількість нодів на екрані або в ігровому просторі взагалі. Кількість нодів, одночасно видимих на екрані, впливає на продуктивність під час промальовування сцени. Якщо якийсь нод не потрапляє на екран або повністю перекривається іншими нодами, він не обраховується — це допомагає підвищити продуктивність, особливо в замкнених просторах. Розбивка всього простору на групи нодів називається зонуванням[11]. Для цього іноді використовуються портали[12] — невидимі поверхні, які служать для того щоби вручну розділити великий нод на два менші[13][14]. Крім порталів використовуються антипортали[15], які обмежують зони рендерингу.

Опис «заповнених» і «порожніх» частин простору виконується завдяки набору замкнених тривимірних об'єктів, складених із непересічних поверхонь — брашів (brush, укр. пе́нзель). Цей принцип побудови простору називається конструктивною суцільною геометрією. Геометрія може бути «адитивною» (увесь простір початково «порожній») і «попередньо прорахованою» (початково заповнений матерією простір, пререндерених, англ. Pre-rendered[en]). Браші діляться на три типи:

  • Суцільні (solid) — повноцінно беруть участь у бінарній розбивці простору.
    • Адитивні (additive) — «заповнюють» бінарний простір.
    • Віднімальні (subtractive) — «вирізають» об'єми в просторі.
  • Напівсуцільні (semi-solid) — не впливають напряму на бінарне дерево простору, однак впливають на його фізичну модель. Можуть тільки «заповнювати» простір. Слугують для створення «невидимих» перешкод, а також зниження числа полігонів і нодів[16].
  • Порожні (non-solid) — тільки створюють поверхні, не впливають на бінарне дерево простору. Використовуються переважно для створення об'ємів (volume) — частина простору, яка має властивості, відмінні від властивостей ігрового світу. Об'єми мають пріоритет. Властивості об'єму з великим пріоритетом застосовуються до акторів, що перебувають у ньому. Ігровий світ завжди має мінімальний пріоритет. За допомогою об'ємів можна змінити гравітацію, в'язкість, туман тощо. Об'єми, починаючи з версії рушія Unreal Engine 2, використовуються для створення води (але не водної поверхні).

Версії рушія

[ред. | ред. код]
Ігровий процес Unreal

Unreal Engine 1

[ред. | ред. код]

Дебютувавши в 1998 році зі грою Unreal, Unreal Engine 1 сполучав в одному рушієві графічний рушій, фізичний рушій, штучний інтелект, керування файловою і мережевою системами та готове середовище розробки для ігор UnrealEd. З огляду на рівень продуктивності більшості комп'ютерів того часу, розробники дещо спростили деякі елементи рушія: систему виявлення зіткнень, мережевий код, код контролера для гравця[17].

Деякі технології рушія Unreal Engine були революційно новими, наприклад використання Dynamic scene graph (DSG). Ця технологія надавала змогу працювати низці ефектів для накладення на поверхні:

  • Частково або повністю дзеркальні поверхні.
  • Технологія "варпінгу" (warp) — можливість під час промальовування змінювати зображення однієї поверхні проєкцією зображення паралельною їй поверхнею. Попри те, що низка об'єктів могла безперешкодно переходити через варп-зони (наприклад, пущена гравцем ракета), була присутня велика кількість обмежень на роботу таких зон[18]. Ця технологія виглядала в грі як портали (через які можна було стріляти та проходити, але вони не пропускали звуки), що суттєво випередили свій час. Дизайнери гри додавали до таких порталів чудовий динамічний ефект переливчастої та світної поверхні, у результаті чого портали були однієї з помітних особливостей Unreal 1.
  • Скайбокс (Skybox) — проєктування на поверхні рендеру з іншої точки (яка зазвичай в невеличкому «боксі» (англ. box) з накладеною текстурою неба, звідси й назва Skybox). Простіше кажучи, відображення не лицьової грані полігонів, а зворотної, із заздалегідь накладеною текстурою «неба» на об'єкт. У грі взагалі досить широко використовувався метод масштабування текстур таким способом, що призводило до досить реалістичних (і найголовніше — динамічних, на відміну від ігор попередніх поколінь) картинок навколишнього середовища. Для порівняння, в Quake3 також було динамічне небо, але на відміну від Unreal, там воно абсолютно не виглядало фотореалістичним (маючи, крім того, помилку в декомпресії алгоритму S3TC, що призвела до появи градієнтів). Unreal була однією з перших ігор, що широко використовували мультитекстурування, що надавало змогу (при правильному розміщенні джерел світла й орієнтації відносно пререндерених текстур) досягти ефекту тривимірності поверхонь (хоча справжніх технологій Bump mapping у той час не було ще в жодній грі).

Особливо добре в рушія вийшли неперевершені гало навколо джерел світла, які плавно (а не миттєво) загасали, бувши перекритими краями стін у міру руху гравця; лава й деякі текстури калюж води, у які падали краплі (що виглядають надзвичайно живими й динамічними завдяки використанню процедурних текстур); і фотореалістичне небо. Загалом, гра мала своєрідну графіку, що відрізняє її від інших ігор (тому, що «епоха подібності» ігор одна на одну почалася після її появи).

Спочатку рушій був випущений із підтриманням для двох платформ: IBM PC та Macintosh. Завдяки модульній системі рушія була заявлена можливість портування рушія на приставки «нового покоління» того часу й пізніше був успішно використаний на таких платформах як GameCube, PlayStation 2 і Xbox. Також підтримувалася незалежність мережевого коду від платформи клієнта, тобто користувачі Mac OS могли грати в багатокористувацькому режимі Unreal з користувачами Microsoft Windows.

У грі Wheel Of Time рушій Unreal 1 був удосконалений додаванням деталізації текстур при наближенні до них, що забрало один із недоліків графіки — низькодетальні «замилені» поверхні (тому, що гра розроблялася в розрахунку на прискорювачі 3Dfx, що мають усього 4 MB текстурної пам'яті, і часто використовувався метод масштабування, описаний вище).

Unreal Engine 1.5

[ред. | ред. код]

У 1999 році вийшла покращена версія рушія Unreal, призначена для тогочасних комп'ютерів і консолей Dreamcast і PlayStation 2. Були внесені значні доповнення — підтримання лицьової анімації, максимальна роздільна здатність текстур збільшена до 1024x1024, розширювана система «часток», технологія S3TC. Також була інтегрована друга версія редактора UnrealEd. Ця версія рушія використовується в онлайн-шутері Unreal Tournament, і в аркаді Гаррі Поттер і Філософський камінь.

Через кілька років група незалежних розробників UTPG звернулася до Epic Games за доступом до вихідних кодів виконуваних файлів Unreal Tournament, щоби продовжити підтримування гри. Epic Games прийняли пропозицію і якийсь час команда розробників випускала неофіційні патчі для гри[19].

Unreal Engine 2

[ред. | ред. код]
Гаррет, головний герой гри Thief: Deadly Shadows. Рушій Flesh Engine, на основі Unreal Engine 2

Друга версія Unreal Engine побачила світ у 2002 році з появою Unreal Tournament 2003. У ній були практично повністю переписані ядро й механізм рендерингу, а також інтегрована нова версія редактора UnrealEd 3. Крім цього, рушій використовував фізичну підсистему Karma[20]. Інші частини рушія були також поліпшені або змінені для кращої сумісності з PlayStation 2, GameCube і Xbox.

З'явилися такі технології:

  • Рідка поверхня (fluid surface) — плаский об'єкт, що складається з великої кількості полігонів, що імітує поверхню рідини. Такий об'єкт можна помістити на межі з об'ємом води й він буде спотворюватися під дією минаючих через нього об'єктів (наприклад гравця, що пірнає).
  • Листя (foliage) — генеровані на льоту об'єкти, які декорують ландшафт (наприклад, трава).
  • Підтримання VoIP — можливість переговорів через мікрофон з іншими гравцями під час гри.
  • Розпізнавання мовлення — переклад голосу в текст і обробка як команди (наприклад, можливість віддавати ботам команди голосом). Ця технологія використовувала Microsoft Speech API й тому підтримувалася тільки в 32-бітній версії Windows.
  • Складніша фізика тіл, технологія «Карма» (Karma) — обробка дії на тіла не як дію на один об'єкт, а як дію на скелет (Ragdoll) із прив'язкою до нього частин тіла. У кожного суглоба персонажа з'явилися обмежувачі (обертання), ці обмежувачі бувають 2-х видів: шарнірні й лінійні. Лінійні можуть обертатися тільки навколо однієї осі, а шарнірні по всім 3-м. Також сама дія на деякі об'єкти визначається не по коробках колізій, а по складних моделях, які також прив'язані до скелета. Звичайно така технологія використовувалася тільки там де необхідно, наприклад для розрахунків взаємодії із гранатою застосовувалася тільки сфера колізій для економії ресурсів.
  • Фізика Ragdoll (як наслідок переходу на Karma) — попри те що «скелетна» структура об'єктів була реалізована ще в першій версії рушія, можливість використання фізики «ганчіркової ляльки» з'явилася тільки разом із переходом на нову фізичну підсистему.
  • Транспортні засоби (vehicles) — можливість обробляти події від стороннього актора. В Unreal Tournament 2003 реалізовані не повністю, є недопрацьований актор Bulldog. Однак є реалізація[21] рівня для UT2003, на якому перебуває модифікований актор, що виконує всі функції транспортного засобу. Транспортні засоби діляться по типах реалізацій — нерухомі (стаціонарні оборонні установки), складені з декількох об'єктів (Karma vehicle), з використанням скелетної структури і транспортні засоби, що прикріплюються до інших транспортних засобів (наприклад, кулемет на вежі танка). Деякі транспортні засоби можуть діяти без «пілота», керовані власним штучним інтелектом.
  • EAX 3.0 — рушій 3D звуку, розроблений Creative Labs[22].

У зв'язку з переходом на 16-бітну графіку й використання технології Karma, використання варп-зон стало ускладнено.

Unreal Engine 2.5

[ред. | ред. код]

У цій версії був вкотре покращено та оптимізовано графічний рушій — з'явилась підтримка Direct3D 9, OpenGL 2 і Pixomatic (остання система рендерингу слугує для комп'ютерів зі слабкою відеокартою, але потужним центральним процесором). Додана підтримка 64-бітних операційних систем Windows NT і GNU/Linux. Найбільша можлива роздільна здатність текстур досягла розміру в 4096x4096 пікселів, додана повноцінна підтримка юнікоду (16-біт), що дало змогу створювати повністю локалізовані ігри на азійських мовах. У пізніших версіях впроваджений SpeedTree. З'явилася можливість відтворення відео у форматі DivX і Bink. Крім того, була покращена оптимізація рушія, що дозволило досягти більшої продуктивності на тих же обчислювальних ресурсах.

Ця версія рушія була застосована в комп'ютерній грі Unreal Tournament 2004.

Unreal Engine 2X

[ред. | ред. код]
Нові спеціальні ефекти в Unreal Championship (Unreal Engine 2X)

Спеціальна версія рушія для консолі Xbox. Окрім оптимізації коду, мала нові візуальні ефекти, такі як depth of fieldангл. — глибина зору), динамічна гамма-корекція, bloom і різні варіації blur. Формат текстур був змінений для реалістичнішого відображення тіней у високій якості, доданий Memory Tracking, підтримка голосового чату, сервісу Xbox Live, а також функція поділу екрана[22].

Був використаний в Unreal Championship і Unreal Championship 2.

Unreal Engine 2 Runtime

[ред. | ред. код]

Unreal Engine 2 Runtime є спеціальною версією рушія Unreal Engine 2.0 з обмеженою ліцензією. Користувач може завантажити дистрибутив windows-версії рушія з офіційного сайту (для інших операційних систем необхідно придбати ліцензію). У комплекті поставляється редактор карт UnrealEd, утиліта ucc, а також тестовий рівень і невеликий набір моделей і текстур, що демонструють можливості технології «Unreal». Рушій безкоштовний для некомерційних проєктів, а також для використання в освітніх цілях (таких як створення 3D-презентацій). Для використання в комерційних цілях потрібно придбати ліцензію[23][24]. Завантажити безкоштовну версію, іменовану на офіційному сайті як «демо» можна тут.

Unreal Engine 3

[ред. | ред. код]
Пейзаж на Unreal Engine 3 у America's Army 3

UE3 був розроблений з урахуванням персональних комп'ютерів, що використовують сучасні системи рендерингу (DirectX 9/10 і OpenGL 2/3, а з березня 2011 року було додано підтримку DirectX 11), і консолей наступного покоління (PlayStation 3 і Xbox 360). У зв'язку із широким розповсюдженням багатопроцесорних систем рушій використовує два паралельні головні потоки — основний потік (що відповідає переважно за ігровий процес) і потік рендерингу. Крім двох головних потоків можуть бути створені другорядні, які виконують разові задачі[25]. З'явилася підтримка багатопоточного динамічного завантаження даних (streaming), наприклад, завантаження «локації» безпосередньо при переміщенню по ній з метою економії ресурсів.

Оновлений графічний рушій підтримує більшість сучасних технологій, включаючи HDR, освітлення кожного пікселя, динамічні тіні, shader model 4, геометричні шейдери. Сам графічний конвеєр був переведений під керування шейдерів. Від фізичної підсистеми Karma відмовилися на користь іншої за назвою PhysX від компанії AGEIA. Пізніше AGEIA випустила набір додаткових бібліотек до гри, що дозволяють залучити всі можливості фізичної системи (такі як ефект «рідини» або тканини). За анімацію облич персонажів відповідає механізм FaceFX. Оновлена версія EAX до 5-ї[26]. Додана підтримка SpeedTree для генерації дерев. Наголос був зроблений на additive-геометрію, однак від підтримки від'ємної геометрії не відмовилися. Недоліком від'ємної геометрії в першу чергу є набагато триваліші розрахунки освітлення[27]. Представлений новий редактор UnrealEd, переписаний з використанням wxWidgets.

Unreal Engine 3.5

[ред. | ред. код]

У цій версії було додано фільтр постобробки Ambient occlusion, що покращує тіні та освітлення. Було збільшено число оброблюваних персонажів у кадрі. Перероблена на новому рівні технологія динамічної водної поверхні, фізика м'яких тіл і руйноване оточення також значно поліпшені.

У березні 2010 року був опублікований анонс нових можливостей рушія, які будуть представлені на Game Developers Conference 2010. Одним з основних нововведень є нова система розрахунків освітлення Unreal Lightmass, що використовує глобальне освітлення без втрат функцій, які були реалізовані в старіших системах освітлення. Поліпшена робота з багатопроцесорними системами — розподіл завдань між декількома потоками за допомогою Unreal Swarm, а також прискорення компіляції коду C++ і обробка Unreal Script за рахунок Unreal Build Tool (останнє збільшення продуктивності торкнеться тільки розробників або творців аматорських модифікацій). Доданий власний засіб розповсюдження користувацького контенту — Unreal Content Browser. Буде докладніше розказано про Unreal Master Control Program — новий майстер-сервер, для оновлення клієнтів і ведення глобальної статистики, який уже використовується в Gears of War 2. У зв'язку з нововведеннями Epic Games China планує продемонструвати використання рушія для масових багатокористувацьких онлайн ігор[28].

Unreal Engine 4

[ред. | ред. код]
Відео на Unreal Engine 4 з Gears Tactics

18 серпня 2005 року віцепрезидент Epic Games Марк Рейн повідомив, що Unreal Engine 4 вже два роки як перебуває в розробці і його цільовими платформами є персональні комп'ютери й консолі 4-го покоління, а єдиною людиною, що працювала над рушієм, є Тім Свіні. Сам же Свіні на GDC 2006 оголосив, що розробка четвертого Unreal Engine не почнеться раніше 2008 року, оскільки UE3 буде актуальний аж до 2010 року.

9 жовтня 2008 року на TGS група розробників Square Enix повідомила, що вони «бачили наступний Unreal Engine (Unreal Engine 4)» і «не можуть дочекатися можливості попрацювати з ним»[29]. Раніше Square Enix випустила The Last Remnant і «не зустрічалася із проблемами при роботі з Unreal Engine 3».

19 березня 2014 Epic Games представила[30] рушій Unreal Engine 4, примітний повною доступністю сирцевих текстів для сторонніх розробників. Код рушія розміщений на GitHub для передплатників сервісу Epic Games[31]. При цьому кардинально змінена бізнес модель розповсюдження рушія — за 19 доларів на місяць надається повний доступ до всіх компонентів продукту, включаючи середовище Unreal Editor, приклади контенту, шаблони готових ігор та повні сирцеві тексти рушія, написаного на мові C++. Рушій доступний для платформ Windows, Mac OS X, Apple iOS і Android. Також офіційно заявлено про нативну підтримки десктоп-дистрибутивів Linux і Steam OS.

Код рушія може використовуватися в будь-яких комерційних проєктах, але з розробників даних проєктів здійснюється відрахування у розмірі 5% від доходу, отриманого від продажу гри користувачам. Збір відрахувань з доходів від продажу робить рушій Unreal Engine 4 цікавим рішенням не тільки для великих ігрових проєктів, але і для невеликих стартапів і авторів безкоштовних ігор.

Можна відзначити також спільну з проєктом Mozilla ініціативу[32] зі створення HTML5-варіанту рушія Unreal Engine 4, що дозволяє створювати 3D-ігри, що запускаються всередині браузера без використання зовнішніх плаґінів (C/C++ код гри і рушія за допомогою компілятора Emscripten перетвориться в JavaScript з розширеннями статичної типізації Asm.js, для виводу графіки використовується WebGL).

У травні 2020 року з оновленою версією 4.25 Unreal Engine почав підтримувати створення відеоігор для гральних консолей дев'ятого покоління, Xbox Series X та PlayStation 5. Окрім того, було оновлено трасування променів, затінення предметів та звуковий рушій, систему Niagar VFX виведено з бета-тестування[33].

Unreal Engine 5

[ред. | ред. код]
Докладніше: Unreal Engine 5

13 травня 2020 року Epic Games розкрила перші відомості про створення нової версії рушія, продемонструвавши нові можливості Unreal Engine у демовідео під назвою «Lumen in the Land of Nanite» (укр. Люмен у Землях Наніту), створеному на консолі дев'ятого покоління PlayStation 5[34]. Поліпшення найбільше торкнулися анімації, звуку, технічної та графічної складової рушія тощо[35]. Було також представлено дві нові технології: Наніт і Люмен[36]. Рання версія рушія запланована до випуску на початку 2021 року, а повноцінний випуск має відбутися пізніше того ж року[37]. Новий рушій підтримуватиме Microsoft Windows, macOS, iOS та Android, а також не лише восьме, а й дев'яте покоління ігрових консолей, яке розпочнеться з випуском PlayStation 5 та Xbox Series X[38].

Модифіковані Unreal Engine

[ред. | ред. код]

Деякі компанії-розробники воліють використовувати технології «Unreal» як основу для розробки власного рушія. Наприклад, Unreal Engine 2 був спеціально дороблений для гри Thief: Deadly Shadows і отримав внутрішнє ім'я «Flesh Engine».

Відома компанія-розробник Irrational Games однією з перших впровадила у свій Vengeance Engine (заснований на Unreal Engine 2.5) технологію реалістичного освітлення HDR, а також фізичний рушій Havok 2.0 і інші функції, які нині широко використовуються в ігрових технологіях. Цей рушій був використаний в Tribes: Vengeance і SWAT 4.

Гра BioShock від Irrational Games спочатку також використовувала Vengeance Engine, але потім розробники частково замінили його на актуальніший Unreal Engine 3. Модифікована версія стала називатися Vengeance Engine 2.[39]

Ubisoft використовують для своїх проєктів рушії YETI engine і LEAD engine. Примітно, що обидві технології засновано на Unreal Engine 2.5 і застосовуються компанією в іграх нового покоління, а також використовуються на консолях Xbox 360 і PlayStation 3.

Ліцензування та початковий код

[ред. | ред. код]

Наприкінці 1999 року Epic Games опублікувала частину початкового коду виконуваних файлів Unreal Tournament, що допомогло на початкових етапах проєкту Openut з портування рушія й гри на Linux. Через деякий час роботу над проєктом перехопила компанія з розробки відеоігор Loki Games, а підтримка Openut була припинена[40]. Linux-версія Unreal Tournament була випущена в продаж Loki Games.

У цей час, перша версія рушія більше не доступна для ліцензування, однак початковий код, необхідний для створення власних виконуваних файлів, існує у вільному доступі. Варто відзначити, що вони поширюються за «Unreal Retail» ліцензією — тобто тільки для персонального використання[41]. Крім того, у 2004 році був опублікований початковий код гри Rune[42].

Друга версія як і раніше доступна для ліцензування. Epic Games пропонують її для створення ігор на «діючі» персональні комп'ютери або ігорові консолі шостого покоління за суму $350 000 і більше (залежить від кількості підтримуваних платформ)[43].

Для некомерційних проєктів, що не стосуються відеоігор, доступна «закрита» версія Unreal Engine 2 Runtime. Розробка ігор на цій версії рушія суворо заборонена (попри те що конкретного визначення «ігор» у ліцензії немає) через те що «основний дохід Epic Games отримує від створення ігор, і якщо ви прагнете зробити свою гру — зробіть її як модифікацію до існуючого продукту»[44].

Для бюджетних проєктів доступно також ліцензування Unreal Engine 2 Runtime за порівняно низькою ціною (від $8 000). Вартість ліцензії залежить від кількості розробників (числа «робочих місць»). Разом з ліцензуванням хоча б одного «робочого місця» доступне замовлення заголовних файлів другої версії рушія за ціною $5 000[45].

Ціна ліцензування версій 3.0 і старше не публікується, однак згадується що є вибір з різних варіантів ліцензій, у тому числі й для не ігрових продуктів[43].

Попри те, що рушій розроблений для створення відеоігор, його адаптують і для інших цілей — конструкторські, дизайнерські, тренувальні програми та інше.

5 листопада 2009 року був випущений пакет Unreal Development Kit, безкоштовна версія Unreal Engine 3 для некомерційного використання з можливістю купівлі дешевої комерційної ліцензії[46]. Якщо написання ігор на Unreal Engine 2 Runtime було суворо заборонене, то написання ігор з використанням UDK припустиме, однак заборонене на його базі створення продуктів, «які можуть або будуть конкурувати з UDK, а також проміжним ПЗ (middleware) або ПЗ для розробки ігор (game development software) створеним Epic Games»[47].

Відомі ігри, створені на Unreal Engine

[ред. | ред. код]

Більшість відеоігор на Unreal Engine виконані в жанрі 3D-шутера або бойовика, однак серед випущених продуктів є ігри іншого жанру: аркади, рольові ігри, файтинги й різного роду симулятори. Крім того, рушій адаптується для обробки тривимірної графіки в кінематографі й освітніх цілях.

Unreal Engine 1

[ред. | ред. код]

Unreal Engine 2

[ред. | ред. код]

Unreal Engine 3

[ред. | ред. код]

Unreal Engine 4

[ред. | ред. код]

Unreal Engine 5

[ред. | ред. код]

Примітки

[ред. | ред. код]
  1. Ігровий рушій Unreal Engine 3 стане основою для Android-ігор (російською) . hwp.ru. Архів оригіналу за 20 лютого 2012. Процитовано 25 листопада 2010.
  2. Unreal Engine Core (англійською) . BeyondUnreal Wiki. Архів оригіналу за 20 лютого 2012. Процитовано 29 квітня 2010.
  3. Unreal Engine Licensing FAQ. Epic Games. Архів оригіналу за 12 липня 2013. Процитовано 8 листопада 2009.
  4. UDK Licensing. Epic Games. Архів оригіналу за 12 липня 2013. Процитовано 8 листопада 2009. [Архівовано 2013-06-19 у Wayback Machine.]
  5. Anand Lal Shimpi (22 грудня 2009). Epic Demonstrates Unreal Engine 3 for the ipod Touch/iphone 3Gs (англійською) . Anandtech. Архів оригіналу за 20 лютого 2012. Процитовано 22 грудня 2009.
  6. Epic продемонструвала рушій Unreal 3 для webOS (російською) . Palmq Online. 12 березня 2010. Архів оригіналу за 20 лютого 2012. Процитовано 22 грудня 2009.
  7. Fonix Speech joins the Unreal Engine 3 (PDF) (англійською) . Fonix Speech. Архів оригіналу (PDF) за 20 лютого 2012. Процитовано 24 січня 2009. [Архівовано 2010-11-24 у Wayback Machine.]
  8. Fonix Voicein Game Edition (англійською) . Fonix Speech. Архів оригіналу за 17 травня 2008. Процитовано 24 січня 2009.
  9. [Gd-linux] text to speech and speech recognition libraries (англійською) . Daniel, Epic Games Inc. Листопад 2003. Архів оригіналу за 12 липня 2013. Процитовано 24 січня 2009.
  10. Unreal Technology Overview [Архівовано 17 грудня 2008 у Wayback Machine.] — Unreal Engine 3(англ.)
  11. Зонування [Архівовано 6 січня 2011 у Wayback Machine.] — Unreal Wiki (англ.)
  12. Legacy:Zone Portal — Unreal Wiki. Архів оригіналу за 4 вересня 2011. Процитовано 16 березня 2011.
  13. Не слід плутати ноди Unreal Engine із ключовими точками (power nodes) з ігрових режимів Onslaught і Warfare в іграх серії Unreal Tournament
  14. У версії рушія Unreal Engine 3 ввели підтримку аддитивної геометрії, що дозволило відмовитися від зонування
  15. Оптимізація рівнів за допомогою антипорталів [Архівовано 9 червня 2011 у Wayback Machine.] — Unreal Developer Network (англ.)
  16. Semisolid [Архівовано 28 лютого 2011 у Wayback Machine.] — Unreal Wiki (англ.)
  17. Unreal Technology Features (англійською) . Тім Свіні. Архів оригіналу за 12 липня 2013. Процитовано 3 грудня 2008. [Архівовано 2012-02-19 у Wayback Machine.]
  18. Warpzoneinfo — Beyondunreal Wiki [Архівовано 1 квітня 2011 у Wayback Machine.](англ.)
  19. UTPG [Архівовано 24 лютого 2015 у Wayback Machine.] — Working to keep Unreal Tournament Alive!(англ.)
  20. Unreal Technology — Past Versions [Архівовано 10 грудня 2008 у Wayback Machine.] — Unreal Engine 2(англ.)
  21. Опис гри Unreal Tournament 2003 на сайті Gamespy [Архівовано 3 квітня 2011 у Wayback Machine.](англ.)
  22. а б Unreal Engine 2 — Past versions (офіційний сайт) [Архівовано 10 грудня 2008 у Wayback Machine.](англ.)
  23. Unreal Engine 2 Runtime (офіційний сайт) [Архівовано 1 грудня 2009 у Wayback Machine.](англ.)
  24. Unreal Engine 2 Runtime (Unreal Wiki) [Архівовано 5 січня 2011 у Wayback Machine.](англ.)
  25. Xfest 2006: Epic and the Unreal Engine – Graphics Technologies and Rendering Techniques (англійською) . Dr. Michael V. Capps. Архів оригіналу за 20 лютого 2012. Процитовано 24 січня 2009.
  26. Нова MMORPG NOW на рушію Unreal Engine 3. Архів оригіналу за 10 вересня 2009. Процитовано 20 березня 2011.
  27. UT3 Level Design: Additive vs Subtractive [Архівовано 2 квітня 2015 у Wayback Machine.](англ.)
  28. 'Unreal' Engine Technology 2009 Features Trailer: What Can Epic Games Do For You?. G4.com. 25 березня 2009. Архів оригіналу за 12 липня 2013. Процитовано 29 березня 2009. [Архівовано 2013-01-11 у Wayback Machine.]
  29. Last Remnant Team So Cannot Wait For Unreal Engine 4 (англійською) . Kotaku.com. 9 жовтня 2008 рік. Архів оригіналу за 20 лютого 2012. Процитовано 10 жовтня 2008.
  30. WELCOME TO UNREAL ENGINE 4. Архів оригіналу за 20 березня 2014. Процитовано 4 квітня 2014.
  31. В игровом движке Unreal Engine 4.1 обеспечена поддержка Linux. Архів оригіналу за 7 квітня 2014. Процитовано 4 квітня 2014.
  32. Mozilla and Epic Preview Unreal Engine 4 Running in Firefox. Архів оригіналу за 6 жовтня 2014. Процитовано 4 квітня 2014.
  33. Epic updates Unreal Engine to support next-gen development. GamesIndustry.biz (англ.). Архів оригіналу за 9 травня 2020. Процитовано 10 травня 2020.
  34. PS5 Tech Demo Showcases Ridiculous Graphics Of Unreal Engine 5. GameSpot (амер.). Процитовано 24 травня 2020.
  35. Epic Games announces Unreal Engine 5 with first PS5 footage. GamesIndustry.biz (англ.). Архів оригіналу за 20 травня 2020. Процитовано 24 травня 2020.
  36. O'Connor, Alice (13 травня 2020). Unreal Engine 5 revealed with a Tomb Raider-y tech demo. Rock, Paper, Shotgun (амер.). Архів оригіналу за 20 травня 2020. Процитовано 24 травня 2020.
  37. Unreal Engine 5 Announced, Impressive Graphics Showcased In PS5 Tech Demo. GameSpot (амер.). Архів оригіналу за 25 травня 2020. Процитовано 24 травня 2020.
  38. Partleton, Kayleigh; Writer, Staff. Epic Games gives a first look at Unreal Engine 5. pocketgamer.biz. Архів оригіналу за 11 травня 2021. Процитовано 24 травня 2020.
  39. Bioshock, або Unreal Engine 3 іде в маси (російською) . techlabs.by. Архів оригіналу за 23 лютого 2020. Процитовано 4 грудня 2008. [Архівовано 2020-02-23 у Wayback Machine.]
  40. Openut (англійською) . Sourceforge. Архів оригіналу за 20 лютого 2012. Процитовано 22 жовтня 2008.
  41. Unreal Tournament Source Code (432) (англійською) . Filefront. Архів оригіналу за 20 лютого 2012. Процитовано 24 січня 2009.
  42. Rune Source Code (англійською) . Shacknews. 30 вересня 2004. Архів оригіналу за 20 лютого 2012. Процитовано 17 червня 2009.
  43. а б Unreal Engine Licensing Terms. Архів оригіналу за 27 травня 2010. Процитовано 22 березня 2011.
  44. Unreal Engine 2 Runtime EULA. Архів оригіналу за 28 серпня 2009. Процитовано 22 березня 2011. [Архівовано 2009-08-28 у Wayback Machine.]
  45. Unreal Engine 2 Runtime Ordering. Архів оригіналу за 17 вересня 2009. Процитовано 22 березня 2011.
  46. Unreal Development Kit Announced! (англійською) . Beyondunreal. 5 листопада 2009. Архів оригіналу за 20 лютого 2012. Процитовано 5 листопада 2009.
  47. Unreal Engine 3 UDK License Terms (англійською) . Архів оригіналу за 20 лютого 2012. Процитовано 5 листопада 2009.

Посилання

[ред. | ред. код]

Див. також

[ред. | ред. код]
Конкуруючі ігрові рушії