воскресенье, 3 ноября 2013 г.

Ray Tracing From the Ground Up

Решил посвятить свободное от работы время real-time рейтрейсингу. Первые результаты:


Луч тестируется на пересечение со сферами и треугольниками сцены. Если луч попадает на сферу, он отражается и тестируется его пересечение с треугольниками подиума. Вот так просто :)

Почему рейтрейсинг? Основная причина - неспособность растеризатора синтезировать изображение требуемого качества. Мне просто надоело выдумывать хаки, чтобы получилось изображение с нужным качеством. Возьмём те же тени - правильную пенумбру невозможно рассчитать, если силуэт объекта или его карта теней строится из одной точки. Penumbra wedges или blocker search не решают эту проблему - значит, эти подходы не дадут нужного качества (я уже не говорю про их сложность и прожорливость к вычислениям - а ведь это всё в рамках растеризации!). Правильный depth-of-field нужно делать с огромными хаками, т. к. растеризатор представляет собой pinhole камеру. Я уже не говорю про преломления - тут вообще тушите свет. И не рассказывайте мне про графику Battlefield 4. Мне - не надо.

Поэтому я решил на какое-то время оставить традиционные техники, связанные с растеризацией и покопать теорию по трассировке лучей, попытавшись реализовать на GPU некоторые эффекты. Например - те же тени. В последние годы скорость GPU значительно выросла, а при желании (и финансовых возможностях) в будущее можно заглянуть, вставив в системный блок SLI из 4 видеокарт. К слову - говорят, новые Hawaii замечательно масштабируются в CrossFire. Или всё-таки выбрать NVidia?


3 комментария:

  1. "И не рассказывайте про графику Battlefield 4. Мне - не надо."

    В смысле? Не надо тебе рассказывать или такое как в БФ4 тебе не надо?

    ОтветитьУдалить
  2. Какая NVidia после анонса AMD Mantle? Кроме того, NVidia банально дороже.

    ОтветитьУдалить
  3. Да, брать две 780 Ti за $1500 как-то не улыбается. За эти деньги можно будет взять три R9 290 (не Х). Ну а изображённый на фото TITAN за $1000 лучшее свидетельство того, как сильно просыпается аппетит у компаний-разработчиков в условиях отсутствия конкуренции. Mantle - как он поможет рейтрейсингу?

    ОтветитьУдалить