|
Blender V4.3
|
#include <gl_immediate.hh>
Inherits blender::gpu::Immediate.
Public Member Functions | |
Creation & Deletion | |
| GLImmediate () | |
| ~GLImmediate () | |
Buffer management | |
| uchar * | begin () override |
| void | end () override |
Public Member Functions inherited from blender::gpu::Immediate | |
| Immediate () | |
| virtual | ~Immediate () |
Additional Inherited Members | |
Public Attributes inherited from blender::gpu::Immediate | |
| uchar * | vertex_data = nullptr |
| uint | vertex_idx = 0 |
| uint | vertex_len = 0 |
| uint16_t | unassigned_attr_bits = 0 |
| uint16_t | enabled_attr_bits = 0 |
| GPUPrimType | prim_type = GPU_PRIM_NONE |
| GPUVertFormat | vertex_format = {} |
| GPUShader * | shader = nullptr |
| bool | strict_vertex_len = true |
| Batch * | batch = nullptr |
| std::optional< eGPUBuiltinShader > | prev_builtin_shader |
| std::optional< eGPUBuiltinShader > | builtin_shader_bound |
| float | uniform_color [4] |
Definition at line 22 of file gl_immediate.hh.
| blender::gpu::GLImmediate::GLImmediate | ( | ) |
Definition at line 28 of file gl_immediate.cc.
References blender::gpu::DEFAULT_INTERNAL_BUFFER_SIZE, and blender::gpu::debug::object_label().
| blender::gpu::GLImmediate::~GLImmediate | ( | ) |
Definition at line 51 of file gl_immediate.cc.
|
overridevirtual |
Implements blender::gpu::Immediate.
Definition at line 65 of file gl_immediate.cc.
References BLI_assert, buffer_offset, buffer_size, data, blender::gpu::DEFAULT_INTERNAL_BUFFER_SIZE, GL_CHECK_RESOURCES, padding(), blender::gpu::Immediate::strict_vertex_len, GPUVertFormat::stride, vbo_id, vertex_buffer_size(), blender::gpu::Immediate::vertex_format, and blender::gpu::Immediate::vertex_len.
|
overridevirtual |
Implements blender::gpu::Immediate.
Definition at line 122 of file gl_immediate.cc.
References blender::gpu::StateManager::apply_state(), BLI_assert, buffer_offset, blender::gpu::GLContext::get(), GPU_PRIM_NONE, GPU_shader_bind(), blender::gpu::Immediate::prim_type, blender::gpu::Context::state_manager, blender::gpu::Immediate::strict_vertex_len, GPUVertFormat::stride, blender::gpu::to_gl(), blender::gpu::GLVertArray::update_bindings(), vertex_buffer_size(), blender::gpu::Immediate::vertex_format, blender::gpu::Immediate::vertex_idx, and blender::gpu::Immediate::vertex_len.
| size_t blender::gpu::GLImmediate::buffer_offset = 0 |
Offset of the mapped data in data.
Definition at line 31 of file gl_immediate.hh.
| size_t blender::gpu::GLImmediate::buffer_size = 0 |
Size of the whole buffer in bytes.
Definition at line 33 of file gl_immediate.hh.
Referenced by begin().
| GLuint blender::gpu::GLImmediate::vbo_id = 0 |
Opengl Handle for this buffer.
Definition at line 29 of file gl_immediate.hh.
Referenced by begin().