HEXYARD v.01_06 | Godot 4 beta 3

Немного обновлений бенчмарка Godot 4 с машинками и переезд в beta 3 версию движка.

HEXYARD v.01_06 | Godot 4 beta 3
видеонарезка из текущей версии 01_06

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

В новой версии добавлен четвёртый мини-уровень - я замоделил в Блендере кусочек локации по мотивам одного из уровней первых "Невангеров" (которые были на Unity). Пока что единым мешем. Также на нём присутствуют собираемые бонусы и мерцающая платформа, которая на данный момент перекрашивает машинку, если нажать R. Краска сделана через наложение декали и все прочие машинки тоже становятся "покрашенными", чтобы сбросить этот эффект нужно снова телепортироваться на этот же уровень.

Что касается эффекта мерцания, которым обладает платформа перекраски и бонусы - собирался сделать его как раньше, через редактор узлов шейдера, но в Godot 4 этот визуальный инструмент отсутствует (на самом деле есть, просто теперь выбирается в другом месте), поэтому... шейдер нужно написать. Для мерцания можно было вытащить из шейдера параметры цвета альбедо, наружу, в редактор, и оттуда, например, манипулировать ими через аниматор. Но я сделал ещё проще, буквально одной строкой, где компоненты красного и синего цвета домножаются на sin(TIME)

HEXYARD v.01_06 | Godot 4 beta 3

До этого никаких звуков в прототипе не было, и вот добавил пару - шум "двигателя" и эффект подбора бонуса. Первый делается из зацикленного звука, в котором через код меняется параметр скорости воспроизведения. Для бонуса, естественно, звук нужен не зацикленный, и вот тут проявилась ошибка с отваливающимся звуком. Вернее всё работает, если использовать wav-файл, который по умолчанию движком не зацикливается, а вот по дефолту цикличный ogg-файл, после отключения зацикливания и реимпорта, крашит аудио (по крайней мере у меня под линуксом). Без вылетов, просто звук перестаёт работать. Видимо, ogg сейчас ломаются при реимпорте (или тот конкретный самодельный ogg). С wav-звуком для разового эффекта - работает нормально.

Добавил возможность поставить происходящее на паузу, по Escape. В проектах без физики для такого обычно проще завести переменную для состояния мира и крутить циклы, только если установлено нужное состояние.

Остановить всё, включая физику, тоже не слишком сложно - можно воспользоваться специальным параметром, отвечающим за постановку всех процессов на паузу: get_tree().paused = true Единственный момент - если включать это в главном скрипте сцены, то он тоже остановится (хотя его можно установить активным, но тогда и на паузе отключится не всё), поэтому лучше вынести управление паузой в отдельный скрипт (либо глобальный синглтон), отслеживающий нажатия кнопки паузы и установить ему активный режим (то есть он не уснёт, когда всё прочее остановится и сможет разбудить всё обратно).

Добавлена возможность "покрутить солнце". Реализовано достаточно просто - через слайдер, управляющий скоростью вращения главного источника света. В крайнем левом положении скорость нулевая и "солнце" не движется.

Добавились две более детальные настройки для объёмного тумана - плотность (насколько туманно будет вокруг) и анизотропия (влияет на то, насколько заметно пятно пробивающегося солнечного света). Под списком настроек теперь присутствует подложка, прозрачность которой можно регулировать.

На пустынном уровне появились препятствия, своеобразные "червегрибы". Лопасти вентилятора на первом уровне. Некоторые параметры слайдеров перенастроены, чтобы охватывать более оптимальный диапазон. Заодно пофиксил значительное изменение скорости вращения камеры при изменении параметра stretch , который снижает/увеличивает количество пикселей на экране - теперь отслеживаемые движения мышью учитывают эту степень растяжения экрана.

Попробовать билды для linux/windows можно здесь:

HEXYARD v.01_06 | Godot 4 beta 3
HEXYARD v.01_06 | Godot 4 beta 3
HEXYARD v.01_06 | Godot 4 beta 3
HEXYARD v.01_06 | Godot 4 beta 3
HEXYARD v.01_06 | Godot 4 beta 3
HEXYARD v.01_06 | Godot 4 beta 3
1515
6 комментариев

Офигеть. Я думал, что про вангеров и попытки их воссоздать уже все забыли.

Ну, я ещё на 20-летие В написал ностальгический пост. И наработок по мотивам много накопилось: https://dtf.ru/indie/1363833-seriya-proektov-nevangery

1

Комментарий недоступен

Было и на Unigine
https://youtu.be/sw6kx8DAGtA