|
Blender V4.3
|
#include <eevee_renderbuffers.hh>
Public Member Functions | |
| RenderBuffers (Instance &inst, RenderBuffersInfoData &data) | |
| void | init () |
| void | acquire (int2 extent) |
| void | release () |
| int2 | extent_get () const |
| eGPUTextureFormat | vector_tx_format () |
Static Public Member Functions | |
| static ePassStorageType | pass_storage_type (eViewLayerEEVEEPassType pass_type) |
Public Attributes | |
| RenderBuffersInfoData & | data |
| Texture | depth_tx |
| TextureFromPool | combined_tx |
| TextureFromPool | vector_tx |
| TextureFromPool | cryptomatte_tx |
| Texture | rp_color_tx |
| Texture | rp_value_tx |
Static Public Attributes | |
| static constexpr eGPUTextureFormat | color_format = GPU_RGBA16F |
| static constexpr eGPUTextureFormat | float_format = GPU_R16F |
Definition at line 23 of file eevee_renderbuffers.hh.
|
inline |
Definition at line 46 of file eevee_renderbuffers.hh.
| void RenderBuffers::acquire | ( | int2 | extent | ) |
Definition at line 58 of file eevee_renderbuffers.cc.
References blender::draw::TextureFromPool::acquire(), color_format, combined_tx, blender::eevee::Film::cryptomatte_layer_max_get(), cryptomatte_tx, depth_tx, EEVEE_RENDER_PASS_CRYPTOMATTE_ASSET, EEVEE_RENDER_PASS_CRYPTOMATTE_MATERIAL, EEVEE_RENDER_PASS_CRYPTOMATTE_OBJECT, blender::eevee::enabled_passes(), blender::eevee::Film::enabled_passes_get(), blender::draw::Texture::ensure_2d(), blender::draw::Texture::ensure_2d_array(), blender::eevee::Instance::film, float_format, GPU_DEPTH24_STENCIL8, GPU_R32F, GPU_RG32F, GPU_RGBA32F, GPU_TEXTURE_USAGE_ATTACHMENT, GPU_TEXTURE_USAGE_SHADER_READ, GPU_TEXTURE_USAGE_SHADER_WRITE, blender::math::max(), rp_color_tx, rp_value_tx, vector_tx, and vector_tx_format().
Referenced by blender::eevee::Film::display(), blender::eevee::ShadingView::render(), and blender::eevee::CaptureView::render_probes().
|
inline |
Definition at line 73 of file eevee_renderbuffers.hh.
| void RenderBuffers::init | ( | ) |
Definition at line 27 of file eevee_renderbuffers.cc.
References blender::eevee::Film::aovs_info, EEVEE_RENDER_PASS_AO, EEVEE_RENDER_PASS_DIFFUSE_COLOR, EEVEE_RENDER_PASS_DIFFUSE_LIGHT, EEVEE_RENDER_PASS_EMIT, EEVEE_RENDER_PASS_ENVIRONMENT, EEVEE_RENDER_PASS_NORMAL, EEVEE_RENDER_PASS_POSITION, EEVEE_RENDER_PASS_SHADOW, EEVEE_RENDER_PASS_SPECULAR_COLOR, EEVEE_RENDER_PASS_SPECULAR_LIGHT, EEVEE_RENDER_PASS_TRANSPARENT, EEVEE_RENDER_PASS_VOLUME_LIGHT, blender::eevee::enabled_passes(), blender::eevee::Film::enabled_passes_get(), blender::eevee::Instance::film, blender::eevee::PASS_STORAGE_COLOR, and pass_storage_type().
Referenced by blender::eevee::Instance::init(), and blender::eevee::Instance::init_light_bake().
|
inlinestatic |
WARNING: RenderBuffers and Film use different storage types for AO and Shadow.
Definition at line 49 of file eevee_renderbuffers.hh.
References EEVEE_RENDER_PASS_AO, EEVEE_RENDER_PASS_CRYPTOMATTE_ASSET, EEVEE_RENDER_PASS_CRYPTOMATTE_MATERIAL, EEVEE_RENDER_PASS_CRYPTOMATTE_OBJECT, EEVEE_RENDER_PASS_MIST, EEVEE_RENDER_PASS_SHADOW, EEVEE_RENDER_PASS_Z, blender::eevee::PASS_STORAGE_COLOR, blender::eevee::PASS_STORAGE_CRYPTOMATTE, and blender::eevee::PASS_STORAGE_VALUE.
Referenced by init().
| void RenderBuffers::release | ( | ) |
Definition at line 113 of file eevee_renderbuffers.cc.
References combined_tx, cryptomatte_tx, blender::draw::TextureFromPool::release(), and vector_tx.
Referenced by blender::eevee::Film::display(), blender::eevee::ShadingView::render(), and blender::eevee::CaptureView::render_probes().
| eGPUTextureFormat RenderBuffers::vector_tx_format | ( | ) |
Definition at line 124 of file eevee_renderbuffers.cc.
References EEVEE_RENDER_PASS_VECTOR, blender::eevee::enabled_passes(), blender::eevee::Film::enabled_passes_get(), blender::eevee::Instance::film, GPU_RG16F, GPU_RGBA16F, blender::eevee::Instance::is_viewport(), blender::eevee::Instance::motion_blur, and blender::eevee::MotionBlurModule::postfx_enabled().
Referenced by acquire(), blender::eevee::MotionBlurModule::render(), and blender::eevee::MotionBlurModule::sync().
|
staticconstexpr |
Definition at line 27 of file eevee_renderbuffers.hh.
Referenced by acquire().
| TextureFromPool blender::eevee::RenderBuffers::combined_tx |
Definition at line 31 of file eevee_renderbuffers.hh.
Referenced by acquire(), blender::eevee::Film::display(), blender::eevee::VolumeModule::draw_resolve(), release(), blender::eevee::DeferredLayer::render(), and blender::eevee::ShadingView::render().
| TextureFromPool blender::eevee::RenderBuffers::cryptomatte_tx |
Definition at line 35 of file eevee_renderbuffers.hh.
Referenced by acquire(), blender::eevee::DeferredLayerBase::gbuffer_pass_sync(), release(), and blender::eevee::BackgroundPipeline::sync().
| RenderBuffersInfoData& blender::eevee::RenderBuffers::data |
Definition at line 25 of file eevee_renderbuffers.hh.
Referenced by blender::eevee::DeferredLayer::end_sync(), blender::eevee::Instance::init(), and blender::eevee::AmbientOcclusion::sync().
| Texture blender::eevee::RenderBuffers::depth_tx |
Definition at line 30 of file eevee_renderbuffers.hh.
Referenced by acquire(), blender::eevee::SubsurfaceModule::end_sync(), blender::eevee::DeferredProbePipeline::render(), blender::eevee::MotionBlurModule::render(), blender::eevee::ShadingView::render(), blender::eevee::CaptureView::render_probes(), blender::eevee::MotionBlurModule::sync(), and blender::eevee::RayTraceModule::sync().
|
staticconstexpr |
Definition at line 28 of file eevee_renderbuffers.hh.
Referenced by acquire().
| Texture blender::eevee::RenderBuffers::rp_color_tx |
Definition at line 37 of file eevee_renderbuffers.hh.
Referenced by acquire(), blender::eevee::DeferredLayer::end_sync(), blender::eevee::DeferredProbePipeline::end_sync(), blender::eevee::VolumeModule::end_sync(), blender::eevee::DeferredLayerBase::gbuffer_pass_sync(), blender::eevee::AmbientOcclusion::sync(), and blender::eevee::BackgroundPipeline::sync().
| Texture blender::eevee::RenderBuffers::rp_value_tx |
Definition at line 38 of file eevee_renderbuffers.hh.
Referenced by acquire(), blender::eevee::DeferredLayer::end_sync(), blender::eevee::DeferredProbePipeline::end_sync(), blender::eevee::VolumeModule::end_sync(), blender::eevee::DeferredLayerBase::gbuffer_pass_sync(), blender::eevee::AmbientOcclusion::sync(), and blender::eevee::BackgroundPipeline::sync().
| TextureFromPool blender::eevee::RenderBuffers::vector_tx |
Definition at line 34 of file eevee_renderbuffers.hh.
Referenced by acquire(), release(), blender::eevee::MotionBlurModule::render(), blender::eevee::ShadingView::render(), blender::eevee::CaptureView::render_probes(), and blender::eevee::MotionBlurModule::sync().