COMMAND ENCODER (Barkar Ivan)
163 subscribers
168 photos
72 videos
17 files
108 links
Cool shading, nice ball moment
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Очередной раз захотел радиального размытия в Substance Designer для тестов всяких пост-процесс гипотез. Психанул, наговнякал на Pixel processor.
Может кому-то тоже нужен иногда или хотите изучить Pixel processor, и while loop в нем (та еще веселуха)
sbs - буквально исходник
sbar - кидаете в граф и пользуетесь

файлы в первом комментарии
🔥10
This media is not supported in your browser
VIEW IN TELEGRAM
в презентации по Портал 2 увидел некую технику Surface-embedded sprite, основанную на том, что мы поворачиваем uv в сторону камеры. А у меня про это незакрытый гештатль уже 4 года. В общем вот.

Файлы опубликовал в unity_cg (обязательно вступайте, если еще не)
🔥13
COMMAND ENCODER (Barkar Ivan)
Проблема сжатия вершин оказывается достаточно актуальной, и даже в индустрии AAA-разработки к её решению подходят самыми разными способами. Unity, в свою очередь, предлагает собственные инструменты для этой задачи – подробнее о них можно узнать в официальной…
Как всегда, пока это очень глубокое R'n'D и тест, и совсем не продакшен реди. Это пример квантайза мешей. Скорее всего, наиболее любопытным будет упаковка нормалей и тангента в кватернион, что может пригодится и в деферред. Будут мысли - пишите. Найдете ошибку, или как можно сделать лучше - так же в себе не держите.

Позиции сломаются на объектах размером меньше 1, копит заметную ошибку на мешах размерах больше 50 - меш становится немного больше. Пока не решил.

(файлики в комментах)
🔥2
Media is too big
VIEW IN TELEGRAM
К предыдущему посту.
Другой подход к квантованию с масштабированием. Мелкие мешки работают прекрасно, под большие подбираем множитель. С благодарностью @alexmtq (https://t.me/madcsharp)

https://github.com/BarkarIvan/Unity_mesh_quantization_example

на гифке оптимизировання мешка размером в 50 единиц сравнивается с оригиналом.
2🔥1🤯1
Я уже говорил, но.
Применение NICE-фильтра (на основе имплементации от Valve) при генерации мип-мап даёт ощутимый прирост качества по сравнению с окном Кайзера в Unity.

На реальном проекте (зависит, конечно, от него) разница в качестве текстур очень заметна.

Минусы?
- реализация в лоб очень долгая ) текстуры 1024 обрабатывает минуты. Но это решаемо.

https://developer.valvesoftware.com/wiki/NICE_filtering

UPD: если реализовать кайзер с регулируемыми настройками (хотя бы бета), то можно добиться результатов не хуже
4
Forwarded from Constantine Galkin
К слову, тут пару месяцев назад пробегал диалог про сжатие вершин, в том числе нормалей, там я упомянул презу из дума, вот готовый рабочий код в 3 байта + битмаска ужаты нормаль, тангент и TBN знак.
https://gist.github.com/wiseConst/fdedf4bf9461f2c6a4dc003aadb331d3
This media is not supported in your browser
VIEW IN TELEGRAM
Новости генерации кастомных мип-мап.

слева Юнити, справа - мое

Пришел все же к Kaiser с разными настройками и пытаюсь сохранить покрытие, если нужен альфа-клип. Честно говоря, не совсем понимаю, как решается эта задача в Unity — у них, похоже, мелкие козявки не исчезают так быстро и как-то бустят альфу на мелких мипах чтол-ли (хотя мне сложно представить подобную текстуру, или же ей стоит подбирать порог). Но в целом, мне нравится как все работает.

К тому же, для альфа-клиппинга, мне кажется, удобнее сразу заложить SDF на этапе рисования текстуры, чтобы не заморачиваться. Генерация SDF в мип-мапе — дело слишком долгое и замороченное (но, если надо, можно подключить бесплатный плагин от Катлайка).

Оставлю так, и пущу в дело, там посмотрим.
Вывод в том, что было бы здорово иметь пару (да даже одну) настроек кайзера, чтобы регулировать резкость текстуры.
🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
А чего вы без таких полярных координат для сабстанс дизайнера сидите? Делал себе для трещин.


(файлы в первом комментарии)
Домашнее задание: сделать color версию
🔥72
Forwarded from OWLD (Olga Fedotova)
Полезный доклад с GDC от Ани Булавиной из CD PR об устройстве игровых городов с практически готовыми советами по тому, как игровой город делать.

Основные тезисы с моими комментариями:

