|
Blender V5.0
|
#include "sky_hosek.h"#include "sky_hosek_data.h"#include <cassert>#include <cmath>#include <cstdlib>Go to the source code of this file.
Macros | |
| #define | MATH_PI 3.141592653589793 |
| #define | MATH_DEG_TO_RAD (MATH_PI / 180.0) |
| #define | DEGREES *MATH_DEG_TO_RAD |
| #define | TERRESTRIAL_SOLAR_RADIUS ((0.51 DEGREES) / 2.0) |
| #define | ALLOC(_struct) |
Typedefs | |
| using | ArHosekSkyModel_Dataset = const double * |
| using | ArHosekSkyModel_Radiance_Dataset = const double * |
Functions | |
| static void | ArHosekSkyModel_CookConfiguration (ArHosekSkyModel_Dataset dataset, SKY_ArHosekSkyModelConfiguration config, double turbidity, double albedo, double solar_elevation) |
| static double | ArHosekSkyModel_CookRadianceConfiguration (ArHosekSkyModel_Radiance_Dataset dataset, double turbidity, double albedo, double solar_elevation) |
| static double | ArHosekSkyModel_GetRadianceInternal (const SKY_ArHosekSkyModelConfiguration configuration, const double theta, const double gamma) |
| void | SKY_arhosekskymodelstate_free (SKY_ArHosekSkyModelState *state) |
| double | SKY_arhosekskymodel_radiance (SKY_ArHosekSkyModelState *state, double theta, double gamma, double wavelength) |
| SKY_ArHosekSkyModelState * | SKY_arhosek_xyz_skymodelstate_alloc_init (const double turbidity, const double albedo, const double elevation) |
| #define ALLOC | ( | _struct | ) |
Definition at line 105 of file sky_hosek.cpp.
Referenced by SKY_arhosek_xyz_skymodelstate_alloc_init().
| #define DEGREES *MATH_DEG_TO_RAD |
Definition at line 97 of file sky_hosek.cpp.
| #define MATH_DEG_TO_RAD (MATH_PI / 180.0) |
Definition at line 93 of file sky_hosek.cpp.
| #define MATH_PI 3.141592653589793 |
Definition at line 89 of file sky_hosek.cpp.
Referenced by ArHosekSkyModel_CookConfiguration(), and ArHosekSkyModel_CookRadianceConfiguration().
| #define TERRESTRIAL_SOLAR_RADIUS ((0.51 DEGREES) / 2.0) |
Definition at line 101 of file sky_hosek.cpp.
Referenced by SKY_arhosek_xyz_skymodelstate_alloc_init().
| using ArHosekSkyModel_Dataset = const double * |
Definition at line 113 of file sky_hosek.cpp.
| using ArHosekSkyModel_Radiance_Dataset = const double * |
Definition at line 114 of file sky_hosek.cpp.
|
static |
Definition at line 118 of file sky_hosek.cpp.
References i, MATH_PI, and pow.
Referenced by SKY_arhosek_xyz_skymodelstate_alloc_init().
|
static |
Definition at line 194 of file sky_hosek.cpp.
Referenced by SKY_arhosek_xyz_skymodelstate_alloc_init().
|
static |
Definition at line 255 of file sky_hosek.cpp.
References cos, exp, pow, and sqrt.
Referenced by SKY_arhosekskymodel_radiance().
| SKY_ArHosekSkyModelState * SKY_arhosek_xyz_skymodelstate_alloc_init | ( | const double | turbidity, |
| const double | albedo, | ||
| const double | elevation ) |
Definition at line 308 of file sky_hosek.cpp.
References ALLOC, ArHosekSkyModel_CookConfiguration(), ArHosekSkyModel_CookRadianceConfiguration(), datasetsXYZ, datasetsXYZRad, state, and TERRESTRIAL_SOLAR_RADIUS.
Referenced by blender::nodes::node_shader_tex_sky_cc::node_shader_gpu_tex_sky(), and sky_texture_precompute_hosek().
| double SKY_arhosekskymodel_radiance | ( | SKY_ArHosekSkyModelState * | state, |
| double | theta, | ||
| double | gamma, | ||
| double | wavelength ) |
Definition at line 275 of file sky_hosek.cpp.
References ArHosekSkyModel_GetRadianceInternal(), e, fmod(), interp(), result, and state.
| void SKY_arhosekskymodelstate_free | ( | SKY_ArHosekSkyModelState * | state | ) |
Definition at line 270 of file sky_hosek.cpp.
Referenced by blender::nodes::node_shader_tex_sky_cc::node_shader_gpu_tex_sky(), and sky_texture_precompute_hosek().