2 дня назад была выложена вторая dev-сборка движка Godot Engine 4.6. По списку изменений обновление обещает быть достаточно масштабным! Я решил перевести официальную статью на русский с основным списком изменений.
Часто пользователи просили возможность собирать движок как отдельную библиотеку. Раньше это не было в приоритете из-за архитектурных особенностей движка, но со временем возникли сценарии, где доступ к Godot в изолированном виде необходим. Пока это не полноценная и официально поддерживаемая интеграция, Gergely Kis проделал работу, позволяющую иметь функциональную базу (внутренне называемую LibGodot) — теперь есть базовая поддержка GodotInstance как точки входа для таких специализированных рабочих процессов.
Другой частый запрос — нормальный инструмент профилирования ObjectDB, который можно считать «сердцем» структуры Object. Первый контрибьютор Aleksander Litynski реализовал ObjectDB Profiler. С его помощью можно делать снимки текущего состояния ObjectDB во время отладки и сравнивать их между собой — экспортировать диффы между состояниями стало гораздо проще и доступнее.

Существующий упрощатель мешей поддерживал схлопывание рёбер, но не умел упрощать сами компоненты. Arseny Kapoulkine исправил это, позволив топологически сложным секциям больших мешей проще достиать требуемого уровня детализации.

В 4.6 уже появилось много улучшений в работе с 3D-пространством; стоит отметить два момента, присущих многим 3D-редакторам. Robert Yevdokimov расширил 3D-Transform gizmo так, чтобы визуализировался текущий дельта-угол при операции вращения (повороты, превышающие 360°, не накапливаются).
А пользователь passivestar добавил привязку орбиты в 3D Viewport: при удержании Alt и выходе из орбитального панорамирования вид будет «защёлкиваться» с шагом 45°, что похоже на переключение в ортографический вид, но удобнее при орбитальном управлении.
HDR набирает популярность, но поддержка его в приложениях отстаёт, поскольку большинство программ исторически проектировалось под sRGB и требует доработки для корректной работы с HDR. Allen Pestaluky внёс PR, который улучшает визуальное качество и подготавливает движок к поддержке HDR-выхода.
Первое изменение — смешивание эффекта свечения (glow) выполняется до тонемаппинга для всех методов рендеринга и всех режимов смешения (кроме soft light). Раньше это было только в Compatibility renderer, теперь — также в Mobile и Forward+. Смесь до тонемаппинга даёт более реалистичное поведение свечения, избегая жёстких краёв и сдвигов оттенков при смешивании после тонемаппинга.

Второе изменение — смена режима смешения по умолчанию с soft light на screen для всех рендереров (аналогично тому, как это было в Compatibility). Это технически ломает обратную совместимость (будут заметные визуальные различия), и простая перенастройка не вернёт старое поведение, но в большинстве случаев это считается улучшением. Если ваша игра использует Glow, стоит обратить внимание на это изменение.

Пользовательский список выбранных изменений (не всё перечислено):
Core: добавлен reserve_exact в CowData, изменение фактора роста на 1.5x.
Core: добавлена функция reserve для Array, Vector и String.
Core: добавлены уникальные ID узлов для поддержки рефакторинга базовых и инстанцированных сцен.
Documentation: снят ярлык экспериментальности у интеграции Jolt Physics.
Editor: добавлены элементы управления скоростью игры в встроенном окне запуска.
Editor: добавлены номера строк источника в местоположениях файлов при генерации POT.
Editor: сделать часть файла в ошибках/предупреждениях кликабельной в панели Output.
Editor: переработаны доки редактора. Editor: хранение состояния встроенных (built-in) скриптов.
GDScript: добавлено опциональное предупреждение при вызове корутины без await.
GUI: добавлено свойство pivot_offset_ratio для Control.
GUI: автопрокрутка при выборе текста за пределами видимой области в RichTextLabel.
GUI: визуализация отступов MarginContainer при выборе.
Import: OBJ - поддержка bump multiplier (масштаба нормалей).
Network: добавлена поддержка UNIX domain sockets в ядре.
Physics: опции конвертации примитивов для MeshInstance3D.
Physics: MultiMesh физическая интерполяция для 2D-трансформов (MultiMeshInstance2D).
Rendering: material debanding для Mobile-метода рендеринга.
Rendering: реализованы motion vectors в compatibility renderer.
Rendering: сделаны OpenXRCompositionLayer и дочерние элементы безопасными для многопоточной отрисовки.
Оригинал: https://godotengine.org/article/dev-snapshot-godot-4-6-dev-2/