GPU или CPU: Рендеринг на видеокарте

Опубликовано: 20 Сентябрь 2013 в рубрике 3ds Max  

Рендеринг на видеокарте

Доброго времени суток, дорогие читатели.

Оговорюсь сразу: данная статья не является подробным обзором, а лишь призвана в общих чертах познакомить новичков с RT рендерингом силами видеокарты.

biased и unbiased рендеры

По принципу действия все рендеры можно разделить на 2 большие группы.

Biased — это адаптивные рендеры, которые просчитывают все физические эффекты по очереди, а затем соединяют их в соответствии с настройками, доступными пользователю. Адаптивность выражается в наличии большого количества настроек влияющих на итоговое качество картинки. 

Biased рендер сначала создаст для себя карту освещенности всего пространства, затем «наложит» ее на геометрию, что бы понять, какие участки просчитывать точно, а какие нет.  Допустим он «видит», что область в углу комнаты практически не освещена. Он сверяется с выставленными настройками и уменьшает качество обработки этой области до указанного пользователем минимума — зачем проводить сложные рассчеты, если объекты находятся в сильном затенении и на них в любом случае не будут четко видны блики, отражения и т.д?

Unbiased — это так называемые «физически корректные движки». Они берут всю сцену целиком и начинают ее просчитывать с по сути «бесконечными настройками». На практике это происходит так: сначала вся картинка имеет ужасное качество и ужасный шум. По мере рендеринга  шум начинает пропадать и качество всей картинки начинает улучшаться.

рендеринг на видеокарте

К какому виду относится популярный движок V-Ray?

V-Ray может работать в обоих режимах.  Переключение осуществляется так: F10-Common-Assign Render (в самом низу)

  • VRay Adv — Biased 
  • VRay RT — Unbiased 

Как все это относится к видеокартам?

Рендеринг на видеокарте (GPU-рендеринг) возможен только в  Unbiased «режиме».   Отсюда мы имеем первый спорный момент.

С одной стороны в современных видеокартах намного больше ядер, чем в современных процессорах. Об этом часто любят упоминать маркетологи=)

Для примера 660 Ti, согласно спецификации имеет 1344 ядра. А процессор 4 физических и 8 виртуальных.

С другой стороны — эти ядра похожи на солдат из стройбата, готовых работать лопатами «отсюда и до завтра».  Они не умеют думать и оптимизировать свою работу, поэтому и объем этой работы несоизмеримо возрастает.  Об этом маркетологи умалчивают.

Какой рендер лучше?

Unbiased, т.е. GPU-рендеринг, позволяет получить физически более корректную картинку, но занимает намного больше времени даже на мощных видеокартах.

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

Рендеринг на процессоре (CPU)  позволяет получать качественную картинку значительно быстрее при вполне приемлемом уровне фотореалистичности. Однако стоит учесть, что качество картинки при просчете не процессоре сильно зависит от умения настроить рендер движок.

Что выбрать новичку?

Для новичка нет необходимости обращать внимание на GPU.

  • это самый длительный рендер. Он никак не подходит для процесса обучения, который подразумевает создание большого количества черновых картинок;
  • практическое применение GPU оправданно далеко не во всех задачах и подразумевает использование только дорогих видеокарт. Если вы новичек, то такие задачи появятся у вас не скоро.

  

Следует учесть, что профессиональные видеокарты Quadro обеспечивают лучшую работу во вьюпорте по сравнению с  игровыми GeForce.
Но по части GPU рендеринга — сильно отстают.
Поэтому, купив бюджетную игровую видеокарту у вас все равно будет возможность самостоятельно опробовать GPU рендеринг на маленьких простых сценках.
Надеюсь статья оказалась полезной. Если возникнут вопросы, обязательно пишите в комментариях. Всего доброго и удачи!