#ifndef LIGHT_EVALUATION_H #define LIGHT_EVALUATION_H #include "Lighting/Light.h" #include "Material/Material.h" #include "Geometry/Triangle.h" #include "Rendering/Scene.h" path_output evaluate_bsdf_directional( directional_light_t light, const light_shading_context_t* context, vec3s throughput, uint32_t sample_index); inline path_output evaluate_bsdf_sky(const light_collection_t* lights, const light_shading_context_t* context, vec3s throughput, uint32_t sample_index) { path_output output = {0}; if (lights->sky_light.evaluate_bsdf_sky != NULL) { output = lights->sky_light.evaluate_bsdf_sky(lights->sky_light.data, context, throughput, sample_index); } return output; } #endif // LIGHT_EVALUATION_H