Blender V4.5
blender::eevee::SphereProbeModule Class Reference

#include <eevee_lightprobe_sphere.hh>

Public Member Functions

 SphereProbeModule (Instance &instance)
 
template<typename PassType >
void bind_resources (PassType &pass)
 
StorageBuffer< SphereProbeHarmonic, true > & spherical_harmonics_buf ()
 

Friends

class CaptureView
 
class Instance
 

Reflection Probe Module

void init ()
 
void begin_sync ()
 
void end_sync ()
 
void viewport_draw (View &view, GPUFrameBuffer *view_fb)
 
void set_view (View &view)
 
int probe_render_extent () const
 

Detailed Description

Definition at line 25 of file eevee_lightprobe_sphere.hh.

Constructor & Destructor Documentation

◆ SphereProbeModule()

blender::eevee::SphereProbeModule::SphereProbeModule ( Instance & instance)
inline

Definition at line 108 of file eevee_lightprobe_sphere.hh.

Member Function Documentation

◆ begin_sync()

void blender::eevee::SphereProbeModule::begin_sync ( )

Definition at line 31 of file eevee_lightprobe_sphere.cc.

References blender::eevee::SphereProbeData::atlas_coord, blender::draw::detail::PassBase< DrawCommandBufType >::barrier(), blender::draw::detail::PassBase< DrawCommandBufType >::bind_image(), blender::draw::detail::PassBase< DrawCommandBufType >::bind_resources(), blender::eevee::Sampling::bind_resources(), blender::eevee::VolumeProbeModule::bind_resources(), blender::draw::detail::PassBase< DrawCommandBufType >::bind_ssbo(), blender::draw::detail::PassBase< DrawCommandBufType >::bind_texture(), blender::draw::detail::PassBase< DrawCommandBufType >::dispatch(), GPU_BARRIER_SHADER_STORAGE, GPU_BARRIER_TEXTURE_FETCH, GPU_BARRIER_UNIFORM, blender::draw::detail::Pass< DrawCommandBufType >::init(), blender::eevee::Instance::light_probes, blender::draw::detail::PassBase< DrawCommandBufType >::push_constant(), blender::eevee::Instance::sampling, blender::draw::detail::PassBase< DrawCommandBufType >::shader_set(), blender::eevee::Instance::shaders, blender::draw::detail::PassBase< DrawCommandBufType >::specialize_constant(), blender::eevee::SPHERE_PROBE_CONVOLVE, blender::eevee::SPHERE_PROBE_IRRADIANCE, blender::eevee::SPHERE_PROBE_REMAP, blender::eevee::SPHERE_PROBE_SELECT, blender::eevee::SPHERE_PROBE_SUNLIGHT, blender::eevee::ShaderModule::static_shader_get(), blender::eevee::World::sunlight, blender::eevee::Instance::uniform_data, blender::eevee::Instance::volume_probes, and blender::eevee::Instance::world.

Referenced by blender::eevee::Instance::begin_sync().

◆ bind_resources()

template<typename PassType >
void blender::eevee::SphereProbeModule::bind_resources ( PassType & pass)
inline

Definition at line 116 of file eevee_lightprobe_sphere.hh.

References SPHERE_PROBE_BUF_SLOT, and SPHERE_PROBE_TEX_SLOT.

◆ end_sync()

◆ init()

◆ probe_render_extent()

int blender::eevee::SphereProbeModule::probe_render_extent ( ) const

Get the resolution of a single cube-map side when rendering probes.

The cube-maps are rendered half size of the size of the octahedral texture.

Definition at line 14 of file eevee_lightprobe_sphere.cc.

References Scene::eevee, SceneEEVEE::gi_cubemap_resolution, and blender::eevee::Instance::scene.

Referenced by blender::eevee::LightModule::end_sync(), and blender::eevee::HiZBuffer::sync().

◆ set_view()

◆ spherical_harmonics_buf()

StorageBuffer< SphereProbeHarmonic, true > & blender::eevee::SphereProbeModule::spherical_harmonics_buf ( )
inline

Definition at line 135 of file eevee_lightprobe_sphere.hh.

◆ viewport_draw()

void blender::eevee::SphereProbeModule::viewport_draw ( View & view,
GPUFrameBuffer * view_fb )

Friends And Related Symbol Documentation

◆ CaptureView

friend class CaptureView
friend

Definition at line 28 of file eevee_lightprobe_sphere.hh.

◆ Instance

friend class Instance
friend

Definition at line 30 of file eevee_lightprobe_sphere.hh.


The documentation for this class was generated from the following files: