Hydra Renderer найшвидший рендер

Ми звикли, що реалістичний рендеринг - це довго. Довго, оскільки реалістична комп'ютерна графіка вимагає моделювання широкого спектра фізичних явищ високої точності розрахунку. А висока точність майже завжди означає великий час розрахунку. Однак, у реальному житті дуже часто виникають ефекти і феномени (будемо називати їх важкообчислюваними), які мають складну природу і їх точний розрахунок методом "грубою силою" (в тій чи іншій формі) практично неможливий за прийнятний час. Основна проблема розрахунку таких феноменів - викиди: вузькі та різкі вершини в інтегралі освітленості, які знаходяться у заздалегідь невідомих місцях багатовимірного простору.

номер

Малюнок 1. Зображення водних каустиків, пораховане за допомогою MLT на GPU HD7970 за годину.

Уявіть собі, що ви стріляєте з 12-фунтової польової гармати обр.1805 (рис. 1) в сірникову коробку з відстані кілька кілометрів (до речі, сучасним артилерійським системам таке під силу). Або намагаєтеся потрапити ниткою у вушко голки, кидаючи нитку з відстані 1 метр. Обидві ці події - надзвичайно рідкісні, хоча вони цілком можуть статися. На 100-1000 пострілів/кидання нитки ви, можливо, потрапите 1 раз. Але це дуже неефективно. У рендерах та сама проблема - заздалегідь невідомо, куди потрібно більше променів випускати, а куди можна менше. Каустики або багаторазові глоссі відображення - це і є сірникова коробка, - те саме вушко голки в багатовимірному просторі, в яке рендеру потрібно вміти потрапляти, причому досить часто.

renderer

Малюнок 1. 12-фунтовая гармата обр.1805 г. Не дуже точне знаряддя нашого часу.

MLT - Unbiased рендеринг без компромісів

Сучасна наука пропонує кілька методів вирішення цієї проблеми. Кожен з методів маєсвоїми перевагами та недоліками. У нашій рендер-системі ви можете, наприклад, спробувати прогресивні стохастичні фотонні карти - SPPM. Насправді проте, завдання рендерингу призводить до необхідності моделювати практично що завгодно, причому із високою точністю. Саме це дає Вам необхідну гнучкість та потужність у рендер-системі. Дозволяє Вам творити нові світи без обмежень. Традиційно-популярні методи в рендерингу на кшталт (SPPM і BDPT/VCM засновані на Multiple Importance Sampling) використовують "підказки" - апріорну інформацію про функцію падаючого освітлення, якої в реальності може бути зовсім (або вона може бути неправильною). Метод, який дає справжню свободу, повинен працювати в будь-яких умовах без обмежень, повинен вважати освітлення з будь-якими матеріалами та джерелами за прийнятний час. І, звичайно, з високою точністю. Щоб це було можливо, потрібно звернутися за допомогою до математики, і думати абстрактніше. Нам потрібна ефективна "молотілка" довільних багатовимірних інтегралів. Саме це дозволить зняти усі обмеження.

Що таке MLT?

Metropolis Light Transport (або MLT) – це один із видів так званого Markov Chain Monte Carlo (MCMC). MCMC - найбільш загальний варіант монте-карло інтегрування, який активно розвивається й досі. Ми не вдаватимемося в деталі того як це працює, але скажемо що MCMC вміє будувати розподіл пропорційно до будь-якої, заздалегідь невідомої функції (у багатовимірному просторі, зрозуміло). Причому, вміючи обчислювати лише значення цієї функції у точках. Це саме та ситуація, яку ми маємо в трасувальниках променів.

Тестові сценарії

renderer
рендер
hydra
renderer

Сценарій номер 1. Джерело стоїть близько до стіни. Оригінальні зображення пораховані у роздільній здатності2048x2048 за 1 годину на GTX760

Джерело, розташоване близько до стіни, створює яскраве і різке вторинне освітлення.

номер
сценарій
renderer
найшвидший

Сценарій номер 2. Джерело складної форми. Оригінальні зображення пораховані в роздільній здатності 1024x1024 за 30 хвилин GTX680

номер
сценарій
hydra
renderer

Сценарій номер 3. Матеріал, що самосвітиться 1024x1024 за 5 хвилин GTX680

номер
рендер
найшвидший
найшвидший

Сценарій номер 4. Водні каустики. Порівняння з PT.

hydra
рендер
рендер
рендер

Сценарій номер 4. Водні каустики. Порівняння зі SPPM.

номер
renderer
hydra
номер

Сценарій номер 5. Каустики та непряме освітлення через таршер.

Робота виконана в інституті прикладної математики ім.М.В.Келдиша РАН за підтримки РФФД (16-31-60048 мол_а_дк у 2016 та 2017 роках).