|
Blender
V3.3
|
#include "MEM_guardedalloc.h"#include <cstring>#include "BLI_blenlib.h"#include "BLI_math_base.h"#include "gpu_backend.hh"#include "GPU_material.h"#include "GPU_vertex_buffer.h"#include "GPU_storage_buffer.h"#include "gpu_storage_buffer_private.hh"#include "gpu_vertex_buffer_private.hh"Go to the source code of this file.
Namespaces | |
| blender | |
| blender::gpu | |
Functions | |
C-API | |
| GPUStorageBuf * | GPU_storagebuf_create_ex (size_t size, const void *data, GPUUsageType usage, const char *name) |
| void | GPU_storagebuf_free (GPUStorageBuf *ssbo) |
| void | GPU_storagebuf_update (GPUStorageBuf *ssbo, const void *data) |
| void | GPU_storagebuf_bind (GPUStorageBuf *ssbo, int slot) |
| void | GPU_storagebuf_unbind (GPUStorageBuf *ssbo) |
| void | GPU_storagebuf_unbind_all () |
| void | GPU_storagebuf_clear (GPUStorageBuf *ssbo, eGPUTextureFormat internal_format, eGPUDataFormat data_format, void *data) |
| void | GPU_storagebuf_clear_to_zero (GPUStorageBuf *ssbo) |
| void | GPU_storagebuf_copy_sub_from_vertbuf (GPUStorageBuf *ssbo, GPUVertBuf *src, uint dst_offset, uint src_offset, uint copy_size) |
| Copy a part of a vertex buffer to a storage buffer. More... | |
| void GPU_storagebuf_bind | ( | GPUStorageBuf * | ssbo, |
| int | slot | ||
| ) |
Definition at line 77 of file gpu_storage_buffer.cc.
References blender::gpu::unwrap().
Referenced by draw_update_uniforms().
| void GPU_storagebuf_clear | ( | GPUStorageBuf * | ssbo, |
| eGPUTextureFormat | internal_format, | ||
| eGPUDataFormat | data_format, | ||
| void * | data | ||
| ) |
Definition at line 92 of file gpu_storage_buffer.cc.
References data, and blender::gpu::unwrap().
Referenced by GPU_storagebuf_clear_to_zero().
| void GPU_storagebuf_clear_to_zero | ( | GPUStorageBuf * | ssbo | ) |
Definition at line 100 of file gpu_storage_buffer.cc.
References data, GPU_DATA_UINT, GPU_R32UI, and GPU_storagebuf_clear().
| void GPU_storagebuf_copy_sub_from_vertbuf | ( | GPUStorageBuf * | ssbo, |
| GPUVertBuf * | src, | ||
| uint | dst_offset, | ||
| uint | src_offset, | ||
| uint | copy_size | ||
| ) |
Copy a part of a vertex buffer to a storage buffer.
| ssbo | destination storage buffer |
| src | source vertex buffer |
| dst_offset | where to start copying to (in bytes). |
| src_offset | where to start copying from (in bytes). |
| copy_size | byte size of the segment to copy. |
Definition at line 106 of file gpu_storage_buffer.cc.
References src, and blender::gpu::unwrap().
Referenced by blender::eevee::VelocityModule::step_swap().
| GPUStorageBuf* GPU_storagebuf_create_ex | ( | size_t | size, |
| const void * | data, | ||
| GPUUsageType | usage, | ||
| const char * | name | ||
| ) |
Definition at line 54 of file gpu_storage_buffer.cc.
References data, blender::gpu::GPUBackend::get(), size(), blender::gpu::GPUBackend::storagebuf_alloc(), blender::gpu::StorageBuf::update(), and blender::gpu::wrap().
Referenced by blender::draw::StorageArrayBuffer< T, len, device_only >::resize(), and blender::draw::detail::StorageCommon< T, len, device_only >::StorageCommon().
| void GPU_storagebuf_free | ( | GPUStorageBuf * | ssbo | ) |
Definition at line 67 of file gpu_storage_buffer.cc.
References blender::gpu::unwrap().
Referenced by blender::draw::StorageArrayBuffer< T, len, device_only >::resize(), and blender::draw::detail::StorageCommon< T, len, device_only >::~StorageCommon().
| void GPU_storagebuf_unbind | ( | GPUStorageBuf * | ssbo | ) |
Definition at line 82 of file gpu_storage_buffer.cc.
References blender::gpu::unwrap().
Definition at line 87 of file gpu_storage_buffer.cc.
Referenced by draw_shgroup(), and DRW_state_reset().
| void GPU_storagebuf_update | ( | GPUStorageBuf * | ssbo, |
| const void * | data | ||
| ) |
Definition at line 72 of file gpu_storage_buffer.cc.
References data, and blender::gpu::unwrap().
Referenced by blender::draw::detail::StorageCommon< T, len, device_only >::push_update().