26 const std::string PARAM_ACCUMULATION =
"disable-accumulation";
27 const std::string PARAM_BACKGROUND_COLOR =
"background-color";
28 const std::string PARAM_CAMERA =
"camera";
29 const std::string PARAM_RENDERER =
"renderer";
30 const std::string PARAM_VARIANCE_THRESHOLD =
"variance-threshold";
31 const std::string PARAM_NUM_NON_DENOISED_FRAMES =
"num-non-denoised-frames";
32 const std::string PARAM_DENOISE_BLEND =
"denoise-blend";
33 const std::string PARAM_TONE_MAPPER_EXPOSURE =
"tone-mapper-exposure";
34 const std::string PARAM_TONE_MAPPER_GAMMA =
"tone-mapper-gamma";
36 const std::string ACCUMULATION_TYPES[3] = {
"none",
"linear",
"ai-denoised"};
45 (PARAM_RENDERER.c_str(), po::value<std::string>(),
46 "The renderer to use")
47 (PARAM_ACCUMULATION.c_str(), po::bool_switch()->default_value(
false),
48 "Disable accumulation")
49 (PARAM_CAMERA.c_str(), po::value<std::string>(),
52 "Threshold for adaptive accumulation [float]")
54 "Optix 6 only: Number of frames that show the original image before switching on denoising"),
55 (PARAM_DENOISE_BLEND.c_str(), po::value<float>(&
_denoiseBlend),
56 "Optix 6 only: Amount of the original image that is blended with the denoised result ranging from 0.0 to 1.0"),
58 "Optix 6 only: Tone mapper exposure"),
60 "Optix 6 only: Tone mapper gamma");
65 if (vm.count(PARAM_RENDERER))
67 const std::string& rendererName = vm[PARAM_RENDERER].as<std::string>();
70 if (vm.count(PARAM_CAMERA))
72 const std::string& cameraName = vm[PARAM_CAMERA].as<std::string>();
82 return ACCUMULATION_TYPES[
static_cast<size_t>(value)];
po::options_description _parameters
void markModified(const bool triggerCallback=true)
void parse(const po::variables_map &vm) final
uint32_t _numNonDenoisedFrames
double _varianceThreshold
std::deque< std::string > _renderers
std::deque< std::string > _cameras
void addRenderer(const std::string &renderer)
const std::string getAccumulationTypeAsString(const AccumulationType value)
float _toneMapperExposure
AccumulationType _accumulationType