|
Blender V4.3
|
#include <workbench_private.hh>
Public Member Functions | |
TransparentPass | |
| void | sync (const SceneState &scene_state, SceneResources &resources) |
| void | draw (Manager &manager, View &view, SceneResources &resources, int2 resolution) |
| bool | is_empty () const |
Public Attributes | |
| TextureFromPool | accumulation_tx = {"accumulation_accumulation_tx"} |
| TextureFromPool | reveal_tx = {"accumulation_reveal_tx"} |
| Framebuffer | transparent_fb = {} |
| MeshPass | accumulation_ps_ = {"Transparent.Accumulation"} |
| MeshPass | accumulation_in_front_ps_ = {"Transparent.AccumulationInFront"} |
| PassSimple | resolve_ps_ = {"Transparent.Resolve"} |
| Framebuffer | resolve_fb = {} |
Definition at line 361 of file workbench_private.hh.
| void blender::workbench::TransparentPass::draw | ( | Manager & | manager, |
| View & | view, | ||
| SceneResources & | resources, | ||
| int2 | resolution ) |
Definition at line 248 of file workbench_mesh_passes.cc.
References accumulation_in_front_ps_, accumulation_ps_, accumulation_tx, blender::draw::TextureFromPool::acquire(), blender::draw::Framebuffer::bind(), blender::workbench::SceneResources::color_tx, blender::workbench::SceneResources::depth_in_front_tx, blender::workbench::SceneResources::depth_tx, blender::draw::Framebuffer::ensure(), GPU_ATTACHMENT_NONE, GPU_ATTACHMENT_TEXTURE, GPU_R16F, GPU_RGBA16F, GPU_TEXTURE_USAGE_ATTACHMENT, GPU_TEXTURE_USAGE_SHADER_READ, blender::workbench::MeshPass::is_empty(), is_empty(), blender::draw::TextureFromPool::release(), resolve_fb, resolve_ps_, reveal_tx, blender::draw::Manager::submit(), and transparent_fb.
Referenced by blender::workbench::Instance::draw().
| bool blender::workbench::TransparentPass::is_empty | ( | ) | const |
Definition at line 286 of file workbench_mesh_passes.cc.
References accumulation_in_front_ps_, accumulation_ps_, and blender::workbench::MeshPass::is_empty().
Referenced by draw().
| void blender::workbench::TransparentPass::sync | ( | const SceneState & | scene_state, |
| SceneResources & | resources ) |
Definition at line 221 of file workbench_mesh_passes.cc.
References accumulation_in_front_ps_, accumulation_ps_, accumulation_tx, blender::draw::detail::PassBase< DrawCommandBufType >::bind_texture(), blender::draw::detail::PassBase< DrawCommandBufType >::clear_color(), blender::workbench::SceneState::clip_planes, blender::workbench::SceneState::cull_state, blender::draw::detail::PassBase< DrawCommandBufType >::draw_procedural(), DRW_STATE_BLEND_ALPHA, DRW_STATE_BLEND_OIT, DRW_STATE_DEPTH_LESS_EQUAL, DRW_STATE_STENCIL_NEQUAL, DRW_STATE_WRITE_COLOR, blender::workbench::ShaderCache::get(), GPU_PRIM_TRIS, blender::draw::detail::Pass< DrawCommandBufType >::init(), blender::workbench::MeshPass::init_pass(), blender::workbench::MeshPass::init_subpasses(), blender::workbench::SceneState::lighting_type, blender::workbench::OBJECT, blender::workbench::OBJECT_IN_FRONT, resolve_ps_, reveal_tx, blender::draw::detail::PassBase< DrawCommandBufType >::shader_set(), state, blender::draw::detail::PassBase< DrawCommandBufType >::state_set(), blender::draw::detail::PassBase< DrawCommandBufType >::state_stencil(), and blender::workbench::TRANSPARENT.
Referenced by blender::workbench::Instance::begin_sync().
| MeshPass blender::workbench::TransparentPass::accumulation_in_front_ps_ = {"Transparent.AccumulationInFront"} |
Definition at line 368 of file workbench_private.hh.
Referenced by blender::workbench::Instance::draw(), draw(), blender::workbench::Instance::draw_to_mesh_pass(), is_empty(), and sync().
| MeshPass blender::workbench::TransparentPass::accumulation_ps_ = {"Transparent.Accumulation"} |
Definition at line 367 of file workbench_private.hh.
Referenced by draw(), blender::workbench::Instance::draw_to_mesh_pass(), is_empty(), and sync().
| TextureFromPool blender::workbench::TransparentPass::accumulation_tx = {"accumulation_accumulation_tx"} |
Definition at line 363 of file workbench_private.hh.
| Framebuffer blender::workbench::TransparentPass::resolve_fb = {} |
Definition at line 370 of file workbench_private.hh.
Referenced by draw().
| PassSimple blender::workbench::TransparentPass::resolve_ps_ = {"Transparent.Resolve"} |
Definition at line 369 of file workbench_private.hh.
| TextureFromPool blender::workbench::TransparentPass::reveal_tx = {"accumulation_reveal_tx"} |
Definition at line 364 of file workbench_private.hh.
| Framebuffer blender::workbench::TransparentPass::transparent_fb = {} |
Definition at line 365 of file workbench_private.hh.
Referenced by draw().