Changeset View
Changeset View
Standalone View
Standalone View
intern/sky/source/sky_model.cpp
| Show First 20 Lines • Show All 286 Lines • ▼ Show 20 Lines | |||||
| } | } | ||||
| void SKY_arhosekskymodelstate_free(SKY_ArHosekSkyModelState *state) | void SKY_arhosekskymodelstate_free(SKY_ArHosekSkyModelState *state) | ||||
| { | { | ||||
| free(state); | free(state); | ||||
| } | } | ||||
| double SKY_arhosekskymodel_radiance(SKY_ArHosekSkyModelState *state, | double SKY_arhosekskymodel_radiance(SKY_ArHosekSkyModelState *state, | ||||
| double theta, | double theta, | ||||
| double gamma, | double gamma, | ||||
| double wavelength) | double wavelength) | ||||
| { | { | ||||
| int low_wl = (int)((wavelength - 320.0) / 40.0); | int low_wl = (int)((wavelength - 320.0) / 40.0); | ||||
| if (low_wl < 0 || low_wl >= 11) | if (low_wl < 0 || low_wl >= 11) | ||||
| return 0.0; | return 0.0; | ||||
| double interp = fmod((wavelength - 320.0) / 40.0, 1.0); | double interp = fmod((wavelength - 320.0) / 40.0, 1.0); | ||||
| Show All 12 Lines | double SKY_arhosekskymodel_radiance(SKY_ArHosekSkyModelState *state, | ||||
| } | } | ||||
| return result; | return result; | ||||
| } | } | ||||
| // xyz and rgb versions | // xyz and rgb versions | ||||
| SKY_ArHosekSkyModelState *SKY_arhosek_xyz_skymodelstate_alloc_init(const double turbidity, | SKY_ArHosekSkyModelState *SKY_arhosek_xyz_skymodelstate_alloc_init(const double turbidity, | ||||
| const double albedo, | const double albedo, | ||||
| const double elevation) | const double elevation) | ||||
| { | { | ||||
| SKY_ArHosekSkyModelState *state = ALLOC(SKY_ArHosekSkyModelState); | SKY_ArHosekSkyModelState *state = ALLOC(SKY_ArHosekSkyModelState); | ||||
| state->solar_radius = TERRESTRIAL_SOLAR_RADIUS; | state->solar_radius = TERRESTRIAL_SOLAR_RADIUS; | ||||
| state->turbidity = turbidity; | state->turbidity = turbidity; | ||||
| state->albedo = albedo; | state->albedo = albedo; | ||||
| state->elevation = elevation; | state->elevation = elevation; | ||||
| Show All 10 Lines | |||||