|
Blender V5.0
|
#include <gl_state.hh>
Inherits blender::gpu::StateManager.
Public Member Functions | |
Memory barrier | |
| void | issue_barrier (GPUBarrier barrier_bits) override |
| Public Member Functions inherited from blender::gpu::StateManager | |
| virtual | ~StateManager ()=default |
| StateManager () | |
Public Attributes | |
| GLFrameBuffer * | active_fb = nullptr |
| Public Attributes inherited from blender::gpu::StateManager | |
| GPUState | state |
| GPUStateMutable | mutable_state |
| std::array< TextureWriteFormat, GPU_MAX_IMAGE > | image_formats |
GLStateManager | |
| GLStateManager () | |
| void | apply_state () override |
| void | force_state () override |
Texture State Management | |
| void | texture_bind (Texture *tex, GPUSamplerState sampler, int unit) override |
| void | texture_bind_temp (GLTexture *tex) |
| void | texture_unbind (Texture *tex) override |
| void | texture_unbind_all () override |
| uint64_t | bound_texture_slots () |
| void | texture_unpack_row_length_set (uint len) override |
| uint | texture_unpack_row_length_get () const |
Image Binding (from image load store) | |
| void | image_bind (Texture *tex, int unit) override |
| void | image_unbind (Texture *tex) override |
| void | image_unbind_all () override |
| uint8_t | bound_image_slots () |
State manager keeping track of the draw state and applying it before drawing. Opengl Implementation.
Definition at line 29 of file gl_state.hh.
| blender::gpu::GLStateManager::GLStateManager | ( | ) |
Definition at line 28 of file gl_state.cc.
References blender::gpu::StateManager::mutable_state, and blender::gpu::StateManager::state.
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 54 of file gl_state.cc.
References active_fb, blender::gpu::StateManager::mutable_state, and blender::gpu::StateManager::state.
Referenced by blender::gpu::GLBackend::compute_dispatch(), and blender::gpu::GLBackend::compute_dispatch_indirect().
| uint8_t blender::gpu::GLStateManager::bound_image_slots | ( | ) |
Definition at line 649 of file gl_state.cc.
References ARRAY_SIZE, and i.
| uint64_t blender::gpu::GLStateManager::bound_texture_slots | ( | ) |
Definition at line 563 of file gl_state.cc.
References ARRAY_SIZE, and i.
|
overridevirtual |
Will set all the states regardless of the current ones.
Implements blender::gpu::StateManager.
Definition at line 65 of file gl_state.cc.
References blender::gpu::StateManager::mutable_state, and blender::gpu::StateManager::state.
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 580 of file gl_state.cc.
References BLI_assert, blender::gpu::GLTexture::check_feedback_loop(), blender::gpu::Texture::format_, blender::gpu::Texture::format_get(), G, G_DEBUG_GPU, blender::gpu::StateManager::image_formats, and blender::gpu::to_gl_internal_format().
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 595 of file gl_state.cc.
References ARRAY_SIZE, i, blender::gpu::StateManager::image_formats, and blender::gpu::Invalid.
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 613 of file gl_state.cc.
References ARRAY_SIZE, i, blender::gpu::StateManager::image_formats, and blender::gpu::Invalid.
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 666 of file gl_state.cc.
References blender::gpu::to_gl().
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 465 of file gl_state.cc.
References BLI_assert, blender::gpu::GLTexture::check_feedback_loop(), G, G_DEBUG_GPU, blender::gpu::GLTexture::get_sampler(), and GPU_max_textures().
| void blender::gpu::GLStateManager::texture_bind_temp | ( | GLTexture * | tex | ) |
Bind the texture to slot 0 for editing purpose. Used by legacy pipeline.
Definition at line 485 of file gl_state.cc.
Referenced by blender::gpu::GLTexture::generate_mipmap(), blender::gpu::GLTexture::init_internal(), blender::gpu::GLTexture::init_internal(), blender::gpu::GLTexture::mip_range_set(), blender::gpu::GLTexture::read(), blender::gpu::GLTexture::swizzle_set(), blender::gpu::GLTexture::update_sub(), and blender::gpu::GLTexture::update_sub().
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 496 of file gl_state.cc.
References ARRAY_SIZE, and i.
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 514 of file gl_state.cc.
References ARRAY_SIZE, and i.
| uint blender::gpu::GLStateManager::texture_unpack_row_length_get | ( | ) | const |
Definition at line 558 of file gl_state.cc.
Referenced by blender::gpu::GLTexture::update_sub().
|
overridevirtual |
Row length for unpacking host data when uploading texture data.
When set to zero (0), host data can be assumed to be stored sequentially.
Implements blender::gpu::StateManager.
Definition at line 553 of file gl_state.cc.
References len.
| GLFrameBuffer* blender::gpu::GLStateManager::active_fb = nullptr |
Another reference to the active frame-buffer.
Definition at line 32 of file gl_state.hh.
Referenced by apply_state().