|
Blender V5.0
|
#include <mtl_state.hh>
Inherits blender::gpu::StateManager.
Public Member Functions | |
| MTLRenderPipelineStateDescriptor & | get_pipeline_descriptor () |
Memory barrier | |
| void | issue_barrier (GPUBarrier barrier_bits) override |
Texture State Management | |
| void | texture_bind (Texture *tex, GPUSamplerState sampler, int unit) override |
| void | texture_unbind (Texture *tex) override |
| void | texture_unbind_all () override |
| void | texture_unpack_row_length_set (uint len) override |
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 |
| Public Member Functions inherited from blender::gpu::StateManager | |
| virtual | ~StateManager ()=default |
| StateManager () | |
MTLStateManager | |
| MTLStateManager (MTLContext *ctx) | |
| void | apply_state () override |
| void | force_state () override |
Additional Inherited Members | |
| Public Attributes inherited from blender::gpu::StateManager | |
| GPUState | state |
| GPUStateMutable | mutable_state |
| std::array< TextureWriteFormat, GPU_MAX_IMAGE > | image_formats |
State manager keeping track of the draw state and applying it before drawing. Metal Implementation.
Definition at line 28 of file mtl_state.hh.
| blender::gpu::MTLStateManager::MTLStateManager | ( | MTLContext * | ctx | ) |
Definition at line 31 of file mtl_state.mm.
References blender::gpu::StateManager::mutable_state, blender::gpu::StateManager::state, and blender::gpu::StateManager::StateManager().
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 50 of file mtl_state.mm.
References apply_state(), blender::gpu::StateManager::mutable_state, and blender::gpu::StateManager::state.
Referenced by apply_state().
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 59 of file mtl_state.mm.
References BLI_assert, blender::gpu::StateManager::mutable_state, and blender::gpu::StateManager::state.
|
inline |
Definition at line 59 of file mtl_state.hh.
Referenced by blender::gpu::MTLShader::bake_current_pipeline_state(), and blender::gpu::MTLImmediate::end().
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 685 of file mtl_state.mm.
References BLI_assert, blender::gpu::Texture::format_get(), blender::gpu::MTLContext::get(), blender::gpu::StateManager::image_formats, and blender::gpu::MTLContext::texture_bind().
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 698 of file mtl_state.mm.
References BLI_assert, blender::gpu::MTLContext::get(), and blender::gpu::MTLContext::texture_unbind().
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 707 of file mtl_state.mm.
References BLI_assert, blender::gpu::MTLContext::get(), blender::gpu::StateManager::image_formats, blender::gpu::Invalid, and blender::gpu::MTLContext::texture_unbind_all().
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 575 of file mtl_state.mm.
References BLI_assert, blender::gpu::MTLContext::get(), GPU_BARRIER_STAGE_ANY, blender::gpu::MTLCommandBufferManager::insert_memory_barrier(), and blender::gpu::MTLContext::main_command_buffer.
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 642 of file mtl_state.mm.
References BLI_assert, blender::gpu::MTLContext::get(), blender::gpu::MTLContext::sampler_bind(), blender::gpu::MTLSamplerState::state, and blender::gpu::MTLContext::texture_bind().
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 663 of file mtl_state.mm.
References BLI_assert, blender::gpu::MTLContext::get(), and blender::gpu::MTLContext::texture_unbind().
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 672 of file mtl_state.mm.
References BLI_assert, blender::gpu::MTLContext::get(), and blender::gpu::MTLContext::texture_unbind_all().
|
overridevirtual |
Implements blender::gpu::StateManager.
Definition at line 635 of file mtl_state.mm.
References blender::gpu::MTLContext::get(), len, blender::gpu::MTLContext::pipeline_state, and blender::gpu::MTLContextGlobalShaderPipelineState::unpack_row_length.