|
Blender V5.0
|
#include <eevee_pipeline.hh>
Inherited by blender::eevee::DeferredLayer [private], and blender::eevee::PlanarProbePipeline [private].
Public Types | |
| enum class | StencilBits : uint8_t { CLOSURE_COUNT_0 = (1u << 0u) , CLOSURE_COUNT_1 = (1u << 1u) , TRANSMISSION = (1u << 2u) , HEADER_BITS = CLOSURE_COUNT_0 | CLOSURE_COUNT_1 | TRANSMISSION , THICKNESS_FROM_SHADOW = (1u << 3u) , MATERIAL_BITS = THICKNESS_FROM_SHADOW } |
Public Member Functions | |
| int | header_layer_count () const |
| int | closure_layer_count () const |
| int | normal_layer_count () const |
| eClosureBits | closure_bits_get () const |
Deferred Layer | |
| void | gbuffer_pass_sync (Instance &inst) |
Definition at line 181 of file eevee_pipeline.hh.
|
strong |
| Enumerator | |
|---|---|
| CLOSURE_COUNT_0 | |
| CLOSURE_COUNT_1 | |
| TRANSMISSION | |
| HEADER_BITS | Bits set by the StencilClassify pass. Set per pixel from gbuffer header data. |
| THICKNESS_FROM_SHADOW | |
| MATERIAL_BITS | Bits set by the material gbuffer pass. Set per materials. |
Definition at line 202 of file eevee_pipeline.hh.
|
inline |
Definition at line 249 of file eevee_pipeline.hh.
References closure_bits_.
|
inline |
Definition at line 230 of file eevee_pipeline.hh.
References closure_bits_, and blender::eevee::to_gbuffer_bin_count().
| void blender::eevee::DeferredLayerBase::gbuffer_pass_sync | ( | Instance & | inst | ) |
Definition at line 476 of file eevee_pipeline.cc.
References blender::eevee::GBuffer::bind_optional_layers(), closure_bits_, closure_count_, blender::eevee::CLOSURE_NONE, blender::eevee::Instance::cryptomatte, blender::eevee::RenderBuffers::cryptomatte_tx, DRW_STATE_CLIP_CONTROL_UNIT_RANGE, DRW_STATE_CULL_BACK, DRW_STATE_DEPTH_EQUAL, DRW_STATE_STENCIL_ALWAYS, DRW_STATE_WRITE_COLOR, DRW_STATE_WRITE_STENCIL, blender::eevee::HiZBuffer::front, blender::eevee::Instance::gbuffer, gbuffer_double_sided_hybrid_ps_, gbuffer_double_sided_ps_, gbuffer_ps_, gbuffer_single_sided_hybrid_ps_, gbuffer_single_sided_ps_, GPU_ATTACHMENT_WRITE, blender::eevee::Instance::hiz_buffer, blender::eevee::Instance::lights, blender::eevee::Instance::pipelines, RBUFS_COLOR_SLOT, RBUFS_CRYPTOMATTE_SLOT, RBUFS_UTILITY_TEX_SLOT, RBUFS_VALUE_SLOT, blender::eevee::Instance::render_buffers, blender::eevee::RenderBuffers::rp_color_tx, blender::eevee::RenderBuffers::rp_value_tx, blender::eevee::Instance::sampling, blender::eevee::Instance::shadows, blender::eevee::Instance::sphere_probes, state, blender::eevee::Instance::uniform_data, blender::eevee::PipelineModule::utility_tx, and blender::eevee::Instance::volume_probes.
Referenced by blender::eevee::DeferredLayer::begin_sync(), and blender::eevee::PlanarProbePipeline::begin_sync().
|
inline |
Definition at line 218 of file eevee_pipeline.hh.
References count.
|
inline |
Definition at line 237 of file eevee_pipeline.hh.
References closure_bits_, blender::eevee::CLOSURE_REFRACTION, blender::eevee::CLOSURE_SSS, blender::eevee::CLOSURE_TRANSLUCENT, count, count_bits_i(), and blender::eevee::to_gbuffer_bin_count().
| eClosureBits blender::eevee::DeferredLayerBase::closure_bits_ = CLOSURE_NONE |
Definition at line 197 of file eevee_pipeline.hh.
Referenced by blender::eevee::PlanarProbePipeline::begin_sync(), closure_bits_get(), closure_layer_count(), blender::eevee::DeferredLayer::end_sync(), gbuffer_pass_sync(), blender::eevee::DeferredLayer::has_transmission(), blender::eevee::DeferredLayer::material_add(), blender::eevee::PlanarProbePipeline::material_add(), normal_layer_count(), and blender::eevee::DeferredLayer::render().
| int blender::eevee::DeferredLayerBase::closure_count_ = 0 |
Definition at line 199 of file eevee_pipeline.hh.
Referenced by blender::eevee::PlanarProbePipeline::begin_sync(), blender::eevee::DeferredLayer::end_sync(), gbuffer_pass_sync(), blender::eevee::DeferredLayer::is_empty(), blender::eevee::DeferredLayer::material_add(), blender::eevee::PlanarProbePipeline::material_add(), and blender::eevee::DeferredLayer::render().
| PassMain::Sub* blender::eevee::DeferredLayerBase::gbuffer_double_sided_hybrid_ps_ = nullptr |
Definition at line 192 of file eevee_pipeline.hh.
Referenced by gbuffer_pass_sync(), blender::eevee::DeferredLayer::material_add(), and blender::eevee::PlanarProbePipeline::material_add().
| PassMain::Sub* blender::eevee::DeferredLayerBase::gbuffer_double_sided_ps_ = nullptr |
Definition at line 194 of file eevee_pipeline.hh.
Referenced by gbuffer_pass_sync(), blender::eevee::DeferredLayer::material_add(), and blender::eevee::PlanarProbePipeline::material_add().
| PassMain blender::eevee::DeferredLayerBase::gbuffer_ps_ = {"Shading"} |
Definition at line 188 of file eevee_pipeline.hh.
Referenced by blender::eevee::DeferredLayer::end_sync(), gbuffer_pass_sync(), blender::eevee::DeferredLayer::render(), and blender::eevee::PlanarProbePipeline::render().
| PassMain::Sub* blender::eevee::DeferredLayerBase::gbuffer_single_sided_hybrid_ps_ = nullptr |
Definition at line 191 of file eevee_pipeline.hh.
Referenced by gbuffer_pass_sync(), blender::eevee::DeferredLayer::material_add(), and blender::eevee::PlanarProbePipeline::material_add().
| PassMain::Sub* blender::eevee::DeferredLayerBase::gbuffer_single_sided_ps_ = nullptr |
Definition at line 193 of file eevee_pipeline.hh.
Referenced by gbuffer_pass_sync(), blender::eevee::DeferredLayer::material_add(), and blender::eevee::PlanarProbePipeline::material_add().
| PassMain::Sub* blender::eevee::DeferredLayerBase::prepass_double_sided_moving_ps_ = nullptr |
Definition at line 186 of file eevee_pipeline.hh.
Referenced by blender::eevee::DeferredLayer::begin_sync(), and blender::eevee::DeferredLayer::prepass_add().
| PassMain::Sub* blender::eevee::DeferredLayerBase::prepass_double_sided_static_ps_ = nullptr |
Definition at line 185 of file eevee_pipeline.hh.
Referenced by blender::eevee::DeferredLayer::begin_sync(), blender::eevee::PlanarProbePipeline::begin_sync(), blender::eevee::DeferredLayer::prepass_add(), and blender::eevee::PlanarProbePipeline::prepass_add().
| PassMain blender::eevee::DeferredLayerBase::prepass_ps_ = {"Prepass"} |
Definition at line 182 of file eevee_pipeline.hh.
Referenced by blender::eevee::DeferredLayer::begin_sync(), blender::eevee::PlanarProbePipeline::begin_sync(), blender::eevee::DeferredLayer::end_sync(), blender::eevee::PlanarProbePipeline::end_sync(), blender::eevee::DeferredLayer::render(), and blender::eevee::PlanarProbePipeline::render().
| PassMain::Sub* blender::eevee::DeferredLayerBase::prepass_single_sided_moving_ps_ = nullptr |
Definition at line 184 of file eevee_pipeline.hh.
Referenced by blender::eevee::DeferredLayer::begin_sync(), and blender::eevee::DeferredLayer::prepass_add().
| PassMain::Sub* blender::eevee::DeferredLayerBase::prepass_single_sided_static_ps_ = nullptr |
Definition at line 183 of file eevee_pipeline.hh.
Referenced by blender::eevee::DeferredLayer::begin_sync(), blender::eevee::PlanarProbePipeline::begin_sync(), blender::eevee::DeferredLayer::prepass_add(), and blender::eevee::PlanarProbePipeline::prepass_add().