Winged Doom
вот смотрю прошлые картинки и там пиксельарт был тоньше, а теперь жирные пиксели, размазано как то, мало деталей, автор халтурит мне кажется.
Татарин
Когда-то автора обвиняли, что проект слишком серый. Вот он и устроил ядреный взрыв цвета. Почему нет.
Татарин
> вот смотрю прошлые картинки
А какие именно картинки? Их было много.
>мало деталей
Ну что касается этой, то я еще добавлю несколько деталей в центральную часть, на стене и правда чего-то не хватает.
Хотя я и правда стараюсь не перегружать работы деталями, чтобы читалось все хорошо. И халтурю немного, так как кроме пикселей надо еще уровнями заниматься и в целом работы еще навалом.
skypo
Ну вообще-то Татарин ни слова не написал по поводу цвета :) По правде говоря я и сам не понимаю с чего у меня вдруг такая любовь к фиолетовому в последнее время.
Winged Doom
Кислотно, глаза устают. А на гифках пару страниц назад было мягче и приятнее.
Кислотно, глаза устают.
Согласен. Графика все ярче и ярче становися. И уже как-то это аляповато и слишком ярко стало.
кислотные цвета надо смотреть в динамике может уровень такой должен быть, мне как то это не особо глаза режит.
автор давай видео.
Татарин
> кислотные цвета надо смотреть в динамике
В динамике ничего не меняется, все также очень ярко. Автор часто гифки анимированные по игре выкладывает.
А ответ со скринами куда уже подевался?
И в который раз написанные системы демонстрируют что надо было писать иначе, ибо не справляются с встающими задачами. На этот раз это был модуль ввода-вывода, лежащий в основе всего интерактивного. Лифты взаимодействуют с кнопками на этажах, нажимные плиты взаимодействуют с лазерами, терминалы - с AI (на самом деле это не строгая интеракция, кнопки могут работать с лазерами, нажимные плиты с лифтами т.д.). Да только проблема была в том, что этот модуль использовал одностороннюю систему основанную на эвентах, и не было возможности узнать что к чему подключено.
Переписанная система теперь использует несколько более физические соединения - "Провода". Если объект хочет взаимодействовать с другим объектом - он создаёт выходной провод к этому объекту и уже через него посылает как события, так и состояния. Этот провод всегда подключён к обоим объектам, что даёт куда более простую и удобную интеракцию между объектами. У меня возникали проблемы с добавлением более умного поведения к AI требующего интеракции с лазерами, лифтами и т.д. потому что у меня не было возможности узнать что с чем работает - какая кнопка опустит лифт, какая плита выключит лазер. С новой системой это тривиализируется до простого просмотра списка соединений на объекте.
В итоге программирование поведения "если лазер блокирует проход - убери ящик с этой кнопки" становится больше проблемой корректировки маршрута. Обновление получила не только система ввода-вывода, естественно. Стейт движения у AI тоже получил нехилую переработку и сменой методики с тупого линейного движения на выполнение последовательности команд более комплексных чем простое передвижение. Сделано это было во избежание переусложнения дерева стейтов, чтобы один стейт мог выполнять навигационные задачи, вместо 3-4 отдельных субсостояний делающих миниатюрные задачи. Так же список команд станет основоположником для поиска пути основанного на геометрии. А теперь к гифкам.
Ниже пример корректировки маршрута основанный на окружении (в данном случае - лазер блокирует проход).

И та же ситуация, но на этот раз с включённым дебаг-рендером, где видно как новую систему IO (белые/красные линии соединяющие объекты) так и более подробно видны состояния и реакции AI в случае столкновения с препятствиями.

При столкновении с лазером мы в первую очередь проверяем, можем ли мы его выключить с текущей точки в пространстве, и если можем, создаём новый список команд который вставляем перед текущей активной командой движения (в текущем случае - "пройти до следующей патрульной точки"). В итоге изначальный список [WalkTo(node)] превращается в [Wait(0.3s), WalkTo(button), WalkTo(node)]. В будущем вторая команда будет дополнена специальными анимациями толкания ящика:

Но пока не все системы по навигации готовы, AI без тонкостей просто чешет на кнопку чтобы ящик наверняка столкнулся.
Бонус #1, небольшой параллакс слоёв для города в окне:

AI сейчас вполне функционален (кроме ещё более продвинутого поиска пути) и готов к добавлению новых типов роботов, а так же других геймплейных элементов. В данный момент я хочу начать собирать первый кусок глобальной карты, который будет использоваться в tech-demo билде. Это отлично покажет как системы взаимодействуют в "боевой" ситуации и сильно помогут в их тестировании вне контролируемой тестовой зоны.
Бонус #2, или чего не было в английском посте:
Глобальная карта - очень тонкий момент. В Pocket Kingdom мы использовали (псведо-)JSON файл который надо было редактировать вручную. Этот подход не требовал много усилий с моей стороны, но создавал много других проблем типа "карту не добавил в список", "не там расположено", "пересечение коротких имён" и т.д. Здесь же у нас уже есть отдельный сектор движка который целиком и полностью нацелен на создание инструментов типа визуальной сборки глобальной карты.
Dr_Z10
> А ответ со скринами куда уже подевался?
Не знаю, я ничего не удалял.
И почему вам так фиолетовый не нравится? Смотрите как он чудесно сочетается с розовыми символами.

Winged Doom
> Смотрите как он чудесно сочетается с розовыми символами.
Сарказм?
RedS
> Сарказм?
И зачем мне это? Нет, мне правда нравится.

Готовлю слои для тестирования скроллинга в прототипе. Почему-то мне кажется этот эффект хорошо будет смотреться в главном меню. Что-то вроде заставки в Oblivion, только вместо карты панорамы разных городов.
каеф
Тема в архиве.