🔸 Пространство в игре не должно быть реалистичным, оно должно быть достоверным.
Это та самая тема, по которой я хочу пройтись в своей части 2 тома Архитектуры виртуальных миров.

🔸 Город это упорядоченная структура.
От себя добавлю, что это будет верно для любого пространства, организованного человеком. Снижайте хаос на ваших уровнях.

🔸 Улица, площадь и задний двор - основные элементы города.
Если про улицу и площадь мы помним (хотя многие начинающие дизайнеры помнят только улицу), то вот про задний двор мы зачастую забываем, в результате чего наши игровые города становятся излишне коридорными.

🔸 Основные параметры вашего города - размеры, пропорции и степень детализации - зависят от скорости перемещения и геймплея.
Dog Town в Phantom Liberty потому такой шумный на мой взгляд, что разработчики полагали, что он будет преодолеваться игроком не только на машине, но и пешком, и потому увеличили детализацию. Типа а давайте запушим игроков играть иначе. Получили то, что получили.

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

По Аниному докладу можно набросать примерно вот такой пайплайн работы с игровым городом:

1. Определяем размеры города, исходя из геймплея
2. Определяем количество районов и их опознавательные лендмарки
3. Собираем референсы, обращаем внимание на структурные рефы
4. Продумываем элевацию (мне кажется, что наиболее корректно начать думать об этом где-то на этом этапе)
5. Прокладываем главные улицы через весь город
6. Помним про чередование пространств улица-площадь
7. Закладываем навигацию через размер улиц и лендмарки

❗️ Ну а самый главный вывод, как по мне, - вашего В2 уровня английского вполне достаточно, чтобы выступать с докладом на GDC. Так что перестаньте тормозить себя знанием языка.

#video #gamecities #Cyberpunk2077
🔥7
оч люблю виртуальные города, а тут такой канал
👍1
Forwarded from Artful Artform (Dasha Nasonova)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
❤️Steam Deck + 💖Render Doc

На Steam Deck утилита renderdoccmd уже предустановлена (либо автоматически устанавливается при подключении SteamOS Devkit Client). На момент написания используется версия 1.30 — для захвата необходимо использовать RenderDoc той же версии на ПК.

Начинаем захват:

В интерфейсе SteamOS Devkit Client активируйте опцию "RenderDoc captures enabled".

Запустите на Steam Deck игру, загруженную через Devkit. При запуске сразу появится оверлей RenderDoc.

На Deck откройте свойства текущего Wi-Fi-соединения и определите IP-адрес устройства.

На ПК в RenderDoc выберите File → Attach to Running Device, введите IP-адрес Deck'а. В списке доступных приложений появится ваша игра. Подключитесь к ней и начните захват.

На моей практике захват сработал для сборки из Unity под Linux.

P.S. в комментах

UPD: удобнее все же делать это с рабочего стола Линукса, после закрытия приложения в рендердоке сразу открывается капчур, без доп танцев с реплаями.
👍2
Конечно, вот вариант, который создаст о вас впечатление, как о самом сеньерном сеньере+.


Последние месяц-два вечера проходят за изучением UECS и прочих аспектов DOTS. И, честно говоря, мне нравится. Сейчас основной фокус — на построении автоматизированного пайплайна между Unity и Houdini: экспорт, импорт и сборка сцен для стриминга. Unity Entities предусмотрены механизмы для этого — например, поддержка секций сцен.

Всё строится довольно прагматично: парсинг имён, логика действий на их основе, рядом пресеты импорта для Unity. С геометрией на террейне разобрались, и теперь думаю перейти к передаче мелких объектов — в том числе через обмен бинарными данными. Потихоньку движемся в сторону грейбоксов.

Уже работает на Steam Deck :3

Полной автоматизации не хочется — это путь в никуда. Но на уровне грейбокса и основной геометрии, с итерацией результатов — вполне. То есть: террейн, дороги, автоматическое размещение декора по заданной логике — всё это должно собираться само. А дальше — руками, но с удобными и хорошо подогнанными под задачи инструментами. В итоге должно получиться грамотное сочетание автоматизации и ручной доработки с обменом данными. Посмотрим, куда выведет.
❤‍🔥6
лонг в несколько сообщений про всякие апи, было интересно, выше еще про форматы кратко
https://t.me/abyssal_code/16
👍3🤝1
This media is not supported in your browser
VIEW IN TELEGRAM
Пакет с физикой транспорта для UECS от Юнити
https://discussions.unity.com/t/unity-vehicles-experimental-package-now-available/1636923
хоть мне и нравится моя шустрая перделка на физическом шарике (доделок там правда масса), надо все ж заценить
🔥4