|
Blender V5.0
|
#include <DRW_gpu_wrapper.hh>
Inherits blender::NonCopyable.
Inherited by blender::draw::TextureFromPool, blender::draw::TextureRef, and blender::eevee::UtilityTexture.
Static Public Member Functions | |
| static void | swap (Texture &a, Texture &b) |
Protected Member Functions | |
| void | free_texture_views () |
Protected Attributes | |
| gpu::Texture * | tx_ = nullptr |
| gpu::Texture * | stencil_view_ = nullptr |
| Vector< gpu::Texture *, 0 > | mip_views_ |
| Vector< gpu::Texture *, 0 > | layer_views_ |
| gpu::Texture * | layer_range_view_ = nullptr |
| const char * | name_ |
Definition at line 525 of file DRW_gpu_wrapper.hh.
|
inline |
Definition at line 535 of file DRW_gpu_wrapper.hh.
Referenced by operator=(), ptr(), swap(), blender::draw::TextureFromPool::swap(), blender::draw::TextureFromPool::swap(), Texture(), blender::draw::TextureFromPool::TextureFromPool(), and blender::eevee::UtilityTexture::UtilityTexture().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
default |
References Texture().
|
inline |
Definition at line 597 of file DRW_gpu_wrapper.hh.
References free().
|
inline |
Clear the entirety of the texture using one pixel worth of data.
Definition at line 905 of file DRW_gpu_wrapper.hh.
References GPU_DATA_FLOAT, GPU_texture_clear(), and tx_.
Referenced by debug_clear(), blender::eevee::DepthOfField::render(), blender::eevee::VolumeLayer::render(), and blender::draw::test_eevee_shadow_finalize().
|
inline |
Clear the entirety of the texture using one pixel worth of data.
Definition at line 921 of file DRW_gpu_wrapper.hh.
References GPU_DATA_INT, GPU_texture_clear(), and tx_.
|
inline |
Clear the entirety of the texture using one pixel worth of data.
Definition at line 913 of file DRW_gpu_wrapper.hh.
References GPU_DATA_UINT, GPU_texture_clear(), and tx_.
|
inline |
Clear the texture to NaN for floats, or a to debug value for integers. (For debugging uninitialized data issues)
Definition at line 930 of file DRW_gpu_wrapper.hh.
References clear(), GPU_texture_dimensions(), GPU_texture_has_float_format(), GPU_texture_has_integer_format(), GPU_texture_has_normalized_format(), GPU_texture_has_signed_format(), and NAN_FLT.
Referenced by blender::draw::TextureFromPool::acquire().
|
inline |
Definition at line 860 of file DRW_gpu_wrapper.hh.
References GPU_texture_depth(), and tx_.
|
inline |
Ensure the texture has the correct properties. Recreating it if needed. Return true if a texture has been created.
Definition at line 652 of file DRW_gpu_wrapper.hh.
References data, and GPU_TEXTURE_USAGE_GENERAL.
|
inline |
Ensure the texture has the correct properties. Recreating it if needed. Return true if a texture has been created.
Definition at line 665 of file DRW_gpu_wrapper.hh.
References BLI_assert, data, and GPU_TEXTURE_USAGE_GENERAL.
|
inline |
Ensure the texture has the correct properties. Recreating it if needed. Return true if a texture has been created.
Definition at line 680 of file DRW_gpu_wrapper.hh.
References data, GPU_TEXTURE_USAGE_GENERAL, and UNPACK2.
Referenced by blender::eevee::DepthOfField::render(), blender::draw::gpencil::render_init_buffers(), blender::draw::test_draw_pass_all_commands(), blender::draw::test_draw_resource_id_gen(), blender::draw::test_draw_submit_only(), blender::draw::test_draw_visibility(), blender::draw::test_eevee_shadow_finalize(), and blender::draw::test_eevee_shadow_tilemap_amend().
|
inline |
Ensure the texture has the correct properties. Recreating it if needed. Return true if a texture has been created.
Definition at line 693 of file DRW_gpu_wrapper.hh.
References BLI_assert, data, GPU_TEXTURE_USAGE_GENERAL, and UNPACK2.
|
inline |
Ensure the texture has the correct properties. Recreating it if needed. Return true if a texture has been created.
Definition at line 708 of file DRW_gpu_wrapper.hh.
References data, GPU_TEXTURE_USAGE_GENERAL, and UNPACK3.
Referenced by blender::eevee::Precompute::Precompute().
|
inline |
Ensure the texture has the correct properties. Recreating it if needed. Return true if a texture has been created.
Definition at line 721 of file DRW_gpu_wrapper.hh.
References data, and GPU_TEXTURE_USAGE_GENERAL.
|
inline |
Ensure the texture has the correct properties. Recreating it if needed. Return true if a texture has been created.
Definition at line 734 of file DRW_gpu_wrapper.hh.
References data, and GPU_TEXTURE_USAGE_GENERAL.
|
inline |
Ensure the availability of layer views. Layer views covers all layers of array textures. Returns true if the views were (re)created.
Definition at line 783 of file DRW_gpu_wrapper.hh.
References GPU_texture_create_view(), GPU_texture_format(), GPU_TEXTURE_FREE_SAFE, GPU_texture_layer_count(), i, layer_views_, name_, tx_, and view.
Referenced by blender::eevee::Film::get_aov_texture(), and blender::eevee::Film::get_pass_texture().
|
inline |
Ensure the availability of mipmap views. MIP view covers all layers of array textures.
Definition at line 748 of file DRW_gpu_wrapper.hh.
References GPU_texture_create_view(), GPU_texture_format(), GPU_TEXTURE_FREE_SAFE, GPU_texture_mip_count(), i, mip_views_, name_, tx_, and view.
|
inline |
Definition at line 959 of file DRW_gpu_wrapper.hh.
References GPU_texture_filter_mode(), and tx_.
|
inline |
Free the internal texture but not the #draw::Texture itself.
Definition at line 967 of file DRW_gpu_wrapper.hh.
References free_texture_views(), GPU_TEXTURE_FREE_SAFE, and tx_.
Referenced by operator=(), and ~Texture().
|
inlineprotected |
Definition at line 987 of file DRW_gpu_wrapper.hh.
References GPU_TEXTURE_FREE_SAFE, layer_range_view_, layer_views_, mip_views_, stencil_view_, and view.
Referenced by free(), and blender::draw::TextureRef::wrap().
|
inline |
Definition at line 602 of file DRW_gpu_wrapper.hh.
References tx_.
Referenced by blender::draw::compositor_engine::Context::get_pass().
|
inline |
Definition at line 855 of file DRW_gpu_wrapper.hh.
References GPU_texture_height(), and tx_.
Referenced by blender::eevee::MotionBlurModule::render().
|
inline |
Definition at line 890 of file DRW_gpu_wrapper.hh.
References GPU_texture_is_array(), and tx_.
|
inline |
Definition at line 885 of file DRW_gpu_wrapper.hh.
References GPU_texture_is_cube(), and tx_.
|
inline |
Definition at line 870 of file DRW_gpu_wrapper.hh.
References GPU_texture_has_depth_format(), and tx_.
|
inline |
Definition at line 880 of file DRW_gpu_wrapper.hh.
References GPU_texture_has_integer_format(), and tx_.
|
inline |
Definition at line 875 of file DRW_gpu_wrapper.hh.
References GPU_texture_has_stencil_format(), and tx_.
|
inline |
Returns true if the texture has been allocated or acquired from the pool.
Definition at line 845 of file DRW_gpu_wrapper.hh.
References tx_.
Referenced by blender::draw::overlay::Resources::acquire(), blender::workbench::AntiAliasingPass::draw(), blender::workbench::OpaquePass::draw(), blender::workbench::TransparentDepthPass::draw(), blender::draw::overlay::MeshUVs::end_sync(), layer_range_view(), blender::eevee::RayTraceModule::render(), and blender::draw::gpencil::render_init_buffers().
|
inline |
Layer range view cover only the given range. This can only be called to create one range. View is recreated if:
Definition at line 824 of file DRW_gpu_wrapper.hh.
References BLI_assert, BLI_assert_msg, GPU_texture_create_view(), GPU_texture_format(), GPU_TEXTURE_FREE_SAFE, GPU_texture_layer_count(), is_valid(), layer_range_view_, name_, and tx_.
|
inline |
Definition at line 800 of file DRW_gpu_wrapper.hh.
References layer_views_.
Referenced by blender::eevee::Film::get_aov_texture(), blender::eevee::Film::get_pass_texture(), blender::eevee::ShadingView::render(), and blender::eevee::PlanarProbeModule::set_view().
|
inline |
Definition at line 773 of file DRW_gpu_wrapper.hh.
References GPU_texture_mip_count(), and tx_.
|
inline |
Definition at line 765 of file DRW_gpu_wrapper.hh.
References BLI_assert_msg, and mip_views_.
|
inline |
Definition at line 608 of file DRW_gpu_wrapper.hh.
References BLI_assert, and tx_.
|
inline |
Definition at line 615 of file DRW_gpu_wrapper.hh.
References tx_.
Definition at line 626 of file DRW_gpu_wrapper.hh.
References free(), blender::gpu::Texture::name_, and Texture().
|
inline |
Definition at line 865 of file DRW_gpu_wrapper.hh.
References GPU_texture_height(), GPU_texture_width(), and tx_.
|
inline |
WORKAROUND: used when needing a ref to the Texture and not the gpu::Texture.
Definition at line 621 of file DRW_gpu_wrapper.hh.
References Texture().
Referenced by blender::workbench::VolumePass::draw().
|
inline |
Returns a buffer containing the texture data for the specified miplvl. The memory block needs to be manually freed by MEM_freeN().
Definition at line 954 of file DRW_gpu_wrapper.hh.
References GPU_texture_read(), T, and tx_.
Referenced by blender::eevee::Precompute::Precompute(), blender::draw::test_eevee_shadow_finalize(), and blender::draw::test_eevee_shadow_tilemap_amend().
|
inline |
Definition at line 895 of file DRW_gpu_wrapper.hh.
References GPU_texture_get_mipmap_size(), size(), and tx_.
Referenced by blender::draw::overlay::Resources::acquire(), blender::draw::overlay::Wireframe::copy_depth(), blender::draw::overlay::Outline::draw_line_only_ex(), blender::draw::overlay::MeshUVs::end_sync(), blender::draw::gpencil::render_frame(), and size().
|
inline |
Definition at line 805 of file DRW_gpu_wrapper.hh.
References GPU_texture_create_view(), GPU_texture_format(), name_, stencil_view_, and tx_.
Referenced by blender::workbench::VolumePass::draw().
Swap the content of the two textures.
Definition at line 976 of file DRW_gpu_wrapper.hh.
References b, layer_range_view_, layer_views_, mip_views_, name_, stencil_view_, Texture(), and tx_.
Referenced by blender::draw::TextureFromPool::swap(), and blender::draw::TextureFromPool::swap().
|
inline |
Definition at line 850 of file DRW_gpu_wrapper.hh.
References GPU_texture_width(), and tx_.
Referenced by blender::eevee::MotionBlurModule::render().
|
protected |
Definition at line 531 of file DRW_gpu_wrapper.hh.
Referenced by free_texture_views(), layer_range_view(), and swap().
|
protected |
Definition at line 530 of file DRW_gpu_wrapper.hh.
Referenced by ensure_layer_views(), free_texture_views(), layer_view(), and swap().
|
protected |
Definition at line 529 of file DRW_gpu_wrapper.hh.
Referenced by ensure_mip_views(), free_texture_views(), mip_view(), and swap().
|
protected |
Definition at line 532 of file DRW_gpu_wrapper.hh.
Referenced by ensure_layer_views(), ensure_mip_views(), layer_range_view(), stencil_view(), swap(), Texture(), Texture(), Texture(), Texture(), Texture(), and Texture().
|
protected |
Definition at line 528 of file DRW_gpu_wrapper.hh.
Referenced by free_texture_views(), stencil_view(), and swap().
|
protected |
Definition at line 527 of file DRW_gpu_wrapper.hh.
Referenced by clear(), clear(), clear(), depth(), ensure_layer_views(), ensure_mip_views(), filter_mode(), free(), gpu_texture(), height(), is_array(), is_cube(), is_depth(), is_integer(), is_stencil(), is_valid(), layer_range_view(), mip_count(), operator gpu::Texture *(), operator&(), pixel_count(), read(), size(), stencil_view(), swap(), Texture(), Texture(), Texture(), Texture(), Texture(), and width().