The spica renderer
directlighting.h
1 #ifdef _MSC_VER
2 #pragma once
3 #endif
4 
5 #ifndef _SPICA_DIRECTLIGHTING_H_
6 #define _SPICA_DIRECTLIGHTING_H_
7 
8 #include "core/integrator.h"
9 
10 namespace spica {
11 
12 class SPICA_EXPORTS DirectLightingIntegrator : public SamplerIntegrator {
13 public:
14  // Public methods
15  explicit DirectLightingIntegrator(const std::shared_ptr<Sampler>& sampler);
16  explicit DirectLightingIntegrator(RenderParams &params);
17 
18  Spectrum Li(const Scene& scene,
19  RenderParams& params,
20  const Ray& ray,
21  Sampler& sampler,
22  MemoryArena& arena,
23  int depth = 0) const override;
24 };
25 
26 SPICA_EXPORT_PLUGIN(DirectLightingIntegrator, "Integrate only direct lighting");
27 
28 } // namespace spica
29 
30 #endif // _SPICA_DIRECTLIGHTING_H_
Random sampler class.
Definition: sampler.h:24
RGB spectrum.
Definition: spectrum.h:18
Ray class.
Definition: ray.h:24
Definition: renderparams.h:27
The sampler integrator interface.
Definition: integrator.h:45
Definition: directlighting.h:12
Scene provides the interface for scene graph.
Definition: scene.h:23