Go to the documentation of this file.
13 #ifndef _ssAtmosphericTable_
14 #define _ssAtmosphericTable_
20 #define BNN_MUMODE 2 // [0=Default, 1=Linear, 2=Exponential] Mu sampling mode. NOTE: Mode 1 is not yet supported in shaders!!!!
21 #define BNN_VMODE 1 // [0=dot(solar,view), 1=dot(solar_azimuth, view_azimuth)] V-sampling mode.
22 #define BNN_NR 3.0 // [unitless>=0.001] Increases altitude sampling density at low altitude (All modes)
23 #define BNN_NMU 5.2 // [unitless>=0.001] Increases mu sampling density away from horizon (Default mu mode only)
24 #define BNN_NV 2.0 // [unitless>=1] Increases sampling around v=1 (All modes)
25 #define BNN_NMUSEGS 8 // [>0] Number of segments in linear-mu mode.
26 #define BNN_RHO0 0.1 // [unitless 0.05-1] is relative sampling density for mu regions away from horizon or source.
27 #define BNN_RHOH 0.3 // [unitless 0-0.95] is relative sampling density peak for mu region near horizon
28 #define BNN_RHOS 0.5 // [unitless 0-0.95] is relative sampling density peak for mu region around source direction
29 #define BNN_DEVH 0.1 // [unitless 0.01-2] is width of sampling density curve for mu region near horizon
30 #define BNN_DEVS 0.05 // [unitless 0.01-2] is width of sampling density curve for mu region around source direction
32 #define MAXFLOAT 65000.0f
33 #define NUM_IRRLUT_COMPONENTS 5
36 #define SKYDOME_RANGE 1100000.0
44 #define SHADER_LOLIM 1.0E-15
120 void setATMflags(
bool useSun,
bool useBothSunMoon,
double sensorAltitude,
bool spectralMode,
bool atmEnable,
bool scatterEnable,
121 bool multiScatterEnable,
bool roundEarthEnable,
bool useODLimit);
220 void getAtmospherics(
double sensorAltitude,
double objAltitude,
double objRange,
bool transOnly =
false);
631 void getMetinAtmosphericsData(
double** Trans,
double** AbsorbTrans,
double** PathRad,
double** ScatRad,
double** MScatRad);
639 void getSensorAtmosphericsData(
double** Trans,
double** AbsorbTrans,
double** PathRad,
double** ScatRad,
double** MScatRad);
679 void makeScatteringData(
bool useSun =
true,
bool includeSky =
true,
bool includeEarth =
true,
bool includeStars =
true);
774 void getIrradiance(
double altitude,
double* downwellIrradiance,
double* upwellIrradiance,
double* directIrradiance,
bool useSun =
true,
bool includeSky =
true,
bool includeEarth =
true,
bool includeAmbient =
true);
793 void computeDiffuseLightSigSim(
double altitude,
bool includeSun,
bool includeMoon,
bool includeSky,
bool includeEarth,
long startindex,
long endindex);
933 int writeATMLUT(
char* cacheDirectory,
char* statefile);
941 int readATMLUT(
char* cacheDirectory,
char* statefile);
958 int writeENVLUT(
char* cacheDirectory,
char* statefile);
967 int readENVLUT(
char* cacheDirectory,
char* statefile);
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (
www.mak.com)