Blender
V3.3
|
#include "BLI_rect.h"
#include "BLI_sys_types.h"
#include "BKE_object.h"
#include "eevee_private.h"
#include "BLI_rand.h"
Go to the source code of this file.
Functions | |
void | EEVEE_shadows_cascade_add (EEVEE_LightsInfo *linfo, EEVEE_Light *evli, Object *ob) |
static void | shadow_cascade_random_matrix_set (float mat[4][4], float radius, int sample_ofs) |
static double | round_to_digits (double value, int digits) |
static void | frustum_min_bounding_sphere (const float corners[8][3], float r_center[3], float *r_radius) |
static void | eevee_shadow_cascade_setup (EEVEE_LightsInfo *linfo, EEVEE_Light *evli, DRWView *view, float view_near, float view_far, int sample_ofs) |
static void | eevee_ensure_cascade_views (EEVEE_ShadowCascadeRender *csm_render, DRWView *view[MAX_CASCADE_NUM]) |
void | EEVEE_shadows_draw_cascades (EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata, DRWView *view, int cascade_index) |
|
static |
Definition at line 370 of file eevee_shadows_cascade.c.
References EEVEE_ShadowCascadeRender::cascade_count, DRW_view_create(), DRW_view_update(), NULL, EEVEE_ShadowCascadeRender::projmat, view, and EEVEE_ShadowCascadeRender::viewmat.
Referenced by EEVEE_shadows_draw_cascades().
|
static |
Definition at line 108 of file eevee_shadows_cascade.c.
References EEVEE_ShadowCascadeRender::cascade_count, EEVEE_ShadowCascadeRender::cascade_exponent, EEVEE_ShadowCascadeRender::cascade_fade, EEVEE_ShadowCascadeRender::cascade_max_dist, EEVEE_LightsInfo::shadow_cascade_data, EEVEE_LightsInfo::shadow_cascade_render, EEVEE_LightsInfo::shadow_data, EEVEE_Light::shadow_id, and EEVEE_Shadow::type_data_id.
Referenced by EEVEE_shadows_draw_cascades().
void EEVEE_shadows_cascade_add | ( | EEVEE_LightsInfo * | linfo, |
EEVEE_Light * | evli, | ||
Object * | ob | ||
) |
Definition at line 17 of file eevee_shadows_cascade.c.
References Light::bias, Light::cascade_count, Light::cascade_exponent, Light::cascade_fade, EEVEE_LightsInfo::cascade_len, Light::cascade_max_dist, Object::data, eevee_contact_shadow_setup(), max_ff(), MAX_SHADOW_CASCADE, EEVEE_LightsInfo::num_cascade_layer, EEVEE_LightsInfo::num_light, sh_data, EEVEE_LightsInfo::shadow_cascade_data, EEVEE_LightsInfo::shadow_cascade_light_indices, EEVEE_LightsInfo::shadow_cascade_render, EEVEE_LightsInfo::shadow_data, EEVEE_Light::shadow_id, and EEVEE_LightsInfo::shadow_len.
Referenced by EEVEE_lights_cache_add().
void EEVEE_shadows_draw_cascades | ( | EEVEE_ViewLayerData * | sldata, |
EEVEE_Data * | vedata, | ||
DRWView * | view, | ||
int | cascade_index | ||
) |
Definition at line 383 of file eevee_shadows_cascade.c.
References BLI_assert, EEVEE_ShadowCascadeRender::cascade_count, DRW_draw_pass(), DRW_view_far_distance_get(), DRW_view_near_distance_get(), DRW_view_set_active(), eevee_ensure_cascade_views(), eevee_shadow_cascade_setup(), EEVEE_StorageList::effects, EEVEE_StorageList::g_data, g_data, GPU_framebuffer_bind(), GPU_framebuffer_texture_layer_attach(), EEVEE_LightsInfo::light_data, EEVEE_ViewLayerData::lights, MAX_CASCADE_NUM, EEVEE_Data::psl, EEVEE_LightsInfo::shadow_cascade_data, EEVEE_LightsInfo::shadow_cascade_light_indices, EEVEE_ViewLayerData::shadow_cascade_pool, EEVEE_LightsInfo::shadow_cascade_render, EEVEE_LightsInfo::shadow_data, EEVEE_ViewLayerData::shadow_fb, EEVEE_Light::shadow_id, EEVEE_PassList::shadow_pass, EEVEE_Data::stl, EEVEE_EffectsInfo::taa_current_sample, EEVEE_Shadow::type_data_id, and view.
Referenced by EEVEE_shadows_draw().
|
static |
Definition at line 66 of file eevee_shadows_cascade.c.
References add_v3_v3(), add_v3_v3v3(), float(), INIT_MINMAX, len_squared_v3v3(), len_v3v3(), minmax_v3v3_v3(), mul_v3_fl(), round_to_digits(), sqrtf, and zero_v3().
Definition at line 60 of file eevee_shadows_cascade.c.
References ceil(), fabs(), and pow().
Referenced by frustum_min_bounding_sphere().
|
static |
Definition at line 43 of file eevee_shadows_cascade.c.
References add_v3_v3(), add_v3_v3v3(), DRW_debug_sphere(), EEVEE_sample_ellipse(), and orthogonalize_m4().