Godot Engine продолжает удивлять игровое сообщество своими регулярными обновлениями и развитием. На этот раз мир разработки игр получил долгожданный Godot 4.5 Beta 2, который является важным шагом на пути к полноценному релизу версии 4.5. По сравнению с первой бета-версией, эта итерация принесла множество исправлений, улучшений и важных изменений, способных удовлетворить даже самых требовательных пользователей движка.
Это демонстрирует серьезное отношение команды разработчиков к качеству и стабильности продукта, а также открывает новые возможности для создателей игр всех уровней. Одной из главных новинок стала интеграция SDL3 — современного набора API, который открывает двери для более удобной и нативной поддержки ввода с джойстиков и других контроллеров. Благодаря тщательной работе первого участника проекта Nintorch, новая система ввода полностью заменила предыдущий метод, значительно расширяя возможности взаимодействия с аппаратурой. SDL3 давно заслужил широкое признание в индустрии за счет своей универсальности и поддержки разных платформ, и теперь Godot полностью соответствует современным стандартам. Более того, это улучшение создает фундамент для внедрения дополнительных функций ввода, которые могут появиться в будущих релизах.
Важное изменение коснулось и самого языка скриптов GDScript, который традиционно занимает центральное место для многих разработчиков в Godot. В ответ на отзывы сообщества и внутренние решения команды было решено заменить ключевое слово abstract на аннотацию @abstract. Несмотря на то что изменение кажется незначительным, оно помогает улучшить читаемость и структуру кода, а также упрощает применение абстрактных классов в проектах. Таким образом, это обновление подчеркивает стремление разработчиков к созданию удобного и продуманного инструментария, который не создаст лишних сложностей для пользователей пространства кода Godot. Хотя функциональность предварительного просмотра сцен с помощью уменьшенных эскизов была ожидаема сообществом, команда приняла трудное решение вернуть эту функцию назад на доработку.
Это решение обусловлено тем, что нововведение оказывало серьезное влияние на производительность и стабильность на стадии бета-тестирования, и в текущем виде оно не соответствует высокому уровню качества, который команда хочет сохранить. Гораздо разумнее будет повторно рассмотреть эту функциональность в версии 4.6, когда появится возможность подробно проработать ее и выполнить все необходимые оптимизации без спешки. Помимо ключевых нововведений, в плане исправлений и улучшений было сделано немало работы над 3D-режимом, аудиосистемой и редактором. Например, фрикулы для камеры в 3D пространстве теперь корректно работают при открытии нескольких видов одновременно, что повысит удобство работы с несколькими сценами.
В аудиосистеме на iOS добавлен запрос разрешений для работы с микрофоном, что важно для приложений, использующих голосовые функции. Веб-версия движка получила исправления утечек памяти, связанных с аудиопроцессингом в браузерах Webkit, что повысит стабильность и производительность игры в онлайне. Встроенная система сборки стала более гибкой, позволив активировать модули lightmapper и xatlas_unwrap на Android и iOS редакторах, что понравится разработчикам мобильных игр. В редакторе появилась возможность переключать отображение UID в свойствах путей, что улучшает навигацию и работу с сценами. Рассмотрим и изменения, которые были сделаны для поддержки экспорта и работы с файлами.
В самой системе экспорта на Android была добавлена поддержка sparse bundle PCK, что способствует более эффективному управлению ресурсами и уменьшает размер экспортируемых данных. Это заметное улучшение особенно актуально для мобильных разработчиков, которые стремятся минимизировать размер своих приложений без ущерба для функциональности. Разработчики скриптов также оценят исправления, связанный с обработкой ошибок в GDScript. Теперь при остановке на ошибке в скрипте ошибка корректно отображается в отладчике, что значительно облегчает процесс выявления и устранения багов. Плюс к этому, поддержка языка и интеграция с LSP (Language Server Protocol) стала более надежной, исправлена работа с URI файлов и добавлены предупреждения о несоответствии рабочего пространства проекта — все это делает процесс программирования более стабильным и прозрачным.
В графической части и визуализации проделана существенная работа. К примеру, исправлены проблемы с режимом двойной точности для модели просмотра, что положительно скажется на точности рендеринга. Также решены вопросы, связанные с неправильно используемой цветовой пространственной гаммой при baked VoxelGI, что улучшит качество освещения в 3D сценах. Кроме того, в GLES3 рендерере исправлены ошибки с выводом стереоизображения, включая корректное отображение sRGB и взаимодействие с эффектом искажения линз, что важно для проектов с поддержкой VR. Команда, занимающаяся XR (расширенной реальностью), не осталась в стороне и добавила возможность запуска гибридных приложений прямо из XR редактора.
Также расширена поддержка OpenXR, включая новый рендер-модели расширения, что открывает новые горизонты для разработчиков смешанной и виртуальной реальности. По части пользовательского интерфейса также были внесены улучшения. На Android учитываются новые изменения в поведении UI после API 35, что позволит разработчикам создавать более удобные приложения с учетом последних требований платформы. Работа над визуальным редактором графов шейдеров получила обновления по сохранению состояния, что делает процесс создания и редактирования визуальных эффектов более плавным и надежным. Все эти доработки стали возможны благодаря активному участию сообщества и многочисленным вкладчикам — за этот релиз было представлено 152 исправления от 82 участников проекта.
Такое количество правок свидетельствует о глубокой работе по улучшению каждого аспекта движка, что положительно отражается на стабильности и производительности Godot. Разработчики не забывают и предупредить пользователей: хотя движок и становится все лучше, на стадии бета-версии возможны ошибки и нестабильности. Поэтому рекомендуют сохранять резервные копии проектов и использовать системы контроля версий для защиты своих данных и времени. Также руководят пользователей к тому, чтобы активно сообщать об ошибках, особенно если обнаруживаются регрессии — проблемы, которые ранее не проявлялись, но появились после обновления. Обратная связь помогает быстро реагировать и править ошибки в новых сборках.
Godot Engine развивается благодаря множеству добровольцев и спонсорам, которые вкладывают свой труд и средства, делая проект максимально открытым и доступным для всех. Для тех, кто хочет поддержать движок, существует возможность пожертвований через фонд Godot, а также другие каналы финансирования. Это позволяет команде сосредоточиться на развитии и нанимать профильных специалистов. В заключение, Godot 4.5 Beta 2 является важной вехой на пути к окончательному релизу.
Интеграция SDL3, улучшения GDScript и многочисленные исправления делают движок еще более привлекательным для использования в самых разных игровых и интерактивных проектах. Несмотря на отказ от части анонсированных функций, таких как превью сцен, команда демонстрирует ответственность и желание предоставить максимально качественный инструмент. Разработчики и пользователи могут с оптимизмом смотреть в будущее, ожидая завершения разработки версии 4.5 и появления новых возможностей в Godot 4.6.
Для всех, кто интересуется современными игровыми технологиями и ищет стабильный и мощный движок с открытым исходным кодом, Godot продолжает оставаться одним из лучших выборов на рынке.