Photon Engine 2.0.0-beta
A physically based renderer.
Loading...
Searching...
No Matches
VoHomoAbsorption.h
Go to the documentation of this file.
1#pragma once
2
4
5#include <memory>
6
7namespace ph
8{
9
10class BfConstant;
11
12class VoHomoAbsorption final : public VolumeOptics
13{
14public:
16 VoHomoAbsorption(const std::shared_ptr<BfConstant>& blockFunc);
17 virtual ~VoHomoAbsorption() override;
18
19private:
20 virtual void sampleDistance(
21 const SurfaceHit& X,
22 const math::Vector3R& L,
23 real maxDist,
24 real* out_dist,
25 math::Spectrum* out_pdfAppliedWeight) const override;
26
27 std::shared_ptr<BfConstant> m_blockFunc;
28};
29
30}// end namespace ph
General information about a ray-surface intersection event.
Definition SurfaceHit.h:59
Definition VoHomoAbsorption.h:13
virtual ~VoHomoAbsorption() override
VoHomoAbsorption()
Definition VoHomoAbsorption.cpp:11
Definition VolumeOptics.h:20
Definition TTristimulusSpectrum.h:11
The root for all renderer implementations.
Definition EEngineProject.h:6