Випуск відкритого ігрового двигуна Godot 3.4

Після 6 місяців розробки опубліковано випуск вільного ігрового двигуна Godot 3.4, що підходить для створення 2D-і 3D-ігор. Двигун підтримує простий для вивчення мову завдання ігрової логіки, графічне середовище для проектування ігор, систему розгортання ігор в один клік, широкі можливості анімації та симуляції фізичних процесів, вбудований налагоджувач та систему виявлення вузьких місць у продуктивності. Код ігрового двигуна, середовища проектування ігор та супутніх засобів розробки (фізичний двигун, звуковий сервер, бекенди 2D/3D рендерингу тощо) поширюються під ліцензією MIT.

Вихідні тексти двигуна були відкриті в 2014 році студією OKAM, після десяти років розвитку пропрієтарного продукту професійного рівня, який використовувався для створення та публікації багатьох ігор для PC, ігрових консолей та мобільних пристроїв. Двигуном підтримуються всі популярні стаціонарні та мобільні платформи (Linux, Windows, MacOS, Wii, Nintendo 3DS, PlayStation 3, PS Vita, Android, iOS, BBX), а також розробка ігор для Web. Готові для запуску бінарні збирання сформовані для Linux, Windows та macOS.

В окремій гілці розвивається новий бекенд рендерингу на базі графічного API Vulkan, який буде запропонований у наступному випуску Godot 4.0 замість пропонованих нині бекендів рендерингу через OpenGL ES 3.0 і OpenGL 3.3 (підтримка OpenGL ES і OpenGL буде збережена через забезпечення роботи старого бекенду. /OpenGL 2.0 поверх нової архітектури рендерингу на базі Vulkan). Перехід з Godot 2.1.x на Godot 3 вимагатиме переробки додатків через порушення сумісності на рівні API, але для гілки Godot 4.0.x буде забезпечений тривалий цикл підтримки, термін якого залежатиме від затребуваності строго API користувачами.

Godot 3.4 примітний додаванням наступних новацій:

  • Перероблено інтерфейс користувача для редагування тем оформлення, в якому реалізовано наочний процес вибору вузла та надано можливість зміни оформлення, не залишаючи режим попереднього перегляду.
  • До редактора внесено покращення для підвищення зручності роботи: додано функцію швидкого завантаження ресурсів у режим інспектування, дозволено створення вузла у довільній позиції, додано новий інтерфейс експорту шаблонів, реалізовано додаткові операції з gizmo (система обмежуючих паралелепіпедів) та покращено редактор анімації на основі кривих Безьє.
  • Додано режим відкату змін, що дозволяє скасувати відразу всі зміни сцени, викликані застосуванням анімації через AnimationPlayer, замість скасування зміни кожної властивості окремо.
  • У налаштуваннях додано опцію для зміни рівня масштабування області 2D-view (2D viewport), яку, наприклад, можна використовувати для збільшення або зменшення 2D-елементів, незалежно від поточного режиму розтягування (stretch mode).
  • У File API додано можливість роботи з файлами (у тому числі з PCK), розмір яких перевищує 2 ГБ.
  • Увімкнено зміни для підвищення плавності малювання за рахунок розрахунку змін у кадрах без прив'язки до системного таймера та вирішення проблем із синхронізацією виводу при використанні vsync.
  • У системі обробки вводу InputEvents додано підтримку прив'язки до скенкодів, що відображають фізичне розміщення клавіш на клавіатурі, незалежно від активної розкладки (наприклад, клавіші WASD у розкладці QWERTY будуть автоматично зіставлені з клавішами ZQSD на французькій розкладці AZERTY).
  • Додано інтерфейси AESContext та HMACContext для доступу зі скриптів до алгоритмів шифрування AES-ECB, AES-CBC та HMAC. Також додана можливість збереження та читання відкритих ключів RSA для формування та перевірки цифрових підписів.
  • У двигун рендерингу додано початкову підтримку припинення малювання об'єктів, що потрапляють у фокус камери, але не видимих ​​через перекриття іншими об'єктами (наприклад, що знаходяться за стіною). Растрове (на рівні окремих пікселів) відсікання перекриття буде реалізовано тільки у гілці Godot 4, а в Godot 3 включені деякі геометричні методи відсікання об'єктів, що перекриваються, і підтримка портального перекриття.
  • Додано новий метод тонування ACES Fitted, що дозволяє досягти більшої реалістичності та фізичної точності за рахунок підвищення контрастності яскравих об'єктів.
    Випуск відкритого ігрового двигуна Godot 3.4
  • Додано підтримку форми випромінювання тривимірних частинок у вигляді кільця або порожнистого циліндра.
  • У движку симуляції фізичних процесів значно підвищено продуктивність генерації опуклих об'єктів з мешків та перероблено режим відстеження зіткнень в інтерфейсі інспектування. Для двигуна 2D-фізики додано підтримку структури BVH (Bounding Volume Hierarchy) для динамічного просторового поділу. У движку 3D-фізики реалізована підтримка функції HeightMapShapeSW та додані засоби синхронізації з KinematicBody3D.
  • Додана можливість експортувати 3D-сцени у форматі glTF, наприклад, для відкриття підготовлених у Godot мішів у Blender.
  • Додана підтримка режиму стиснення зображень WebP без втрат, який тепер використовується для стиснення текстур замість формату PNG.
  • У порті для платформи Android додана початкова підтримка API Scoped storage і нового способу завантаження додаткових ресурсів (Play Asset Delivery) для файлів, що виконуються у форматі AAB (Android App Bundle).
  • Для платформи HTML5 реалізовано можливість встановлення у формі додатків PWA (Progressive Web Apps), додано інтерфейс JavaScriptObject для взаємодії між Godot та JavaScript (наприклад, можна викликати методи JavaScript зі скриптів Godot), для багатопоточних збірок реалізовано підтримку AudioWorklet.
  • Для платформи macOS додано підтримку систем на чіпі Apple Silicon (M1).

Джерело: opennet.ru

Додати коментар або відгук