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) |
![]() | |
StorageBuf (size_t size, const char *name) | |
virtual | ~StorageBuf () |
Data upload / update | |
void | update (const void *data) override |
Additional Inherited Members | |
![]() | |
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().