I implemented, in old LuxRender, user defined importance and driven sampling. It was possible for the user to draw, over the current rendering, with a circular smooth pen in order to define the regions where the sampler should render most of the samples. This feature was combine with noise-aware sampler.
It is now possible in LuxCore with RANDOM or SOBOL samplers too and this is simple demo video with LuxCoreUI: https://www.youtube.com/watch?v=qXHlKFSE9QY
This feature is an extension of normal noise-aware rendering.
USER_IMPORTANCE AOV
There is a new AOV named "USER_IMPORTANCE" where the application can upload the importance map (an image with a single float channel with values between 0.0 and 1.0).
If the AOV is enabled, the sampler will automatically use the AOV values (and noise estimation, see below) to decide where to focus samples.
LuxCore API has been extended with a new methods Film::UpdateChannel() and Film::UpdateOutput() so the application can upload a new version of the user importance map.
Noise and User importance map
RANDOM and SOBOL samplers have now a new parameter to decide the weight of noise and user importance when both information are avilable:
Code: Select all
sampler.sobol.adaptive.userimportanceweight = 0.75