Blender
V3.3
|
Utilities for rendering attributes. More...
#include "DNA_customdata_types.h"
#include "DNA_meshdata_types.h"
#include "BKE_attribute.h"
#include "BLI_sys_types.h"
#include "BLI_threads.h"
#include "GPU_shader.h"
#include "GPU_vertex_format.h"
Go to the source code of this file.
Classes | |
struct | DRW_AttributeRequest |
struct | DRW_Attributes |
Typedefs | |
typedef struct DRW_AttributeRequest | DRW_AttributeRequest |
typedef struct DRW_Attributes | DRW_Attributes |
Functions | |
void | drw_attributes_clear (DRW_Attributes *attributes) |
void | drw_attributes_merge (DRW_Attributes *dst, const DRW_Attributes *src, ThreadMutex *render_mutex) |
bool | drw_attributes_overlap (const DRW_Attributes *a, const DRW_Attributes *b) |
DRW_AttributeRequest * | drw_attributes_add_request (DRW_Attributes *attrs, const char *name, eCustomDataType data_type, int layer_index, eAttrDomain domain) |
bool | drw_custom_data_match_attribute (const CustomData *custom_data, const char *name, int *r_layer_index, eCustomDataType *r_type) |
Utilities for rendering attributes.
Definition in file draw_attributes.h.
typedef struct DRW_AttributeRequest DRW_AttributeRequest |
typedef struct DRW_Attributes DRW_Attributes |
DRW_AttributeRequest* drw_attributes_add_request | ( | DRW_Attributes * | attrs, |
const char * | name, | ||
eCustomDataType | data_type, | ||
int | layer_index, | ||
eAttrDomain | domain | ||
) |
Definition at line 67 of file draw_attributes.cc.
References DRW_AttributeRequest::attribute_name, BLI_strncpy(), DRW_AttributeRequest::cd_type, DRW_AttributeRequest::domain, GPU_MAX_ATTR, DRW_AttributeRequest::layer_index, DRW_Attributes::num_requests, DRW_Attributes::requests, and type.
Referenced by curves_ensure_attributes(), mesh_cd_calc_used_gpu_layers(), request_active_and_default_color_attributes(), and request_attribute().
void drw_attributes_clear | ( | DRW_Attributes * | attributes | ) |
Definition at line 42 of file draw_attributes.cc.
Referenced by curves_discard_attributes(), curves_ensure_attributes(), DRW_curves_batch_cache_free_old(), DRW_mesh_batch_cache_create_requested(), DRW_mesh_batch_cache_free_old(), and DRW_mesh_batch_cache_get_surface_shaded().
void drw_attributes_merge | ( | DRW_Attributes * | dst, |
const DRW_Attributes * | src, | ||
ThreadMutex * | render_mutex | ||
) |
Definition at line 47 of file draw_attributes.cc.
References BLI_mutex_lock(), BLI_mutex_unlock(), drw_attributes_merge_requests(), and src.
Referenced by curves_ensure_attributes(), DRW_mesh_batch_cache_create_requested(), DRW_mesh_batch_cache_get_surface_sculpt(), DRW_mesh_batch_cache_get_surface_shaded(), DRW_mesh_batch_cache_get_surface_vertpaint(), and request_attribute().
bool drw_attributes_overlap | ( | const DRW_Attributes * | a, |
const DRW_Attributes * | b | ||
) |
Definition at line 56 of file draw_attributes.cc.
References Freestyle::a, usdtokens::b(), and drw_attributes_has_request().
Referenced by curves_ensure_attributes(), DRW_curves_batch_cache_free_old(), DRW_mesh_batch_cache_create_requested(), and DRW_mesh_batch_cache_free_old().
bool drw_custom_data_match_attribute | ( | const CustomData * | custom_data, |
const char * | name, | ||
int * | r_layer_index, | ||
eCustomDataType * | r_type | ||
) |
Definition at line 86 of file draw_attributes.cc.
References ARRAY_SIZE, CD_PROP_BOOL, CD_PROP_BYTE_COLOR, CD_PROP_COLOR, CD_PROP_FLOAT, CD_PROP_FLOAT2, CD_PROP_FLOAT3, CD_PROP_INT32, CD_PROP_INT8, and CustomData_get_named_layer().
Referenced by curves_ensure_attributes(), mesh_cd_calc_used_gpu_layers(), and request_active_and_default_color_attributes().