18 OptiXDenoiser(Device *denoiser_device,
const DenoiseParams ¶ms);
21 static bool is_device_supported(
const DeviceInfo &device);
24 virtual uint get_device_type_mask()
const override;
27 virtual bool denoise_buffer(
const DenoiseTask &task)
override;
31 bool denoise_filter_guiding_set_fake_albedo(
const DenoiseContext &context);
36 virtual bool denoise_create_if_needed(DenoiseContext &context)
override;
39 virtual bool denoise_configure_if_needed(DenoiseContext &context)
override;
42 virtual bool denoise_run(
const DenoiseContext &context,
const DenoisePass &pass)
override;
44 OptixDenoiser optix_denoiser_ =
nullptr;
49 bool is_configured_ =
false;
54 device_only_memory<unsigned char> state_;
55 OptixDenoiserSizes sizes_ = {};
57 bool use_pass_albedo_ =
false;
58 bool use_pass_normal_ =
false;
59 bool use_pass_motion_ =
false;
#define CCL_NAMESPACE_END