среда, 5 октября 2016 г.

что такое Vertex Merging в алгоритме Vertex Connection and Merging (vcm)

читая исходный код UPBP, наткнулся на неплохую реализацию Volumetric Bidirectioanl Path Tracing.
и многое мне напоминало код vcm.
сравнил код VolBidirPT.hxx и VertexCM.hxx увидел, что отличие, кроме volumetric-кода, в коде Vertex Merging.
в vcm, upbp он есть, а в vbpt - нет.

bpt vcm

33s
 
56s
 

39s
 
 
73s
 

37s
 
 
71s
 

29s
 
 
44s
 
в обоих случаях - 5 проходов

между Generate light paths и Generate camera paths
вписан следующий код

создаётся на основе запомненных попадений луча в обьекты и цвета этих "фотонов" хэш-таблица для progressive photon mapping, который дописывается после vertex connection, который в свою очередь собирает лучи из камеры для каждого пиксела


vertex merging - очень хороший пример path reuse, использования уже просчитаной информации еще одним путём для нахождения дополнительной информации об освещении сцены.
и пофиг, что vcm в 1.5-2 раза медленнее bpt. у многих современных рендеров и такое редкость, не говоря о качестве изображения.

Volumetric Bidirectional Path Tracing мне приглянулся больше, чем UPBP-технологии - быстрее, не уступает в качестве - более равномерное покрытие семплами изображения

Комментариев нет:

Отправить комментарий