49 const bool is_selected = (ml->flag &
SELECT) != 0;
50 const bool is_scale_radius = (ml->flag &
MB_SCALE_RAD) != 0;
55 color = (is_selected && is_scale_radius) ? col_radius_select : col_radius;
56 circle_buf_.
append({ob->object_to_world(), position, ml->rad, color}, radius_id);
59 color = (is_selected && !is_scale_radius) ? col_stiffness_select : col_stiffness;
60 circle_buf_.
append({ob->object_to_world(), position, stiffness_radius, color}, stiff_id);
76 circle_buf_.
append({ob->object_to_world(), position, ml->rad, color}, select_id);
84 state.clipping_plane_count);
#define LISTBASE_FOREACH(type, var, list)
void GPU_framebuffer_bind(GPUFrameBuffer *framebuffer)
void submit(PassSimple &pass, View &view)
void state_set(DRWState state, int clip_plane_count=0)
void bind_ubo(const char *name, GPUUniformBuf *buffer)
void shader_set(GPUShader *shader)
ShaderPtr armature_sphere_outline
BatchPtr metaball_wire_circle
@ DRW_STATE_DEPTH_LESS_EQUAL
VecBase< float, 3 > float3
float4 color_mball_radius
float4 color_mball_stiffness
float4 color_mball_stiffness_select
float4 color_mball_radius_select
const float4 & object_wire_color(const ObjectRef &ob_ref, ThemeColorID theme_id) const
GPUUniformBuf * globals_buf
GlobalsUboStorage theme_settings
void end_sync(PassSimple::Sub &pass, gpu::Batch *shape)
void append(const InstanceDataT &data, select::ID select_id)
void select_bind(PassSimple &pass)
const ID select_id(const ObjectRef &ob_ref, uint sub_object_id=0)