|
Blender V4.3
|
#include <eevee_light.hh>
Public Member Functions | |
| LightModule (Instance &inst) | |
| template<typename PassType> | |
| void | bind_resources (PassType &pass) |
LightModule | |
| ~LightModule () | |
| void | begin_sync () |
| void | sync_light (const Object *ob, ObjectHandle &handle) |
| void | end_sync () |
| void | set_view (View &view, const int2 extent) |
| void | debug_draw (View &view, GPUFrameBuffer *view_fb) |
The light module manages light data buffers and light culling system.
Definition at line 113 of file eevee_light.hh.
|
inline |
Definition at line 171 of file eevee_light.hh.
| blender::eevee::LightModule::~LightModule | ( | ) |
Definition at line 338 of file eevee_light.cc.
| void blender::eevee::LightModule::begin_sync | ( | ) |
Definition at line 346 of file eevee_light.cc.
References blender::assign_if_different(), Light::b, DNA_default_table, ELEM, Light::energy, Light::g, blender::MatBase< float, 4, 4 >::identity(), LA_SHADOW, LA_SHADOW_JITTER, LA_SUN, blender::eevee::LIGHT_SUN, blender::eevee::LIGHT_SUN_ORTHO, max_ff(), Light::mode, Light::r, SET_FLAG_FROM_TEST, Light::shadow_filter_radius, Light::shadow_jitter_overblur, Light::shadow_maximum_resolution, Light::sun_angle, blender::eevee::Light::sync(), Light::type, and blender::eevee::Light::used.
|
inline |
Definition at line 185 of file eevee_light.hh.
References LIGHT_BUF_SLOT, LIGHT_CULL_BUF_SLOT, LIGHT_TILE_BUF_SLOT, and LIGHT_ZBIN_BUF_SLOT.
| void blender::eevee::LightModule::debug_draw | ( | View & | view, |
| GPUFrameBuffer * | view_fb ) |
Definition at line 610 of file eevee_light.cc.
References blender::eevee::DEBUG_LIGHT_CULLING, GPU_framebuffer_bind(), and view.
| void blender::eevee::LightModule::end_sync | ( | ) |
Definition at line 418 of file eevee_light.cc.
References ceil_to_multiple_u(), CULLING_MAX_ITEM, blender::math::divide_ceil(), divide_ceil_u(), blender::eevee::is_sun_light(), LIGHT_CHUNK, blender::math::max(), max_ii(), min_ii(), and blender::eevee::Light::used.
Update acceleration structure for the given view.
Definition at line 594 of file eevee_light.cc.
References CULLING_ZBIN_COUNT, fabsf, and view.
| void blender::eevee::LightModule::sync_light | ( | const Object * | ob, |
| ObjectHandle & | handle ) |
Definition at line 390 of file eevee_light.cc.
References Object::data, blender::eevee::Light::initialized, int, blender::eevee::is_sun_light(), LA_SUN, Object::light_linking, blender::eevee::ObjectHandle::object_key, blender::eevee::BaseHandle::recalc, blender::eevee::Light::sync(), blender::eevee::Light::used, and Object::visibility_flag.