Тип | ігровий рушій |
---|---|
Розробник | 4A Games, Україна |
Перший випуск | гра Metro 2033 (16 березня 2010) |
Стабільний випуск | Metro: Last Light (в розробці) |
Платформа | ПК Xbox 360 PlayStation 3 |
Операційна система | Microsoft Windows, OS X, Linux |
Мова програмування | C++ |
Ліцензія | пропрієтарна ліцензія[d] |
Вебсайт | Сторінка рушія |
4A Engine — ігровий рушій, розроблений українською компанією 4A Games для використання у своїй відеогрі «Metro 2033», виданій THQ 16 березня 2010 року. 4A Engine є внутрішнім рушієм компанії і не пропонується для ліцензування. Рушій використовує API DirectX версій 9, 10 і 11, OpenGL версії 3.2, а також технології компанії Nvidia: фізичний рушій PhysX[1] і систему стереозображення Nvidia 3D Vision[en].
Системні вимоги «Metro 2033» | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Рушій розроблено в Україні групою людей, звільнених (за іншою версією вони звільнилися добровільно) з компанії GSC Game World за рік до виходу S.T.A.L.K.E.R.: Тінь Чорнобиля. Перш за все, це Олесь Шишківців та Олександр Максимчук, які працювали програмістами над розробкою рушія X-Ray, використаного в серії відеоігор S.T.A.L.K.E.R. Рушій спочатку створювали з можливістю запуску на персональних комп'ютерах, Xbox 360 і PlayStation 3[2]. Однак версії «Metro 2033» для PlayStation 3 випущено не було.
Шишківців з колегами пішли під час розробки S.T.A.L.K.E.R через те, що X-Ray був «нездатним підтримувати багатонитковість, мав слабку і погано працюючу мережеву модель і просто жахливе керування ресурсами і пам'яттю, що не дозволяє користуватися будь-яким типом потокового передавання даних, і просто рівень його можливостей не підходить для 'next-gen'-консолей», а також мав «жахливий текстовий скриптинг», що, за словами самого Олеся, спричиняло затримки в оригінальній грі.[2]
Гра підтримує багатонитковість так, що тільки PhysX має виділений потік[2], і використовує задачну модель (англ. task-model), без будь-якої попередньої перевірки станів або пре/постсинхронізації, тим самим дозволяючи задачам виконуватися паралельно. Коли під час розробки замірялася швидкодія на Xbox 360, то задачі виконувалися зі швидкістю «приблизно 3000 задач при 30 мс кадрах на Xbox 360 у сценах з сильним навантаженням на центральний процесор і завантаженням усіх апаратних потоків на 100 %». Шишківців також стверджував, що архітектура чипу NV40 графічного процесора RSX у PlayStation 3 виявилася досить зручною для розробки, відзначивши також, що там було й багато «зайвих циклів». Для підвищення продуктивності рушій може використовувати відкладений шейдерний конвеєр (англ. deferred shading pipeline) і теселяцію, а також підтримує HDR (повністю, зокрема й зі зміщенням у блакитному кольорі), відбиття в реальному часі (англ. real-time reflections), колірну корекцію, зернистість і шум, характерні для кіноплівки, і багатоядерну обробку[3].
Гра «Metro 2033» продемонструвала досить непогану реалізацію об'ємного туману, подвійну точність у розрахунках PhysX, розмиття об'єктів, розбиття підповерхонь для шейдерів покриття, parallax mapping для всіх поверхонь і високу геометричну деталізацію на не занадто ресурсномістких LOD-об'єктах.
Завдяки використанню PhysX рушій отримав безліч можливостей, наприклад, руйнування оточення, симуляцію тканини і хвиль на воді, інші елементи, повністю підвладні впливу навколишнього середовища[1]. Звукова частина рушія підтримує 3D-позиціювання, створюючи враження простору і розташування джерела звуку.
Існує думка, що цей рушій створено на базі рушія X-Ray, використовуваного в серії ігор S.T.A.L.K.E.R, а не є оригінальною розробкою. Згодом це вилилося в скандал[4].
Шишківців при цьому стверджував, що портування оригінального рушія на консолі було б надзвичайно складним.[джерело?]
25 січня 2023 року Компанія 4A Games випустила офіційний інструментарій Exodus SDK для створення модифікацій до Metro Exodus. Exodus SDK абсолютно безкоштовний, вам потрібна лише базова гра Metro Exodus або Metro Exodus Enhanced Edition на акаунті в Steam, GOG або Epic Games Store. Це багатофункціональний редактор із широкими можливостями, що дозволяє створювати самостійні проєкти. Головною умовою є некомерційне використання.[5]
Exodus SDK включає редактор сцени, редактор моделей, інструменти для створення AI-map, інструменти для налаштування ландшафту, погоди та багато іншого. Редактор Visual Script дозволяє створювати ігрові сценарії з урахуванням візуально зрозумілої системи скриптів без написання коду.
Для встановлення Exodus SDK знадобляться додаткові 31 ГБ на диску, не враховуючи базову гру. Редактор працює лише під Windows 10 та використовує DirectX 12.[6]