|
Blender
V2.93
|
Public Attributes | |
| struct DRWInstanceData * | next |
| bool | used |
| size_t | data_size |
| BLI_mempool * | mempool |
DRW Instance Data Manager This is a special memory manager that keeps memory blocks ready to send as VBO data in one continuous allocation. This way we avoid feeding GPUBatch each instance data one by one and unnecessary memcpy. Since we lose which memory block was used each DRWShadingGroup we need to redistribute them in the same order/size to avoid to realloc each frame. This is why #DRWInstanceDatas are sorted in a list for each different data size.
Definition at line 52 of file draw_instance_data.c.
| size_t DRWInstanceData::data_size |
Definition at line 55 of file draw_instance_data.c.
Referenced by drw_instance_data_create().
| BLI_mempool* DRWInstanceData::mempool |
Definition at line 56 of file draw_instance_data.c.
Referenced by drw_instance_data_create(), DRW_instance_data_free(), DRW_instance_data_list_resize(), and DRW_instance_data_next().
| struct DRWInstanceData* DRWInstanceData::next |
Definition at line 53 of file draw_instance_data.c.
Referenced by drw_instance_data_create(), DRW_instance_data_list_free(), DRW_instance_data_list_free_unused(), DRW_instance_data_list_reset(), DRW_instance_data_list_resize(), and DRW_instance_data_request().
| bool DRWInstanceData::used |
Definition at line 54 of file draw_instance_data.c.
Referenced by drw_instance_data_create(), DRW_instance_data_list_free_unused(), DRW_instance_data_list_reset(), and DRW_instance_data_request().