|
Blender V4.3
|
#include <workbench_private.hh>
Public Member Functions | |
TransparentDepthPass | |
| void | sync (const SceneState &scene_state, SceneResources &resources) |
| void | draw (Manager &manager, View &view, SceneResources &resources) |
| bool | is_empty () const |
Public Attributes | |
| MeshPass | main_ps_ = {"TransparentDepth.Main"} |
| Framebuffer | main_fb = {"TransparentDepth.Main"} |
| MeshPass | in_front_ps_ = {"TransparentDepth.InFront"} |
| Framebuffer | in_front_fb = {"TransparentDepth.InFront"} |
| PassSimple | merge_ps_ = {"TransparentDepth.Merge"} |
| Framebuffer | merge_fb = {"TransparentDepth.Merge"} |
Definition at line 377 of file workbench_private.hh.
| void blender::workbench::TransparentDepthPass::draw | ( | Manager & | manager, |
| View & | view, | ||
| SceneResources & | resources ) |
Definition at line 325 of file workbench_mesh_passes.cc.
References blender::draw::Framebuffer::bind(), blender::workbench::SceneResources::depth_in_front_tx, blender::workbench::SceneResources::depth_tx, blender::draw::Framebuffer::ensure(), GPU_ATTACHMENT_NONE, GPU_ATTACHMENT_TEXTURE, in_front_fb, in_front_ps_, blender::workbench::MeshPass::is_empty(), is_empty(), blender::draw::Texture::is_valid(), main_fb, main_ps_, merge_fb, merge_ps_, blender::workbench::SceneResources::object_id_tx, and blender::draw::Manager::submit().
Referenced by blender::workbench::Instance::draw().
| bool blender::workbench::TransparentDepthPass::is_empty | ( | ) | const |
Definition at line 359 of file workbench_mesh_passes.cc.
References in_front_ps_, blender::workbench::MeshPass::is_empty(), and main_ps_.
Referenced by draw().
| void blender::workbench::TransparentDepthPass::sync | ( | const SceneState & | scene_state, |
| SceneResources & | resources ) |
Definition at line 297 of file workbench_mesh_passes.cc.
References blender::draw::detail::PassBase< DrawCommandBufType >::bind_texture(), blender::workbench::SceneState::clip_planes, blender::workbench::SceneState::cull_state, blender::workbench::SceneResources::depth_in_front_tx, blender::draw::detail::PassBase< DrawCommandBufType >::draw_procedural(), DRW_STATE_DEPTH_LESS, DRW_STATE_DEPTH_LESS_EQUAL, DRW_STATE_STENCIL_ALWAYS, DRW_STATE_STENCIL_EQUAL, DRW_STATE_STENCIL_NEQUAL, DRW_STATE_WRITE_COLOR, DRW_STATE_WRITE_DEPTH, DRW_STATE_WRITE_STENCIL, blender::workbench::FLAT, blender::workbench::ShaderCache::get(), GPU_PRIM_TRIS, in_front_ps_, blender::draw::detail::Pass< DrawCommandBufType >::init(), blender::workbench::MeshPass::init_pass(), blender::workbench::MeshPass::init_subpasses(), main_ps_, merge_ps_, blender::workbench::OBJECT, blender::workbench::OBJECT_IN_FRONT, blender::workbench::OPAQUE, blender::draw::detail::PassBase< DrawCommandBufType >::shader_set(), state, blender::draw::detail::PassBase< DrawCommandBufType >::state_set(), and blender::draw::detail::PassBase< DrawCommandBufType >::state_stencil().
Referenced by blender::workbench::Instance::begin_sync().
| Framebuffer blender::workbench::TransparentDepthPass::in_front_fb = {"TransparentDepth.InFront"} |
Definition at line 382 of file workbench_private.hh.
Referenced by draw().
| MeshPass blender::workbench::TransparentDepthPass::in_front_ps_ = {"TransparentDepth.InFront"} |
Definition at line 381 of file workbench_private.hh.
Referenced by draw(), blender::workbench::Instance::draw_to_mesh_pass(), is_empty(), and sync().
| Framebuffer blender::workbench::TransparentDepthPass::main_fb = {"TransparentDepth.Main"} |
Definition at line 380 of file workbench_private.hh.
Referenced by draw().
| MeshPass blender::workbench::TransparentDepthPass::main_ps_ = {"TransparentDepth.Main"} |
Definition at line 379 of file workbench_private.hh.
Referenced by draw(), blender::workbench::Instance::draw_to_mesh_pass(), is_empty(), and sync().
| Framebuffer blender::workbench::TransparentDepthPass::merge_fb = {"TransparentDepth.Merge"} |
Definition at line 384 of file workbench_private.hh.
Referenced by draw().
| PassSimple blender::workbench::TransparentDepthPass::merge_ps_ = {"TransparentDepth.Merge"} |
Definition at line 383 of file workbench_private.hh.