CalcMySky  v0.3.1
Settings.hpp
1 #pragma once
2 
3 namespace ShowMySky
4 {
5 
9 class Settings
10 {
11 public:
17  virtual double altitude() = 0;
23  virtual double sunAzimuth() = 0;
29  virtual double sunZenithAngle() = 0;
30 
38  virtual double sunAngularRadius() = 0;
46  virtual double moonAzimuth() = 0;
54  virtual double moonZenithAngle() = 0;
62  virtual double earthMoonDistance() = 0;
63 
71  virtual bool zeroOrderScatteringEnabled() = 0;
77  virtual bool singleScatteringEnabled() = 0;
83  virtual bool multipleScatteringEnabled() = 0;
84 
90  virtual double lightPollutionGroundLuminance() = 0;
91 
99  virtual bool onTheFlySingleScatteringEnabled() = 0;
107  virtual bool onTheFlyPrecompDoubleScatteringEnabled() = 0;
108 
116  virtual bool textureFilteringEnabled() { return true; }
117 
123  virtual bool usingEclipseShader() = 0;
124 
132  virtual bool pseudoMirrorEnabled() = 0;
133 
134  virtual ~Settings() = default;
135 };
136 
137 }
virtual bool onTheFlyPrecompDoubleScatteringEnabled()=0
Whether double scattering should be precomputed on the fly when using eclipse shader.
Scene settings for AtmosphereRenderer.
Definition: Settings.hpp:9
virtual bool usingEclipseShader()=0
Whether to use shader designed to render eclipse atmosphere.
virtual bool textureFilteringEnabled()
Whether to enable texture filtering.
Definition: Settings.hpp:116
virtual bool singleScatteringEnabled()=0
Whether to render single scattering.
virtual double lightPollutionGroundLuminance()=0
Ground luminance for light pollution.
virtual double altitude()=0
Camera altitude.
virtual double earthMoonDistance()=0
Distance between the Earth and the Moon.
virtual bool zeroOrderScatteringEnabled()=0
Whether to render zero-order scattering.
virtual bool pseudoMirrorEnabled()=0
Whether to mirror the sky instead of rendering the ground.
virtual bool onTheFlySingleScatteringEnabled()=0
Whether single scattering should be computed on the fly.
virtual double sunZenithAngle()=0
Zenith angle of the Sun.
virtual double sunAngularRadius()=0
Angular radius of the Sun.
virtual bool multipleScatteringEnabled()=0
Whether to render multiple scattering.
virtual double sunAzimuth()=0
Azimuth of the Sun.
virtual double moonZenithAngle()=0
Zenith angle of the Moon.
virtual double moonAzimuth()=0
Azimuth of the Moon.