Pixel Science
479 subscribers
136 photos
53 videos
2 files
106 links
пишем о ресёрчах по Комьютерной Графике, нейронному Рендеру и ИИ

и про их влияния на индустрию конечно же, с инсайдами из личного ресёрча и карьеры

автор: @Mishok43, mishok43.com, PhD студент в IVD KIT, ex Eagle Dynamics
Download Telegram
Advances in Real-Time Rendering in Games

Наконец-таки опубликовали слайды ежегодного воркшопа по реал-тайм рендеру!

В этом году выступили с докладами по темам:

- Neural Light Grid: Modernizing Irradiance Volumes with Machine Learning (pptx, pdf)

- Seamless Rendering on Mobile: The Magic of Adaptive LOD Pipeline (pptx, pdf).

Brian Karis, Epic Games, подтвердил что это клон Nanite и был разочарован данным докладом. Соглашусь с ним, что отсутствие double-blind peer view презентаций, очень сильно опускает их качество по сравнению со статьями того же Siggraph-а

- Flexible and Extensible Shader Authoring in Frostbite with Serac (pptx)

- Announcing The Call of Duty Open-Source USD Caldera Data Set (dataset)

- Variable Rate Shading with Visibility Buffer Rendering (pptx)

- Shipping Dynamic Global Illumination in Frostbite (ещё ждём слайдов)

- Hemispherical Lighting Insights from the Call of Duty Production Lessons (pptx)

- Achieving scalable performances for large scale components with CBTs (pdf)
🔥3👍2👏1
Наконец-таки полноценно заработал "рендер-мутант", который я закодил вместе со своим дипломником!

Решение основано на Falcor, поддерживает все его материалы и фишки, но позволяющее исполнять нейронки внутри megakernel паф трейсера вызовом одной функции на Vulkan-е. А также обучать ИИ вместе с оптимизируемыми текстурами\хэш-гридами, хранящие латентные вектора, и вообще всем тем что может быть дифференцировано

И в отличие от tiny-cuda-nn не нужно ручками рассчитывать градиенты! AutoDiff Slang-а делает почти всё автоматический на основе "любой" loss функции

Также через связку slang->glsl и cooperative matrices + указатели реализован fully-fused MLP инференс на тензорных ядрах (как в tiny-cuda-nn).
Так что работает оч. быстро, скоро выясню быстрее ли чем оригинальное решение от нвидиа. но тут скорее вопрос удобства использования :) tiny-cuda-nn ооочень неприятно встраивать в рендеры, к большому сожалению...

Было мягко говоря тяжело 😅

P.s. на скриншоте простой Neural Radiance Cache, в качестве теста
🔥10🆒32
Walkin’ Robin: Walk on Stars with Robin Boundary Conditions (статья, код)

Просимулировали нагрев вездехода NASA на Марсе через "рендер" движок на GPU
____________________________________________

WoS недавно революционно изменил обработку геометрии и решение диффуров на её поверхности. Тогда авторы показали что для решения задачи распространения тепла на поверхности (точнее Laplace Eq) не обязательно дискретизировать геометрию и использовать FDTD или иной biased global and memory consumption метод

можно переписать диффуры в виде интегралов и использовать стохастический но точный Monte Carlo метод, прям как в рендере. Эксплуатируя уже выведенные: Russian Roulette, Control Variates, "Radiance" Cache, "Light" Tracing для снижение дисперсии. И прям на GPU c шейдерами через Point\Ray Queries. Со 100% скалируемостью


В новой статье авторы вывели же поддержку Neumann и Robin Boundary Conditions, которые позволяют нам описывать через производные граничные значения. к примеру через ожидаемый поток тепла.
👀3
Pixel Science
кстати, всего 0.5 ms для 6ти-слойной MLP c 32 нейронами на 1920х1080 пикселей. 4080 RTX имхо, оч. быстро
как же это можно использовать на практике? Оригинальный WoS вообще можно закодить в шейдертое за 5 минут, пример. Я тогда попробовал в своем движке его использовать для стохастического размытия, ведь распространение тепла работает в соответствие с Гауссовским профилем при определенных условиях.

Т.е. хотим что-то поблюрить на поверхности геометрии (шумы там от рендера) -> штука работает. Но тогда я столкнулся с ограничениями оригинального WoS, не все "параметры были доступны" (хотел анизотропный блюр и т.д.)

Сейчас после множества работ кажется многие из них ушли, и возможно стоит снова обратить внимание 😉
👍2
Neural Fields meet Explicit Geometric Representations for Inverse Rendering of Urban Scenes (статья)

Разобрался тут с новым ИИ-рендер движком от Nvidia, который позиционируется как окружение для тренировки беспилотных авто

Я бы сказал, что фактический мы можем наблюдать "классический" рендер с deferred shading-ом, но с парочкой различий:
- первичные поверхности мы находим через трассировку SDF и далее экстрактим surface properties (albedo, normal etc) c помощью сетки типа InstantNGP

