|
Blender
V3.3
|
#include <gl_storage_buffer.hh>
Public Member Functions | |
Creation & Deletion | |
| GLStorageBuf (size_t size, GPUUsageType usage, const char *name) | |
| ~GLStorageBuf () | |
Usage | |
| void | bind (int slot) override |
| void | unbind () override |
| void | clear (eGPUTextureFormat internal_format, eGPUDataFormat data_format, void *data) override |
| void | copy_sub (VertBuf *src, uint dst_offset, uint src_offset, uint copy_size) override |
| void | bind_as (GLenum target) |
Public Member Functions inherited from blender::gpu::StorageBuf | |
| StorageBuf (size_t size, const char *name) | |
| virtual | ~StorageBuf () |
Data upload / update | |
| void | update (const void *data) override |
Additional Inherited Members | |
Protected Attributes inherited from blender::gpu::StorageBuf | |
| size_t | size_in_bytes_ |
| void * | data_ = nullptr |
| char | name_ [DEBUG_NAME_LEN] |
Implementation of Storage Buffers using OpenGL.
Definition at line 22 of file gl_storage_buffer.hh.
| blender::gpu::GLStorageBuf::GLStorageBuf | ( | size_t | size, |
| GPUUsageType | usage, | ||
| const char * | name | ||
| ) |
Definition at line 24 of file gl_storage_buffer.cc.
References BLI_assert, blender::gpu::GLContext::max_ssbo_size, and size().
| blender::gpu::GLStorageBuf::~GLStorageBuf | ( | ) |
Definition at line 32 of file gl_storage_buffer.cc.
References blender::gpu::GLContext::buf_free().
|
overridevirtual |
Implements blender::gpu::StorageBuf.
Definition at line 70 of file gl_storage_buffer.cc.
References BLI_assert, blender::gpu::StorageBuf::data_, blender::gpu::GLContext::max_ssbo_binds, MEM_SAFE_FREE, blender::gpu::StorageBuf::name_, and update().
| void blender::gpu::GLStorageBuf::bind_as | ( | GLenum | target | ) |
Definition at line 101 of file gl_storage_buffer.cc.
References BLI_assert_msg.
|
overridevirtual |
Implements blender::gpu::StorageBuf.
Definition at line 120 of file gl_storage_buffer.cc.
References data, blender::gpu::GLContext::direct_state_access_support, blender::gpu::to_gl(), blender::gpu::to_gl_data_format(), and blender::gpu::to_gl_internal_format().
|
overridevirtual |
Implements blender::gpu::StorageBuf.
Definition at line 145 of file gl_storage_buffer.cc.
References blender::gpu::GLContext::direct_state_access_support, and src.
|
overridevirtual |
Implements blender::gpu::StorageBuf.
Definition at line 108 of file gl_storage_buffer.cc.
Implements blender::gpu::StorageBuf.
Definition at line 54 of file gl_storage_buffer.cc.
References data, and blender::gpu::StorageBuf::size_in_bytes_.
Referenced by bind().