Создание шейдера с эффектом дрожания вершин для Unity в стиле PlayStation 1

В предыдущей статье мы реализовали довольно неплохой эффект старого рендера из ранних 90х, однако, ощущения от него будут неполными, если мы не введем другие характерные для того времени ограничения. Нет-нет, 10 фпс и имитацию слабых компьютеров вводить не будем, но постараемся ввести один значимый для ретро-рендера эффект. Возможно он не являются частью общей парадигмы, особенно в области рендеринга на РС, но добавить особую атмосферу. Речь идет, конечно же, об эффекте дрожания вершин, характерный для Playstation 1.

Читать дальше

Lospec шейдер в Unity для Demake проектов

Для пары конкурсных проектов мне понадобился механизм, который бы позволил мне получить в игре картинку из далекого прошлого. Низкое разрешение и малое количество цветов. Если с разрешением все более или менее просто — достаточно организовать рендер в текстуру малого размера, — то с цветами оказалось не все так однозначно. Да, в URP Unity есть механизм LUT, который технически может подвести картинку к нужному результату. Но все же строгих ограничений на рендер цветов он не накладывает. А хотелось бы.

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

Читать дальше

Использование LUT в URP для Unity

Замена Lightweight Render Pipeline в Unity на более совершенный и интересный Universal Render Pipeline подарил многим разработчикам кучу новых инструментов и возможностей. Изменения коснулись и постпроцессинга, как всегда в лучшую сторону (хоть со мной некоторые могут и не согласиться 🙂 ).

Color Lookup — фильтр в URP теперь доступен практически на всех платформах, однако для качественной работы старые LUT — текстуры могут уже не подойти. Посмотрим, как можно выйти из этой ситуации.

Читать дальше

Контент-ориентированная генерация уровня в Unity в конкурсе «Храм Хаоса»

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

Описанный мною подход к генерации помимо очевидных плюсов имеет и ряд жестких минусов. Так что идеальным его, конечно, не назовешь. Но, идеальных методов и не существует.
Этот подход я использовал в своей недоделанной игре, которая была создана на конкурс «Храм Хаоса».

Читать дальше