|
Blender V5.0
|
#include <workbench_private.hh>
Public Member Functions | |
| void | init (const SceneState &scene_state, SceneResources &resources) |
| void | update () |
| void | sync () |
| void | object_sync (SceneState &scene_state, ObjectRef &ob_ref, ResourceHandleRange handle, const bool has_transp_mat) |
| void | draw (Manager &manager, View &view, SceneResources &resources, gpu::Texture &depth_stencil_tx, bool force_fail_method) |
| bool | is_debug () |
Definition at line 387 of file workbench_private.hh.
| void blender::workbench::ShadowPass::draw | ( | Manager & | manager, |
| View & | view, | ||
| SceneResources & | resources, | ||
| gpu::Texture & | depth_stencil_tx, | ||
| bool | force_fail_method ) |
Definition at line 428 of file workbench_shadow.cc.
References blender::workbench::SceneResources::color_tx, GPU_ATTACHMENT_TEXTURE, blender::draw::Manager::submit(), and view.
Referenced by blender::workbench::OpaquePass::draw(), and update().
| void blender::workbench::ShadowPass::init | ( | const SceneState & | scene_state, |
| SceneResources & | resources ) |
Definition at line 295 of file workbench_shadow.cc.
References clamp_f(), blender::draw::View::default_get(), Scene::display, blender::workbench::SceneState::draw_shadows, blender::draw::View::frustum_planes_get(), SceneDisplay::light_direction, blender::workbench::SceneState::scene, blender::workbench::SceneState::shading, WorldData::shadow_add, WorldData::shadow_direction_vs, SceneDisplay::shadow_focus, WorldData::shadow_focus, View3DShading::shadow_intensity, WorldData::shadow_mul, SceneDisplay::shadow_shift, WorldData::shadow_shift, blender::math::transform_direction(), blender::draw::View::viewmat(), and blender::workbench::SceneResources::world_buf.
| bool blender::workbench::ShadowPass::is_debug | ( | ) |
Definition at line 452 of file workbench_shadow.cc.
References DEBUG_SHADOW_VOLUME.
Referenced by blender::workbench::OpaquePass::draw(), and update().
| void blender::workbench::ShadowPass::object_sync | ( | SceneState & | scene_state, |
| ObjectRef & | ob_ref, | ||
| ResourceHandleRange | handle, | ||
| const bool | has_transp_mat ) |
Definition at line 380 of file workbench_shadow.cc.
References blender::workbench::SceneState::cull_state, blender::draw::detail::PassBase< DrawCommandBufType >::draw_expand(), blender::draw::DRW_cache_object_edge_detection_get(), blender::draw::DRW_cache_object_surface_get(), GPU_PRIM_TRIS, Object::id, ID::name, blender::draw::ObjectRef::object, printf, View(), and view.
Referenced by update().
| void blender::workbench::ShadowPass::sync | ( | ) |
Definition at line 329 of file workbench_shadow.cc.
References blender::draw::detail::PassBase< DrawCommandBufType >::bind_ubo(), DRW_STATE_BLEND_ADD_FULL, DRW_STATE_DEPTH_GREATER_EQUAL, DRW_STATE_DEPTH_LESS, DRW_STATE_STENCIL_ALWAYS, DRW_STATE_WRITE_COLOR, DRW_STATE_WRITE_STENCIL_SHADOW_FAIL, DRW_STATE_WRITE_STENCIL_SHADOW_PASS, blender::workbench::ShaderCache::get(), blender::draw::detail::PassBase< DrawCommandBufType >::shader_set(), state, and blender::draw::detail::PassBase< DrawCommandBufType >::sub().
Referenced by update().
| void blender::workbench::ShadowPass::update | ( | ) |
References draw(), is_debug(), object_sync(), sync(), and view.