|
Blender V5.0
|
#include <workbench_private.hh>
Public Member Functions | |
| ~SceneResources () | |
| void | init (const SceneState &scene_state, const DRWContext *ctx) |
| void | load_jitter_tx (int total_samples) |
Public Attributes | |
| StringRefNull | current_matcap = {} |
| Texture | matcap_tx = "matcap_tx" |
| TextureFromPool | object_id_tx = "wb_object_id_tx" |
| TextureRef | color_tx |
| TextureRef | depth_tx |
| TextureRef | depth_in_front_tx |
| Framebuffer | clear_fb = {"Clear Main"} |
| Framebuffer | clear_depth_only_fb = {"Clear Depth"} |
| Framebuffer | clear_in_front_fb = {"Clear In Front"} |
| StorageVectorBuffer< Material > | material_buf = {"material_buf"} |
| UniformBuffer< WorldData > | world_buf = {} |
| UniformArrayBuffer< float4, 6 > | clip_planes_buf |
| Texture | jitter_tx = "wb_jitter_tx" |
| CavityEffect | cavity = {} |
| Texture | missing_tx = "missing_tx" |
| MaterialTexture | missing_texture |
| Texture | dummy_texture_tx = {"dummy_texture"} |
| Texture | dummy_tile_data_tx = {"dummy_tile_data"} |
| Texture | dummy_tile_array_tx = {"dummy_tile_array"} |
| gpu::Batch * | volume_cube_batch = nullptr |
Static Public Attributes | |
| static const int | jitter_tx_size = 64 |
Definition at line 236 of file workbench_private.hh.
|
inline |
Definition at line 269 of file workbench_private.hh.
References GPU_BATCH_DISCARD_SAFE, and volume_cube_batch.
| void blender::workbench::SceneResources::init | ( | const SceneState & | scene_state, |
| const DRWContext * | ctx ) |
Definition at line 110 of file workbench_resources.cc.
References blender::workbench::SceneState::background_color, BKE_studiolight_find(), BKE_studiolight_studio_edit_get(), cavity, blender::workbench::SceneState::clip_planes, clip_planes_buf, current_matcap, blender::workbench::SceneState::draw_dof, dummy_texture_tx, dummy_tile_array_tx, dummy_tile_data_tx, StudioLight::flag, View3DShading::flag, blender::workbench::get_light_data_from_studio_solidlight(), blender::workbench::get_matcap_tx(), blender::workbench::get_world_shading_rotation_matrix(), GPU_batch_unit_cube(), GPU_TEXTURE_USAGE_SHADER_READ, i, blender::MatBase< float, 4, 4 >::identity(), DRWContext::is_image_render(), jitter_tx, StudioLight::light, View3DShading::light, StudioLight::light_ambient, load_jitter_tx(), View3DShading::matcap, matcap_tx, missing_texture, missing_tx, StudioLight::name, View3DShading::object_outline_color, blender::workbench::SceneState::shading, View3DShading::studio_light, View3DShading::studiolight_rot_z, STUDIOLIGHT_SPECULAR_HIGHLIGHT_PASS, STUDIOLIGHT_TYPE_MATCAP, STUDIOLIGHT_TYPE_STUDIO, U, V3D_LIGHTING_MATCAP, V3D_SHADING_MATCAP_FLIP_X, V3D_SHADING_SPECULAR_HIGHLIGHT, V3D_SHADING_WORLD_ORIENTATION, DRWContext::viewport_size_get(), volume_cube_batch, world_buf, and View3DShading::xray_alpha.
| void blender::workbench::SceneResources::load_jitter_tx | ( | int | total_samples | ) |
Definition at line 82 of file workbench_resources.cc.
References blender::eevee::lut::blue_noise, clamp_f(), blender::math::cos(), GPU_TEXTURE_USAGE_SHADER_READ, jitter_tx, jitter_tx_size, M_PI, blender::math::sin(), x, and y.
Referenced by blender::workbench::CavityEffect::init(), and init().
| CavityEffect blender::workbench::SceneResources::cavity = {} |
Definition at line 258 of file workbench_private.hh.
Referenced by init(), and blender::workbench::OpaquePass::sync().
| Framebuffer blender::workbench::SceneResources::clear_depth_only_fb = {"Clear Depth"} |
Definition at line 249 of file workbench_private.hh.
| Framebuffer blender::workbench::SceneResources::clear_fb = {"Clear Main"} |
Definition at line 248 of file workbench_private.hh.
| Framebuffer blender::workbench::SceneResources::clear_in_front_fb = {"Clear In Front"} |
Definition at line 250 of file workbench_private.hh.
| UniformArrayBuffer<float4, 6> blender::workbench::SceneResources::clip_planes_buf |
Definition at line 254 of file workbench_private.hh.
Referenced by init(), and blender::workbench::MeshPass::init_pass().
| TextureRef blender::workbench::SceneResources::color_tx |
Definition at line 244 of file workbench_private.hh.
Referenced by blender::workbench::AntiAliasingPass::draw(), blender::workbench::DofPass::draw(), blender::workbench::OpaquePass::draw(), blender::workbench::OutlinePass::draw(), blender::workbench::ShadowPass::draw(), blender::workbench::TransparentPass::draw(), blender::workbench::VolumePass::draw(), blender::workbench::AntiAliasingPass::sync(), and blender::workbench::DofPass::sync().
| StringRefNull blender::workbench::SceneResources::current_matcap = {} |
Definition at line 239 of file workbench_private.hh.
Referenced by init().
| TextureRef blender::workbench::SceneResources::depth_in_front_tx |
Definition at line 246 of file workbench_private.hh.
Referenced by blender::workbench::AntiAliasingPass::draw(), blender::workbench::OpaquePass::draw(), blender::workbench::TransparentDepthPass::draw(), blender::workbench::TransparentPass::draw(), and blender::workbench::TransparentDepthPass::sync().
| TextureRef blender::workbench::SceneResources::depth_tx |
Definition at line 245 of file workbench_private.hh.
Referenced by blender::workbench::AntiAliasingPass::draw(), blender::workbench::OpaquePass::draw(), blender::workbench::TransparentDepthPass::draw(), blender::workbench::TransparentPass::draw(), blender::workbench::VolumePass::draw(), blender::workbench::VolumePass::object_sync_modifier(), blender::workbench::VolumePass::object_sync_volume(), blender::workbench::DofPass::sync(), and blender::workbench::OpaquePass::sync().
| Texture blender::workbench::SceneResources::dummy_texture_tx = {"dummy_texture"} |
Definition at line 263 of file workbench_private.hh.
Referenced by init(), and blender::workbench::MeshPass::init_pass().
| Texture blender::workbench::SceneResources::dummy_tile_array_tx = {"dummy_tile_array"} |
Definition at line 265 of file workbench_private.hh.
Referenced by init(), and blender::workbench::MeshPass::init_pass().
| Texture blender::workbench::SceneResources::dummy_tile_data_tx = {"dummy_tile_data"} |
Definition at line 264 of file workbench_private.hh.
Referenced by init(), and blender::workbench::MeshPass::init_pass().
| Texture blender::workbench::SceneResources::jitter_tx = "wb_jitter_tx" |
Definition at line 256 of file workbench_private.hh.
Referenced by init(), load_jitter_tx(), blender::workbench::CavityEffect::setup_resolve_pass(), and blender::workbench::DofPass::sync().
|
static |
Definition at line 237 of file workbench_private.hh.
Referenced by load_jitter_tx().
| Texture blender::workbench::SceneResources::matcap_tx = "matcap_tx" |
Definition at line 240 of file workbench_private.hh.
Referenced by init(), blender::workbench::MeshPass::init_pass(), and blender::workbench::OpaquePass::sync().
| StorageVectorBuffer<Material> blender::workbench::SceneResources::material_buf = {"material_buf"} |
Definition at line 252 of file workbench_private.hh.
Referenced by blender::workbench::MeshPass::init_pass().
| MaterialTexture blender::workbench::SceneResources::missing_texture |
Definition at line 261 of file workbench_private.hh.
Referenced by init(), and blender::workbench::ObjectState::ObjectState().
| Texture blender::workbench::SceneResources::missing_tx = "missing_tx" |
Definition at line 260 of file workbench_private.hh.
Referenced by init().
| TextureFromPool blender::workbench::SceneResources::object_id_tx = "wb_object_id_tx" |
Definition at line 242 of file workbench_private.hh.
Referenced by blender::workbench::OpaquePass::draw(), blender::workbench::TransparentDepthPass::draw(), blender::workbench::CavityEffect::setup_resolve_pass(), and blender::workbench::OutlinePass::sync().
| gpu::Batch* blender::workbench::SceneResources::volume_cube_batch = nullptr |
Definition at line 267 of file workbench_private.hh.
Referenced by init(), and ~SceneResources().
| UniformBuffer<WorldData> blender::workbench::SceneResources::world_buf = {} |
Definition at line 253 of file workbench_private.hh.
Referenced by blender::workbench::CavityEffect::init(), init(), blender::workbench::ShadowPass::init(), blender::workbench::MeshPass::init_pass(), blender::workbench::OpaquePass::sync(), blender::workbench::OutlinePass::sync(), and blender::workbench::VolumePass::sync().