Найти тему
ndrew

Godot 4.0 Beta

Оглавление

Godot, кроссплатформенный игровой движок с открытым исходным кодом, постепенно набирает популярность с момента своего первого стабильного выпуска в 2014 году. В связи с неизбежным выпуском Godot 4.0 многие разработчики игр с нетерпением ждут долгожданного выпуска бета-версии 15 сентября.

Какими будут новые возможности Godot 4.0? Какие будут отличия от Unity?

От нового API рендеринга и физического движка до новых узлов, функций GDScript и поддержки API .NET 6 — Godot 4.0 может решить многие проблемы прошлых версий.

Новый API рендеринга

Godot переходит с рендерера OpenGL на Vulkan. Это означает, что освещение в 3D-сценах будет выглядеть значительно лучше.

При сравнении большого количества вызовов отрисовки средство визуализации Vulkan лучше справляется с открытым миром и большим количеством объектов. Рендерер OpenGL, с другой стороны, имеет тенденцию нагружать ресурсы и создавать "узкие места".

Наряду с новым API рендеринга появляются новые узлы, которые добавляют больше деталей в 3D-сцены:

  • Узел VoxelGI — это капитальный ремонт старой системы глобального освещения. Это позволяет получить более тонкое освещение в небольших и средних помещениях.
  • Узел Signal Distance Field Illumination позволяет создавать большие открытые миры с лучшими тенями объектов, преломлением света и многим другим.
  • Узел FogVolume позволяет разработчикам писать шейдеры для сложных деталей тумана и дымки.

Хотя это и не новый узел, внедрение шейдеров Sky позволяет использовать шейдеры для скайбокса, что приводит к динамическому позиционированию и обновлению в реальном времени.

Есть много мелких улучшений, таких как частицы на основе графического процессора, дополнения к сценариям шейдеров и новые методы оптимизации. Но самые значительные изменения стоит изучить подробнее.

Новая физика

-2

При развертывании физики в 3D-сценах Godot исторически полагался на движок Bullet. До этого момента. Встречайте физический движок Godot!

Некоторые новые функции включают новые формы столкновения и повторную реализацию мягких тел. Это позволяет быстро создавать прототипы и реалистичнее манипулировать объектами. Кроме того, поддержка многопоточности означает больше оптимизации; все эти изменения сопровождаются меньшими затратами на производительность.

Новый узел CharacterBody, заменяющий KinematicBody, обеспечивает повышенную гибкость и дополнительные возможности. Исправление ошибок, связанных с дрожанием и странным поведением при движении, — это Godot-send. Результат? Более стабильные и последовательные модели движения — даже при странных формах столкновений или экстремальных картах высот.

Новая навигационная система полностью заменяет узловую систему на серверную, повышая удобство использования без ущерба для производительности.

Новые функции "качества жизни" в GDScript

-3

Благодаря полной переработке в бета-версии GDScript стал быстрее. Кроме того, добавляются более широко применимые функции и общие улучшения:

  • Теперь вы можете обращаться с функциями как с переменными и использовать анонимные функции.
  • Общие улучшения синтаксиса позволяют создавать более согласованный код.
  • Вы можете указать определенные типы для массивов, чтобы уменьшить количество ошибок.
  • Ключевые слова await и super заменяют старый, менее понятный код в отношении времени и наследования.

Если вы работаете в команде или пересматриваете старый проект, вы обнаружите, что плохо названные переменные могут раздражать. Чтобы бороться с этим, скрипты теперь автоматически генерируют полезную документацию. При наведении указателя мыши на экспортированные переменные в Docker можно получить полезные описания переменных.

C# и поддержка .NET 6

Поддержка .NET 6 в основном завершается бета-версией. Если вы хотите придерживаться C# из своих предпочтений или производительности, есть много новых возможностей, которых стоит ожидать в новой версии.

При использовании .NET 6 по умолчанию используется C# 10. Новая зависимость от генераторов исходного кода означает, что если в вашем коде есть проблема, Godot выдаст ошибку во время компиляции, а не во время выполнения. Это сэкономит время, особенно если в игре есть ошибка.

Теперь вы можете объявлять сигналы ( как события C# ) для более согласованного кода сигналов. Активная разработка также направлена на написание GDExtension на C#. Одним из примеров является то, что классы C# регистрируются так же, как и встроенные классы. Это поможет улучшить поддержку узлов C#. Наконец, Godot 4.0 представит единую унифицированную загрузку, поэтому пользователям C# не нужно специально загружать версию Mono.

Godot 4.0 лучше, чем Unity?

Бета-версия — это всего лишь бета-версия, то есть она все еще нестабильна. Есть много ошибок, которые разработчики должны найти и исправить. Тем не менее, Godot постепенно становится более устоявшимся и приземленным движком с функциями Unity. Тем не менее, важно понимать, что, хотя Godot и Unity являются игровыми движками, они ориентированы на разные аудитории.

В последние годы Unity сосредоточилась на VFX и гиперреалистичных 3D-сценах. Тем временем, разработчики используют Godot для прототипирования и создания небольших, часто 2D-игр. Это не означает, что использование одного из движков ограничивает вас. Опыт работы с обоими движками полезен, поэтому вы действительно понимаете, какой из них лучше всего подходит для ваших нужд.

Хотя это сложно определить количественно, сообщество Godot — одна из его лучших особенностей. Вы найдете поддерживающих разработчиков, которые будут рады поделиться своими знаниями.

Будущее: что Godot 4.0 означает для разработчиков игр

Godot 4.0 интегрирует функции "качества жизни", отсутствующие в 3.5, а также привнесет желаемые функции из других движков.

Поскольку Godot 4.0 может привести к повышению производительности игр, в будущем он должен набрать обороты. Различные функции и улучшения могут быть интегрированы в проекты для их оптимизации или улучшения детализации мира.

Видя эти совершенно новые нововведения, можно предположить, что движок будет продолжать расти. Поэтому всякий раз, когда вы чувствуете желание участвовать в каламбурах Сэмюэля Беккета, помните, что первая версия Godot 4.0 Alpha была выпущена только 17 января 2022 года.

Статья - перевод

Ссылка на оригинал