- каждые 20 итераций преобразуем SDF в мешку, используя Marching Cubes. далее полагаясь на RTX пускаем 512 вторичных лучей для шейдинга поверхности на основе инвайромент мапы. естественно без GI 😢

из интересного как всегда танцы с бубном с регуляризацией из-за ill-posed проблемы: "это у нас albedo около 1.0 или же солнце сильно светит?" - вечный вопрос (но похожее мы видели и ранее)

имхо, это просто отличный кейс, доказывающий что рендер-скиллы можно применять не только для игр\кино. рекомендую кому последнее наскучило 👍
👀5
Pixel Science
Neural Fields meet Explicit Geometric Representations for Inverse Rendering of Urban Scenes (статья) Разобрался тут с новым ИИ-рендер движком от Nvidia, который позиционируется как окружение для тренировки беспилотных авто Я бы сказал, что фактический мы…
В дополнение другая простенькая статья основанная на Mitsuba от них же, где оптимизация параметров сцены (источники света, инвайромент мапы, тонмапер) идет с помощью гайдинга зафайнтьюненной диффузной модели.

По сути здесь ИИ выступает в качестве кнопки: "подкорректируй сцену так, чтобы она выглядела более реалистично"

#ии #статья
Карьерный\образовательный гайд в Computer Graphics, 2024

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

Я искренне не хочу брать деньги с молодых спецов для ответа на множество вопросов... но и времени у меня свободного мало чтобы предоставлять консультации за бесплатно. я и так преподаю своим студентам в KIT...

Поэтому я решил демократизировать эти знания и опубликовать открытый обновленный гайд для карьеры в графике в 2024ом году: вот он прям здесь

надеюсь он вам поможет и не стесняйтесь его пересылать всем тем, кому нужна помощь, если вы считаете его полезным! (а ну и пишите, что следует поменять конечно же)

удачи 😊😊😊

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


#карьера
26🥰4🫡2👏1
Pixel Science pinned «Карьерный\образовательный гайд в Computer Graphics, 2024 В последние недели меня всё чаще и чаще спрашивают о том, что следует изучать чтобы ворваться в индустрию. И запросы совершенно разные: - как начать заниматься ИИ-графикой? - как стать рендер-инженером…»
Pixel Science
Наконец-таки полноценно заработал "рендер-мутант", который я закодил вместе со своим дипломником! Решение основано на Falcor, поддерживает все его материалы и фишки, но позволяющее исполнять нейронки внутри megakernel паф трейсера вызовом одной функции…
Я продолжаю работать над фреймворком таким образом, чтобы он мог потенциально использоваться в других движках, даже без Slang. Тип шейдерный PyTorch.
Пока таргет: Vulkan GLSL

но если DirectX выкатит поддержку cooperative matrices (или уже 🤔?), то с удовольствием бы и в hlsl с DX12 протащил

Пока вопрос: может кто посоветовать популярный опенсурс рендер-движок с Вулкан бекендом, на примере интеграции в которой можно было проверить фреймворк?

P.s. возможно с последним нужна будет помощь, отпишу как решение станет публичным. вдруг кому будет интересно помочь 😊

#графон #ии
👍2
В Doom 2 завезли паф трейсинг с тенями, объемным рендером, отражениями и рефракцией. Выглядит, имхо, очень сочно 🔥

Также там теперь есть поддержка:
- DLSS 3 с генерацией кадров, а также конкурентного решения от АМД
- симуляция жидкостей
- поддержка HDR мониторов
- карты высот


Насладиться видосиком можно здесь


Хочется лишь добавить, что такие игры - это прекрасное окружение для тестирования алгоритмов рендера в динамике. К примеру, одну из последних статей, Markov Chain Mixture Models for Real-Time Direct Illumination, мои коллеги разрабатывали как раз в старом Quake с RTX 😁

#графон
🔥8😈3👀2
Media is too big
VIEW IN TELEGRAM
Diffusion Models Are Real-Time Game Engines [сайт]

Диффузку научили предсказывать новый кадр на основе прошлых + conditioned on actions на примере DOOM в 50 FPS. получилась ИИ-игра

Авторы исследовали а-ля "DLSS Frame Generation", но с подачей нажатых клавиш, Fig. 10

Из интересного:
1️⃣ Число сохраненных прошлых кадров на самом деле не сильно улучшает метрики. Хватает всего 2-4, Table 1

2️⃣ Перформанс упирается в число итераций денойзинга. 10 ms/step. Обычно нам требуется 20-100 шагов (DDIM). Но из-за когерентности кадров хватает всего 4 шагов => 40 ms, Table 3

В чём же крутость работы?

1️⃣ Устаревшая SD 1.4 может симулировать простую но динамическую игру. Но для этого нужен датасет

2️⃣ Диффузки уже ускоряли на порядки (Imagine Flash, SDXL) и они работают в real-time на RTX. Т.к. они лучше проецируются на ГПУ, нежели чем игровые-движки, с FPS еще можно сделать многое

Главный вопрос:
Можно ли будет диффузки использовать как DLSS 5.0 (или даже как рендер), открыв доступ к логическому состоянию игры?
#ии
10👍6🔥4