Blender V4.3
overlay_private.hh File Reference
#include "BKE_global.hh"
#include "BLI_math_matrix.hh"
#include "DRW_gpu_wrapper.hh"
#include "DRW_render.hh"
#include "UI_resources.hh"
#include "draw_handle.hh"
#include "overlay_shader_shared.h"
#include "DNA_mask_types.h"
#include "DNA_space_types.h"

Go to the source code of this file.

Classes

struct  OVERLAY_FramebufferList
 
struct  OVERLAY_TextureList
 
struct  OVERLAY_PassList
 
struct  OVERLAY_ShadingData
 
struct  OVERLAY_ExtraCallBuffers
 
struct  OVERLAY_ArmatureCallBuffersInner
 
struct  OVERLAY_ArmatureCallBuffers
 
struct  OVERLAY_PrivateData
 
struct  OVERLAY_StorageList
 
struct  OVERLAY_Data
 
struct  OVERLAY_DupliData
 
struct  BoneInstanceData
 
struct  OVERLAY_InstanceFormats
 

Macros

#define USE_GEOM_SHADER_WORKAROUND   0
 
#define NOT_IN_FRONT   0
 
#define IN_FRONT   1
 

Enumerations

enum  OVERLAY_UVLineStyle {
  OVERLAY_UV_LINE_STYLE_OUTLINE = 0 , OVERLAY_UV_LINE_STYLE_DASH = 1 , OVERLAY_UV_LINE_STYLE_BLACK = 2 , OVERLAY_UV_LINE_STYLE_WHITE = 3 ,
  OVERLAY_UV_LINE_STYLE_SHADOW = 4
}
 

Functions

BLI_INLINE void pack_data_in_mat4 (float rmat[4][4], const float mat[4][4], float a, float b, float c, float d)
 
BLI_INLINE void pack_v4_in_mat4 (float rmat[4][4], const float mat[4][4], const float v[4])
 
BLI_INLINE void pack_fl_in_mat4 (float rmat[4][4], const float mat[4][4], float a)
 
void OVERLAY_antialiasing_init (OVERLAY_Data *vedata)
 
void OVERLAY_antialiasing_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_antialiasing_cache_finish (OVERLAY_Data *vedata)
 
void OVERLAY_antialiasing_start (OVERLAY_Data *vedata)
 
void OVERLAY_antialiasing_end (OVERLAY_Data *vedata)
 
void OVERLAY_xray_fade_draw (OVERLAY_Data *vedata)
 
void OVERLAY_xray_depth_copy (OVERLAY_Data *vedata)
 
void OVERLAY_xray_depth_infront_copy (OVERLAY_Data *vedata)
 
bool OVERLAY_armature_is_pose_mode (Object *ob, const DRWContextState *draw_ctx)
 
void OVERLAY_armature_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_armature_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_edit_armature_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_pose_armature_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_armature_cache_finish (OVERLAY_Data *vedata)
 
void OVERLAY_armature_draw (OVERLAY_Data *vedata)
 
void OVERLAY_armature_in_front_draw (OVERLAY_Data *vedata)
 
void OVERLAY_pose_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_pose_draw (OVERLAY_Data *vedata)
 
void OVERLAY_background_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_background_draw (OVERLAY_Data *vedata)
 
void OVERLAY_bone_instance_data_set_color_hint (BoneInstanceData *data, const float hint_color[4])
 
void OVERLAY_bone_instance_data_set_color (BoneInstanceData *data, const float bone_color[4])
 
void OVERLAY_edit_curve_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_edit_curve_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_edit_surf_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_edit_curve_draw (OVERLAY_Data *vedata)
 
void OVERLAY_edit_gpencil_legacy_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_gpencil_legacy_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_gpencil_legacy_draw (OVERLAY_Data *vedata)
 
void OVERLAY_edit_gpencil_legacy_draw (OVERLAY_Data *vedata)
 
void OVERLAY_grease_pencil_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_edit_grease_pencil_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_edit_grease_pencil_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_sculpt_grease_pencil_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_weight_grease_pencil_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_vertex_grease_pencil_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_grease_pencil_draw (OVERLAY_Data *vedata)
 
void OVERLAY_edit_grease_pencil_draw (OVERLAY_Data *vedata)
 
void OVERLAY_edit_lattice_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_edit_lattice_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_lattice_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_edit_lattice_draw (OVERLAY_Data *vedata)
 
void OVERLAY_edit_text_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_edit_text_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_edit_text_draw (OVERLAY_Data *vedata)
 
void OVERLAY_volume_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_volume_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_volume_draw (OVERLAY_Data *vedata)
 
void OVERLAY_edit_mesh_init (OVERLAY_Data *vedata)
 
void OVERLAY_edit_mesh_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_edit_mesh_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_edit_mesh_draw (OVERLAY_Data *vedata)
 
void OVERLAY_edit_particle_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_edit_particle_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_edit_particle_draw (OVERLAY_Data *vedata)
 
void OVERLAY_edit_uv_init (OVERLAY_Data *vedata)
 
void OVERLAY_edit_uv_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_edit_uv_cache_finish (OVERLAY_Data *vedata)
 
void OVERLAY_edit_uv_draw (OVERLAY_Data *vedata)
 
void OVERLAY_extra_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_extra_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_extra_blend_draw (OVERLAY_Data *vedata)
 
void OVERLAY_extra_draw (OVERLAY_Data *vedata)
 
void OVERLAY_extra_in_front_draw (OVERLAY_Data *vedata)
 
void OVERLAY_extra_centers_draw (OVERLAY_Data *vedata)
 
void OVERLAY_camera_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_empty_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_light_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_lightprobe_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_speaker_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
OVERLAY_ExtraCallBuffersOVERLAY_extra_call_buffer_get (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_extra_point (OVERLAY_ExtraCallBuffers *cb, const float point[3], const float color[4])
 
void OVERLAY_extra_line_dashed (OVERLAY_ExtraCallBuffers *cb, const float start[3], const float end[3], const float color[4])
 
void OVERLAY_extra_line (OVERLAY_ExtraCallBuffers *cb, const float start[3], const float end[3], int color_id)
 
void OVERLAY_empty_shape (OVERLAY_ExtraCallBuffers *cb, const float mat[4][4], float draw_size, char draw_type, const float color[4])
 
void OVERLAY_extra_loose_points (OVERLAY_ExtraCallBuffers *cb, blender::gpu::Batch *geom, const float mat[4][4], const float color[4])
 
void OVERLAY_extra_wire (OVERLAY_ExtraCallBuffers *cb, blender::gpu::Batch *geom, const float mat[4][4], const float color[4])
 
void OVERLAY_facing_init (OVERLAY_Data *vedata)
 
void OVERLAY_facing_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_facing_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_facing_draw (OVERLAY_Data *vedata)
 
void OVERLAY_facing_infront_draw (OVERLAY_Data *vedata)
 
void OVERLAY_fade_init (OVERLAY_Data *vedata)
 
void OVERLAY_fade_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_fade_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_fade_draw (OVERLAY_Data *vedata)
 
void OVERLAY_fade_infront_draw (OVERLAY_Data *vedata)
 
void OVERLAY_mode_transfer_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_mode_transfer_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_mode_transfer_draw (OVERLAY_Data *vedata)
 
void OVERLAY_mode_transfer_infront_draw (OVERLAY_Data *vedata)
 
void OVERLAY_mode_transfer_cache_finish (OVERLAY_Data *vedata)
 
void OVERLAY_grid_init (OVERLAY_Data *vedata)
 
void OVERLAY_grid_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_grid_draw (OVERLAY_Data *vedata)
 
void OVERLAY_image_init (OVERLAY_Data *vedata)
 
void OVERLAY_image_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_image_camera_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_image_empty_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_image_cache_finish (OVERLAY_Data *vedata)
 
void OVERLAY_image_draw (OVERLAY_Data *vedata)
 
void OVERLAY_image_background_draw (OVERLAY_Data *vedata)
 
void OVERLAY_image_scene_background_draw (OVERLAY_Data *vedata)
 
void OVERLAY_image_in_front_draw (OVERLAY_Data *vedata)
 
void OVERLAY_metaball_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_edit_metaball_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_metaball_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_metaball_draw (OVERLAY_Data *vedata)
 
void OVERLAY_metaball_in_front_draw (OVERLAY_Data *vedata)
 
void OVERLAY_motion_path_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_motion_path_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_motion_path_draw (OVERLAY_Data *vedata)
 
void OVERLAY_outline_init (OVERLAY_Data *vedata)
 
void OVERLAY_outline_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_outline_cache_populate (OVERLAY_Data *vedata, Object *ob, OVERLAY_DupliData *dupli, bool init_dupli)
 
void OVERLAY_outline_draw (OVERLAY_Data *vedata)
 
void OVERLAY_paint_init (OVERLAY_Data *vedata)
 
void OVERLAY_paint_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_paint_texture_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_paint_vertex_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_paint_weight_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_paint_draw (OVERLAY_Data *vedata)
 
void OVERLAY_particle_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_particle_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_particle_draw (OVERLAY_Data *vedata)
 
void OVERLAY_sculpt_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_sculpt_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_sculpt_draw (OVERLAY_Data *vedata)
 
void OVERLAY_sculpt_curves_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_sculpt_curves_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_sculpt_curves_draw (OVERLAY_Data *vedata)
 
void OVERLAY_sculpt_curves_draw_wires (OVERLAY_Data *vedata)
 
void OVERLAY_viewer_attribute_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_viewer_attribute_cache_populate (OVERLAY_Data *vedata, Object *object)
 
void OVERLAY_viewer_attribute_draw (OVERLAY_Data *vedata)
 
void OVERLAY_viewer_attribute_text (const Object &object)
 
void OVERLAY_wireframe_init (OVERLAY_Data *vedata)
 
void OVERLAY_wireframe_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_wireframe_cache_populate (OVERLAY_Data *vedata, Object *ob, OVERLAY_DupliData *dupli, bool init_dupli)
 
void OVERLAY_wireframe_draw (OVERLAY_Data *vedata)
 
void OVERLAY_wireframe_in_front_draw (OVERLAY_Data *vedata)
 
void OVERLAY_edit_curves_init (OVERLAY_Data *vedata)
 
void OVERLAY_edit_curves_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_edit_curves_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_edit_curves_draw (OVERLAY_Data *vedata)
 
GPUShaderOVERLAY_shader_antialiasing ()
 
GPUShaderOVERLAY_shader_armature_degrees_of_freedom_wire ()
 
GPUShaderOVERLAY_shader_armature_degrees_of_freedom_solid ()
 
GPUShaderOVERLAY_shader_armature_envelope (bool use_outline)
 
GPUShaderOVERLAY_shader_armature_shape (bool use_outline)
 
GPUShaderOVERLAY_shader_armature_shape_wire ()
 
GPUShaderOVERLAY_shader_armature_sphere (bool use_outline)
 
GPUShaderOVERLAY_shader_armature_stick ()
 
GPUShaderOVERLAY_shader_armature_wire ()
 
GPUShaderOVERLAY_shader_background ()
 
GPUShaderOVERLAY_shader_clipbound ()
 
GPUShaderOVERLAY_shader_depth_only ()
 
GPUShaderOVERLAY_shader_edit_curve_handle ()
 
GPUShaderOVERLAY_shader_edit_curve_point ()
 
GPUShaderOVERLAY_shader_edit_curve_wire ()
 
GPUShaderOVERLAY_shader_edit_curves_handle ()
 
GPUShaderOVERLAY_shader_edit_gpencil_guide_point ()
 
GPUShaderOVERLAY_shader_edit_gpencil_point ()
 
GPUShaderOVERLAY_shader_edit_gpencil_wire ()
 
GPUShaderOVERLAY_shader_edit_lattice_point ()
 
GPUShaderOVERLAY_shader_edit_lattice_wire ()
 
GPUShaderOVERLAY_shader_edit_mesh_analysis ()
 
GPUShaderOVERLAY_shader_edit_mesh_depth ()
 
GPUShaderOVERLAY_shader_edit_mesh_edge (bool use_flat_interp)
 
GPUShaderOVERLAY_shader_edit_mesh_face ()
 
GPUShaderOVERLAY_shader_edit_mesh_facedot ()
 
GPUShaderOVERLAY_shader_edit_mesh_normal ()
 
GPUShaderOVERLAY_shader_edit_mesh_skin_root ()
 
GPUShaderOVERLAY_shader_edit_mesh_vert ()
 
GPUShaderOVERLAY_shader_edit_particle_strand ()
 
GPUShaderOVERLAY_shader_edit_particle_point ()
 
GPUShaderOVERLAY_shader_edit_uv_edges_get ()
 
GPUShaderOVERLAY_shader_edit_uv_edges_for_edge_select_get ()
 
GPUShaderOVERLAY_shader_edit_uv_face_get ()
 
GPUShaderOVERLAY_shader_edit_uv_face_dots_get ()
 
GPUShaderOVERLAY_shader_edit_uv_verts_get ()
 
GPUShaderOVERLAY_shader_edit_uv_stretching_area_get ()
 
GPUShaderOVERLAY_shader_edit_uv_stretching_angle_get ()
 
GPUShaderOVERLAY_shader_edit_uv_tiled_image_borders_get ()
 
GPUShaderOVERLAY_shader_edit_uv_stencil_image ()
 
GPUShaderOVERLAY_shader_edit_uv_mask_image ()
 
GPUShaderOVERLAY_shader_extra (bool is_select)
 
GPUShaderOVERLAY_shader_extra_groundline ()
 
GPUShaderOVERLAY_shader_extra_wire (bool use_object, bool is_select)
 
GPUShaderOVERLAY_shader_extra_loose_point ()
 
GPUShaderOVERLAY_shader_extra_point ()
 
GPUShaderOVERLAY_shader_facing ()
 
GPUShaderOVERLAY_shader_gpencil_canvas ()
 
GPUShaderOVERLAY_shader_grid ()
 
GPUShaderOVERLAY_shader_grid_background ()
 
GPUShaderOVERLAY_shader_grid_image ()
 
GPUShaderOVERLAY_shader_image ()
 
GPUShaderOVERLAY_shader_motion_path_line ()
 
GPUShaderOVERLAY_shader_motion_path_vert ()
 
GPUShaderOVERLAY_shader_uniform_color ()
 
GPUShaderOVERLAY_shader_uniform_color_pointcloud ()
 
GPUShaderOVERLAY_shader_outline_prepass (bool use_wire)
 
GPUShaderOVERLAY_shader_outline_prepass_curves ()
 
GPUShaderOVERLAY_shader_outline_prepass_gpencil ()
 
GPUShaderOVERLAY_shader_outline_prepass_pointcloud ()
 
GPUShaderOVERLAY_shader_extra_grid ()
 
GPUShaderOVERLAY_shader_outline_detect ()
 
GPUShaderOVERLAY_shader_paint_face ()
 
GPUShaderOVERLAY_shader_paint_point ()
 
GPUShaderOVERLAY_shader_paint_texture ()
 
GPUShaderOVERLAY_shader_paint_vertcol ()
 
GPUShaderOVERLAY_shader_paint_weight (bool shading)
 
GPUShaderOVERLAY_shader_paint_wire ()
 
GPUShaderOVERLAY_shader_particle_dot ()
 
GPUShaderOVERLAY_shader_particle_shape ()
 
GPUShaderOVERLAY_shader_sculpt_mask ()
 
GPUShaderOVERLAY_shader_sculpt_curves_selection ()
 
GPUShaderOVERLAY_shader_sculpt_curves_cage ()
 
GPUShaderOVERLAY_shader_viewer_attribute_curve ()
 
GPUShaderOVERLAY_shader_viewer_attribute_curves ()
 
GPUShaderOVERLAY_shader_viewer_attribute_mesh ()
 
GPUShaderOVERLAY_shader_viewer_attribute_pointcloud ()
 
GPUShaderOVERLAY_shader_volume_velocity (bool use_needle, bool use_mac)
 
GPUShaderOVERLAY_shader_volume_gridlines (bool color_with_flags, bool color_range)
 
GPUShaderOVERLAY_shader_wireframe (bool custom_bias)
 
GPUShaderOVERLAY_shader_wireframe_select ()
 
GPUShaderOVERLAY_shader_xray_fade ()
 
OVERLAY_InstanceFormatsOVERLAY_shader_instance_formats_get ()
 
void OVERLAY_shader_free ()
 

Macro Definition Documentation

◆ IN_FRONT

◆ NOT_IN_FRONT

◆ USE_GEOM_SHADER_WORKAROUND

#define USE_GEOM_SHADER_WORKAROUND   0

Definition at line 27 of file overlay_private.hh.

Enumeration Type Documentation

◆ OVERLAY_UVLineStyle

Enumerator
OVERLAY_UV_LINE_STYLE_OUTLINE 
OVERLAY_UV_LINE_STYLE_DASH 
OVERLAY_UV_LINE_STYLE_BLACK 
OVERLAY_UV_LINE_STYLE_WHITE 
OVERLAY_UV_LINE_STYLE_SHADOW 

Definition at line 56 of file overlay_private.hh.

Function Documentation

◆ OVERLAY_antialiasing_cache_finish()

◆ OVERLAY_antialiasing_cache_init()

◆ OVERLAY_antialiasing_end()

◆ OVERLAY_antialiasing_init()

◆ OVERLAY_antialiasing_start()

◆ OVERLAY_armature_cache_finish()

◆ OVERLAY_armature_cache_init()

void OVERLAY_armature_cache_init ( OVERLAY_Data * vedata)

Definition at line 273 of file overlay_armature.cc.

References OVERLAY_PrivateData::armature, OVERLAY_PrivateData::armature_bone_select_act_grp, OVERLAY_PrivateData::armature_bone_select_grp, OVERLAY_PassList::armature_bone_select_ps, OVERLAY_PrivateData::armature_call_buffers, OVERLAY_PassList::armature_ps, OVERLAY_PassList::armature_transp_ps, BLI_ghash_ptr_new(), DRW_Global::block_ubo, View3DOverlay::bone_wire_alpha, OVERLAY_ArmatureCallBuffersInner::box_fill, OVERLAY_ArmatureCallBuffersInner::box_outline, BUF_INSTANCE, BUF_LINE, OVERLAY_PrivateData::clipping_state, OVERLAY_ArmatureCallBuffersInner::custom_fill, OVERLAY_ArmatureCallBuffersInner::custom_outline, OVERLAY_ArmatureCallBuffersInner::custom_shapes_ghash, OVERLAY_ArmatureCallBuffersInner::custom_wire, DefaultTextureList::depth, OVERLAY_PrivateData::do_pose_fade_geom, OVERLAY_PrivateData::do_pose_xray, OVERLAY_ArmatureCallBuffersInner::dof_lines, OVERLAY_ArmatureCallBuffersInner::dof_sphere, DRW_cache_bone_box_get(), DRW_cache_bone_box_wire_get(), DRW_cache_bone_dof_lines_get(), DRW_cache_bone_dof_sphere_get(), DRW_cache_bone_envelope_outline_get(), DRW_cache_bone_envelope_solid_get(), DRW_cache_bone_octahedral_get(), DRW_cache_bone_octahedral_wire_get(), DRW_cache_bone_point_get(), DRW_cache_bone_point_wire_outline_get(), DRW_cache_bone_stick_get(), DRW_context_state_get(), DRW_PASS_CREATE, DRW_shgroup_create(), DRW_shgroup_state_disable(), DRW_shgroup_state_enable(), DRW_shgroup_uniform_block, DRW_shgroup_uniform_bool_copy(), DRW_shgroup_uniform_float_copy(), DRW_shgroup_uniform_texture_ref(), DRW_shgroup_uniform_vec4_copy(), DRW_STATE_BLEND_ADD, DRW_STATE_BLEND_ALPHA, DRW_STATE_CULL_BACK, DRW_STATE_CULL_FRONT, DRW_STATE_DEPTH_EQUAL, DRW_STATE_DEPTH_LESS_EQUAL, DRW_STATE_IN_FRONT_SELECT, DRW_state_is_select(), DRW_STATE_WRITE_COLOR, DRW_STATE_WRITE_DEPTH, DRW_viewport_texture_list_get(), OVERLAY_ArmatureCallBuffersInner::envelope_distance, OVERLAY_ArmatureCallBuffersInner::envelope_fill, OVERLAY_ArmatureCallBuffersInner::envelope_outline, View3D::flag, View3DOverlay::flag, G_draw, OVERLAY_InstanceFormats::instance_bone, OVERLAY_InstanceFormats::instance_bone_envelope, OVERLAY_InstanceFormats::instance_bone_envelope_distance, OVERLAY_InstanceFormats::instance_bone_envelope_outline, OVERLAY_InstanceFormats::instance_bone_stick, OVERLAY_InstanceFormats::instance_extra, OB_MODE_WEIGHT_PAINT, OB_WIRE, DRWContextState::object_mode, DRWContextState::object_pose, OVERLAY_ArmatureCallBuffersInner::octa_fill, OVERLAY_ArmatureCallBuffersInner::octa_outline, OVERLAY_PrivateData::overlay, OVERLAY_shader_armature_degrees_of_freedom_solid(), OVERLAY_shader_armature_degrees_of_freedom_wire(), OVERLAY_shader_armature_envelope(), OVERLAY_shader_armature_shape(), OVERLAY_shader_armature_shape_wire(), OVERLAY_shader_armature_sphere(), OVERLAY_shader_armature_stick(), OVERLAY_shader_armature_wire(), OVERLAY_shader_instance_formats_get(), OVERLAY_shader_uniform_color(), OVERLAY_StorageList::pd, OVERLAY_ArmatureCallBuffersInner::point_fill, OVERLAY_ArmatureCallBuffersInner::point_outline, OVERLAY_InstanceFormats::pos_color, powf, OVERLAY_Data::psl, View3D::shading, OVERLAY_PrivateData::show_relations, OVERLAY_ArmatureCallBuffers::solid, state, OVERLAY_ArmatureCallBuffersInner::stick, OVERLAY_Data::stl, OVERLAY_ArmatureCallBuffers::transp, OVERLAY_PrivateData::transparent, View3DShading::type, USER_GPU_FLAG_OVERLAY_SMOOTH_WIRE, DRWContextState::v3d, V3D_HIDE_HELPLINES, V3D_OVERLAY_BONE_SELECT, OVERLAY_ArmatureCallBuffersInner::wire, View3DOverlay::xray_alpha_bone, and XRAY_FLAG_ENABLED.

Referenced by OVERLAY_cache_init().

◆ OVERLAY_armature_cache_populate()

◆ OVERLAY_armature_draw()

void OVERLAY_armature_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_armature_in_front_draw()

◆ OVERLAY_armature_is_pose_mode()

bool OVERLAY_armature_is_pose_mode ( Object * ob,
const DRWContextState * draw_ctx )

◆ OVERLAY_background_cache_init()

void OVERLAY_background_cache_init ( OVERLAY_Data * vedata)

Definition at line 16 of file overlay_background.cc.

References View3DShading::background_color, OVERLAY_PassList::background_ps, View3DShading::background_type, BG_CHECKER, BG_GRADIENT, BG_MASK, BG_RADIAL, BG_SOLID, BG_SOLID_CHECKER, DRW_Global::block, DRW_Global::block_ubo, RegionView3D::clipbb, OVERLAY_PassList::clipping_frustum_ps, OVERLAY_PrivateData::clipping_state, DefaultTextureList::color, GlobalsUboStorage::color_clipping_border, copy_v3_v3(), DefaultTextureList::depth, DRW_cache_cube_get(), DRW_context_state_get(), DRW_PASS_CREATE, DRW_shgroup_call, DRW_shgroup_call_procedural_triangles(), DRW_shgroup_create(), DRW_shgroup_uniform_block, DRW_shgroup_uniform_int_copy(), DRW_shgroup_uniform_texture_ref(), DRW_shgroup_uniform_vec3(), DRW_shgroup_uniform_vec4_copy(), DRW_STATE_BLEND_ALPHA, DRW_STATE_BLEND_BACKGROUND, DRW_STATE_BLEND_MUL, DRW_STATE_CULL_BACK, DRW_state_draw_background(), DRW_state_is_viewport_image_render(), DRW_STATE_WRITE_COLOR, DRW_viewport_texture_list_get(), G_draw, OB_SOLID, OVERLAY_shader_background(), OVERLAY_shader_clipbound(), OVERLAY_StorageList::pd, OVERLAY_Data::psl, DRWContextState::rv3d, DRWContextState::scene, View3D::shading, SPACE_IMAGE, SPACE_NODE, OVERLAY_PrivateData::space_type, state, OVERLAY_Data::stl, TH_BACKGROUND_GRADIENT_LINEAR, TH_BACKGROUND_GRADIENT_RADIAL, TH_BACKGROUND_SINGLE_COLOR, TH_BACKGROUND_TYPE, View3DShading::type, UI_GetThemeValue(), DRWContextState::v3d, V3D_SHADING_BACKGROUND_VIEWPORT, V3D_SHADING_BACKGROUND_WORLD, and BoundBox::vec.

Referenced by OVERLAY_cache_init().

◆ OVERLAY_background_draw()

◆ OVERLAY_bone_instance_data_set_color()

void OVERLAY_bone_instance_data_set_color ( BoneInstanceData * data,
const float bone_color[4] )

◆ OVERLAY_bone_instance_data_set_color_hint()

void OVERLAY_bone_instance_data_set_color_hint ( BoneInstanceData * data,
const float hint_color[4] )

◆ OVERLAY_camera_cache_populate()

void OVERLAY_camera_cache_populate ( OVERLAY_Data * vedata,
Object * ob )

Definition at line 1141 of file overlay_extra.cc.

References Camera::bg_images, BKE_camera_multiview_model_matrix(), BKE_camera_object_dof_distance(), BKE_camera_view_frame_ex(), BLI_listbase_is_empty(), CAM_SHOW_BG_IMAGE, CAM_SHOWLIMITS, CAM_SHOWMIST, View3D::camera, OVERLAY_ExtraCallBuffers::camera_distances, OVERLAY_ExtraCallBuffers::camera_frame, camera_offaxis_shiftx_get(), camera_stereoscopy_extra(), OVERLAY_ExtraCallBuffers::camera_tria, camera_view3d_reconstruction(), OVERLAY_CameraInstanceData::center_x, OVERLAY_CameraInstanceData::center_y, Camera::clip_end, OVERLAY_CameraInstanceData::clip_end, OVERLAY_CameraInstanceData::clip_sta, Camera::clip_start, OVERLAY_CameraInstanceData::color, copy_v3_fl(), copy_v3_fl3(), copy_v3_v3(), copy_v4_v4(), OVERLAY_CameraInstanceData::corner_x, OVERLAY_CameraInstanceData::corner_y, Object::data, DEG_get_evaluated_object(), DRWContextState::depsgraph, OVERLAY_CameraInstanceData::depth, OVERLAY_CameraInstanceData::dist_color_id, Camera::drawsize, DRW_buffer_add_entry_struct(), DRW_context_state_get(), DRW_object_wire_theme_get(), DRW_state_is_image_render(), DRW_state_is_select(), ELEM, fabsf, Camera::flag, View3D::flag2, OVERLAY_CameraInstanceData::focus, invert_v3(), len_v3(), OVERLAY_CameraInstanceData::mat, mid_v2_v2v2(), OVERLAY_CameraInstanceData::mist_end, OVERLAY_CameraInstanceData::mist_sta, mul_v2_fl(), mul_v3_fl(), mul_v3_v3(), View3D::multiview_eye, normalize_m4_m4(), OVERLAY_extra_call_buffer_get(), OVERLAY_image_camera_cache_populate(), RegionView3D::persp, R_MULTIVIEW, DRWContextState::rv3d, RV3D_CAMOB, SCE_VIEWS_FORMAT_STEREO_3D, DRWContextState::scene, View3D::stereo3d_flag, STEREO_LEFT_NAME, STEREO_RIGHT_ID, STEREO_RIGHT_NAME, sub_v2_v2v2(), DRWContextState::v3d, V3D_SHOW_RECONSTRUCTION, and DRWContextState::view_layer.

Referenced by OVERLAY_cache_populate().

◆ OVERLAY_edit_armature_cache_populate()

◆ OVERLAY_edit_curve_cache_init()

◆ OVERLAY_edit_curve_cache_populate()

◆ OVERLAY_edit_curve_draw()

◆ OVERLAY_edit_curves_cache_init()

◆ OVERLAY_edit_curves_cache_populate()

◆ OVERLAY_edit_curves_draw()

◆ OVERLAY_edit_curves_init()

◆ OVERLAY_edit_gpencil_legacy_cache_init()

void OVERLAY_edit_gpencil_legacy_cache_init ( OVERLAY_Data * vedata)

Definition at line 26 of file overlay_gpencil_legacy.cc.

References DRW_Global::block, DRW_Global::block_ubo, OVERLAY_PrivateData::clipping_state, bGPDcontrolpoint::color, bGPdata_Runtime::cp_points, Object::data, DRW_context_state_get(), DRW_PASS_CREATE, DRW_shgroup_call_procedural_points(), DRW_shgroup_create(), DRW_shgroup_create_sub(), DRW_shgroup_state_enable(), DRW_shgroup_uniform_block, DRW_shgroup_uniform_bool_copy(), DRW_shgroup_uniform_float_copy(), DRW_shgroup_uniform_int_copy(), DRW_shgroup_uniform_texture(), DRW_shgroup_uniform_vec3_copy(), DRW_shgroup_uniform_vec4_copy(), DRW_STATE_BLEND_ALPHA, DRW_STATE_DEPTH_LESS_EQUAL, DRW_STATE_WRITE_COLOR, DRW_STATE_WRITE_DEPTH, OVERLAY_PrivateData::edit_curve, OVERLAY_PrivateData::edit_gpencil_curve_handle_grp, OVERLAY_PrivateData::edit_gpencil_curve_points_grp, OVERLAY_PassList::edit_gpencil_curve_ps, OVERLAY_PassList::edit_gpencil_gizmos_ps, OVERLAY_PrivateData::edit_gpencil_points_grp, OVERLAY_PassList::edit_gpencil_ps, OVERLAY_PrivateData::edit_gpencil_wires_grp, bGPdata::flag, G_draw, View3D::gizmo_flag, GP_DATA_STROKE_WEIGHTMODE, View3D::gp_flag, GP_GUIDE_REF_CUSTOM, GP_GUIDE_REF_OBJECT, ToolSettings::gp_sculpt, GP_SCULPT_MASK_SELECTMODE_POINT, GP_SCULPT_MASK_SELECTMODE_SEGMENT, GP_SELECTMODE_STROKE, GP_VERTEX_MASK_SELECTMODE_POINT, GP_VERTEX_MASK_SELECTMODE_SEGMENT, GPENCIL_ANY_SCULPT_MASK, GPENCIL_ANY_VERTEX_MASK, GPENCIL_CURVE_EDIT_SESSIONS_ON, GPENCIL_EDIT_MODE, GPENCIL_MULTIEDIT_SESSIONS_ON, GPENCIL_PAINT_MODE, GPENCIL_SCULPT_MODE, ToolSettings::gpencil_selectmode_edit, ToolSettings::gpencil_selectmode_sculpt, ToolSettings::gpencil_selectmode_vertex, GPENCIL_VERTEX_MODE, GPENCIL_WEIGHT_MODE, GP_Sculpt_Settings::guide, OVERLAY_PrivateData::handle_display, Object::loc, GP_Sculpt_Guide::location, OB_GPENCIL_LEGACY, OB_MODE_PAINT_GREASE_PENCIL, DRWContextState::obact, DRWContextState::object_mode, OVERLAY_shader_edit_curve_handle(), OVERLAY_shader_edit_curve_point(), OVERLAY_shader_edit_gpencil_guide_point(), OVERLAY_shader_edit_gpencil_point(), OVERLAY_shader_edit_gpencil_wire(), OVERLAY_StorageList::pd, OVERLAY_Data::psl, GP_Sculpt_Guide::reference_object, GP_Sculpt_Guide::reference_point, bGPdata::runtime, DRWContextState::scene, OVERLAY_PrivateData::show_handles, bGPDcontrolpoint::size, GlobalsUboStorage::size_pixel, state, OVERLAY_Data::stl, TH_GIZMO_PRIMARY, TH_GIZMO_SECONDARY, TH_REDALERT, bGPdata_Runtime::tot_cp_points, Object::type, UI_GetThemeColor4fv(), GP_Sculpt_Guide::use_guide, DRWContextState::v3d, V3D_GIZMO_HIDE, V3D_GIZMO_HIDE_TOOL, V3D_GP_SHOW_EDIT_LINES, V3D_GP_SHOW_MULTIEDIT_LINES, View3D::vertex_opacity, DRW_Global::weight_ramp, and bGPDcontrolpoint::x.

Referenced by OVERLAY_cache_init().

◆ OVERLAY_edit_gpencil_legacy_draw()

◆ OVERLAY_edit_grease_pencil_cache_init()

◆ OVERLAY_edit_grease_pencil_cache_populate()

◆ OVERLAY_edit_grease_pencil_draw()

void OVERLAY_edit_grease_pencil_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_edit_lattice_cache_init()

◆ OVERLAY_edit_lattice_cache_populate()

◆ OVERLAY_edit_lattice_draw()

◆ OVERLAY_edit_mesh_cache_init()

void OVERLAY_edit_mesh_cache_init ( OVERLAY_Data * vedata)

Definition at line 44 of file overlay_edit_mesh.cc.

References DRW_Global::block_ubo, OVERLAY_PrivateData::clipping_state, OVERLAY_ShadingData::data_mask, DefaultTextureList::depth, OVERLAY_PrivateData::do_faces, OVERLAY_PrivateData::do_zbufclip, DRW_context_state_get(), DRW_PASS_CREATE, DRW_shgroup_create(), DRW_shgroup_state_enable(), DRW_shgroup_uniform_block, DRW_shgroup_uniform_bool_copy(), DRW_shgroup_uniform_float_copy(), DRW_shgroup_uniform_ivec4(), DRW_shgroup_uniform_ivec4_copy(), DRW_shgroup_uniform_texture(), DRW_shgroup_uniform_texture_ref(), DRW_STATE_BLEND_ALPHA, DRW_STATE_CULL_BACK, DRW_STATE_DEPTH_LESS_EQUAL, DRW_STATE_FIRST_VERTEX_CONVENTION, DRW_STATE_WRITE_COLOR, DRW_STATE_WRITE_DEPTH, DRW_viewport_texture_list_get(), OVERLAY_TextureList::dummy_depth_tx, View3DOverlay::edit_flag, OVERLAY_PrivateData::edit_mesh, OVERLAY_PrivateData::edit_mesh_analysis_grp, OVERLAY_PassList::edit_mesh_analysis_ps, OVERLAY_PrivateData::edit_mesh_depth_grp, OVERLAY_PassList::edit_mesh_depth_ps, OVERLAY_PrivateData::edit_mesh_edges_grp, OVERLAY_PassList::edit_mesh_edges_ps, OVERLAY_PrivateData::edit_mesh_facedots_grp, OVERLAY_PrivateData::edit_mesh_faces_cage_grp, OVERLAY_PassList::edit_mesh_faces_cage_ps, OVERLAY_PrivateData::edit_mesh_faces_grp, OVERLAY_PassList::edit_mesh_faces_ps, OVERLAY_PrivateData::edit_mesh_normals_grp, OVERLAY_PassList::edit_mesh_normals_ps, OVERLAY_PrivateData::edit_mesh_skin_roots_grp, OVERLAY_PrivateData::edit_mesh_verts_grp, OVERLAY_PassList::edit_mesh_verts_ps, flag, OVERLAY_PrivateData::flag, G_draw, View3DOverlay::normals_constant_screen_size, View3DOverlay::normals_length, OB_WIRE, View3D::overlay, OVERLAY_shader_edit_mesh_analysis(), OVERLAY_shader_edit_mesh_depth(), OVERLAY_shader_edit_mesh_edge(), OVERLAY_shader_edit_mesh_face(), OVERLAY_shader_edit_mesh_facedot(), OVERLAY_shader_edit_mesh_normal(), OVERLAY_shader_edit_mesh_skin_root(), OVERLAY_shader_edit_mesh_vert(), OVERLAY_StorageList::pd, OVERLAY_Data::psl, RETOPOLOGY_ENABLED, RETOPOLOGY_OFFSET, SCE_SELECT_EDGE, SCE_SELECT_FACE, SCE_SELECT_VERTEX, DRWContextState::scene, OVERLAY_PrivateData::select_edge, OVERLAY_PrivateData::select_face, OVERLAY_PrivateData::select_vert, ToolSettings::selectmode, SET_FLAG_FROM_TEST, View3D::shading, OVERLAY_PrivateData::shdata, state, OVERLAY_Data::stl, Scene::toolsettings, OVERLAY_Data::txl, USER_GPU_FLAG_NO_EDIT_MODE_SMOOTH_WIRE, DRWContextState::v3d, V3D_OVERLAY_EDIT_BWEIGHTS, V3D_OVERLAY_EDIT_CONSTANT_SCREEN_SIZE_NORMALS, V3D_OVERLAY_EDIT_CREASES, V3D_OVERLAY_EDIT_FACE_DOT, V3D_OVERLAY_EDIT_FACES, V3D_OVERLAY_EDIT_FREESTYLE_EDGE, V3D_OVERLAY_EDIT_FREESTYLE_FACE, V3D_OVERLAY_EDIT_SEAMS, V3D_OVERLAY_EDIT_SHARP, and DRW_Global::weight_ramp.

Referenced by OVERLAY_cache_init().

◆ OVERLAY_edit_mesh_cache_populate()

◆ OVERLAY_edit_mesh_draw()

◆ OVERLAY_edit_mesh_init()

◆ OVERLAY_edit_metaball_cache_populate()

◆ OVERLAY_edit_particle_cache_init()

◆ OVERLAY_edit_particle_cache_populate()

◆ OVERLAY_edit_particle_draw()

◆ OVERLAY_edit_surf_cache_populate()

◆ OVERLAY_edit_text_cache_init()

◆ OVERLAY_edit_text_cache_populate()

◆ OVERLAY_edit_text_draw()

◆ OVERLAY_edit_uv_cache_finish()

◆ OVERLAY_edit_uv_cache_init()

void OVERLAY_edit_uv_cache_init ( OVERLAY_Data * vedata)

Definition at line 186 of file overlay_edit_uv.cc.

References BrushClone::alpha, BKE_image_get_gpu_texture(), BKE_image_get_size_fl(), BKE_paint_brush(), BKE_view_layer_array_from_objects_in_mode_unique_data(), BLI_findlink(), BLI_snprintf(), DRW_Global::block_ubo, Brush::clone, OVERLAY_PrivateData::dash_length, Object::data, DEG_get_evaluated_object(), DRWContextState::depsgraph, OVERLAY_PrivateData::do_face_dots, OVERLAY_PrivateData::do_faces, OVERLAY_PrivateData::do_mask_overlay, OVERLAY_PrivateData::do_smooth_wire, OVERLAY_PrivateData::do_stencil_overlay, OVERLAY_PrivateData::do_tiled_image_border_overlay, OVERLAY_PrivateData::do_tiled_image_overlay, OVERLAY_PrivateData::do_uv_overlay, OVERLAY_PrivateData::do_uv_shadow_overlay, OVERLAY_PrivateData::do_uv_stretching_overlay, OVERLAY_PrivateData::do_verts, OVERLAY_PrivateData::draw_type, DRW_cache_quad_get(), DRW_cache_quad_wires_get(), DRW_context_state_get(), DRW_PASS_CREATE, DRW_shgroup_call_obmat, DRW_shgroup_create(), DRW_shgroup_uniform_block, DRW_shgroup_uniform_bool(), DRW_shgroup_uniform_bool_copy(), DRW_shgroup_uniform_float(), DRW_shgroup_uniform_float_copy(), DRW_shgroup_uniform_int_copy(), DRW_shgroup_uniform_texture(), DRW_shgroup_uniform_vec2_copy(), DRW_shgroup_uniform_vec3_copy(), DRW_shgroup_uniform_vec4_copy(), DRW_STATE_BLEND_ALPHA, DRW_STATE_BLEND_ALPHA_PREMUL, DRW_STATE_BLEND_MUL, DRW_STATE_DEPTH_ALWAYS, DRW_STATE_DEPTH_LESS_EQUAL, DRW_STATE_WRITE_COLOR, DRW_STATE_WRITE_DEPTH, DRW_text_cache_add(), DRW_text_cache_ensure(), DRW_TEXT_CACHE_GLOBALSPACE, OVERLAY_PrivateData::edit_uv, OVERLAY_PrivateData::edit_uv_edges_grp, OVERLAY_PassList::edit_uv_edges_ps, OVERLAY_PrivateData::edit_uv_face_dots_grp, OVERLAY_PrivateData::edit_uv_faces_grp, OVERLAY_PassList::edit_uv_faces_ps, OVERLAY_PassList::edit_uv_mask_ps, edit_uv_mask_texture(), OVERLAY_PrivateData::edit_uv_shadow_edges_grp, OVERLAY_PassList::edit_uv_stencil_ps, OVERLAY_PrivateData::edit_uv_stretching_grp, OVERLAY_PassList::edit_uv_stretching_ps, OVERLAY_PassList::edit_uv_tiled_image_borders_ps, OVERLAY_PrivateData::edit_uv_verts_grp, OVERLAY_PassList::edit_uv_verts_ps, float, G_draw, GPU_texture_original_height(), GPU_texture_original_width(), BrushClone::image, SpaceImage::image, OVERLAY_PrivateData::image_aspect, OVERLAY_PrivateData::image_size, ToolSettings::imapaint, OVERLAY_PrivateData::line_style, LISTBASE_FOREACH, M_SQRT2, OVERLAY_PrivateData::mask, MASK_OVERLAY_COMBINED, OVERLAY_PrivateData::mask_overlay_mode, OVERLAY_PrivateData::mask_texture, OB_MESH, DRWContextState::obact, DRWContextState::object_mode, BrushClone::offset, overlay_edit_uv_cache_populate(), OVERLAY_shader_edit_uv_edges_for_edge_select_get(), OVERLAY_shader_edit_uv_edges_get(), OVERLAY_shader_edit_uv_face_dots_get(), OVERLAY_shader_edit_uv_face_get(), OVERLAY_shader_edit_uv_mask_image(), OVERLAY_shader_edit_uv_stencil_image(), OVERLAY_shader_edit_uv_stretching_angle_get(), OVERLAY_shader_edit_uv_stretching_area_get(), OVERLAY_shader_edit_uv_tiled_image_borders_get(), OVERLAY_shader_edit_uv_verts_get(), OVERLAY_UV_LINE_STYLE_SHADOW, ImagePaintSettings::paint, OVERLAY_StorageList::pd, OVERLAY_Data::psl, DRWContextState::scene, SI_UVDT_STRETCH_ANGLE, DRWContextState::space_data, srgb_to_linearrgb_v4(), state, OVERLAY_Data::stl, OVERLAY_PrivateData::stretch_opacity, TH_BACK, TH_FACE_SELECT, TH_FACEDOT_SIZE, TH_VERTEX, TH_VERTEX_SIZE, tile, ImageTile::tile_number, OVERLAY_PrivateData::total_area_ratio, Object::type, UI_GetThemeColor4fv(), UI_GetThemeColorShade4fv(), UI_GetThemeColorShade4ubv(), UI_GetThemeValuef(), UI_SCALE_FAC, unit_m4(), OVERLAY_PrivateData::uv_aspect, ToolSettings::uv_flag, OVERLAY_PrivateData::uv_opacity, UV_SELECT_EDGE, ToolSettings::uv_selectmode, UV_SYNC_SELECTION, and DRWContextState::view_layer.

Referenced by OVERLAY_cache_init().

◆ OVERLAY_edit_uv_draw()

◆ OVERLAY_edit_uv_init()

void OVERLAY_edit_uv_init ( OVERLAY_Data * vedata)

Definition at line 99 of file overlay_edit_uv.cc.

References BKE_paint_brush(), BLI_listbase_clear(), Brush::clone, OVERLAY_PrivateData::dash_length, DEG_get_evaluated_id(), DRWContextState::depsgraph, OVERLAY_PrivateData::do_face_dots, OVERLAY_PrivateData::do_faces, OVERLAY_PrivateData::do_mask_overlay, OVERLAY_PrivateData::do_smooth_wire, OVERLAY_PrivateData::do_stencil_overlay, OVERLAY_PrivateData::do_tiled_image_border_overlay, OVERLAY_PrivateData::do_tiled_image_overlay, OVERLAY_PrivateData::do_uv_overlay, OVERLAY_PrivateData::do_uv_shadow_overlay, OVERLAY_PrivateData::do_uv_stretching_overlay, OVERLAY_PrivateData::do_verts, MaskSpaceInfo::draw_flag, OVERLAY_PrivateData::draw_type, DRW_context_state_get(), SpaceImage::dt_uvstretch, ED_space_image_get_aspect(), ED_space_image_get_size(), ED_space_image_get_uv_aspect(), OVERLAY_PrivateData::edit_uv, edit_uv_line_style_from_space_image(), ELEM, SpaceImage::flag, OVERLAY_PrivateData::hide_overlays, Mask::id, IMA_SRC_TILED, IMA_TYPE_IMAGE, IMA_TYPE_MULTILAYER, IMA_TYPE_UV_TEST, BrushClone::image, SpaceImage::image, OVERLAY_PrivateData::image_aspect, Brush::image_brush_type, IMAGE_PAINT_BRUSH_TYPE_CLONE, OVERLAY_PrivateData::image_size, ToolSettings::imapaint, OVERLAY_PrivateData::line_style, MaskSpaceInfo::mask, OVERLAY_PrivateData::mask, MASK_DRAWFLAG_OVERLAY, SpaceImage::mask_info, OVERLAY_PrivateData::mask_overlay_mode, SpaceImage::mode, OB_MODE_EDIT, OB_MODE_TEXTURE_PAINT, DRWContextState::object_edit, DRWContextState::object_mode, MaskSpaceInfo::overlay_mode, ImagePaintSettings::paint, OVERLAY_StorageList::pd, SCE_SELECT_FACE, DRWContextState::scene, ToolSettings::selectmode, SI_DRAW_STRETCH, SI_DRAWSHADOW, SI_MODE_MASK, SI_MODE_PAINT, SI_MODE_UV, SI_MODE_VIEW, SI_NO_DRAW_TEXPAINT, SI_NO_DRAWFACES, DRWContextState::space_data, OVERLAY_Data::stl, OVERLAY_PrivateData::stretch_opacity, SpaceImage::stretch_opacity, OVERLAY_PrivateData::total_area_ratio, OVERLAY_PrivateData::totals, UI_SCALE_FAC, USER_GPU_FLAG_OVERLAY_SMOOTH_WIRE, OVERLAY_PrivateData::uv_aspect, ToolSettings::uv_flag, OVERLAY_PrivateData::uv_opacity, SpaceImage::uv_opacity, UV_SELECT_EDGE, UV_SELECT_FACE, ToolSettings::uv_selectmode, and UV_SYNC_SELECTION.

Referenced by OVERLAY_engine_init().

◆ OVERLAY_empty_cache_populate()

◆ OVERLAY_empty_shape()

◆ OVERLAY_extra_blend_draw()

void OVERLAY_extra_blend_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_extra_cache_init()

void OVERLAY_extra_cache_init ( OVERLAY_Data * vedata)

Definition at line 55 of file overlay_extra.cc.

References DRW_Global::block, DRW_Global::block_ubo, BUF_INSTANCE, BUF_LINE, BUF_POINT, OVERLAY_ExtraCallBuffers::camera_distances, OVERLAY_ExtraCallBuffers::camera_frame, OVERLAY_ExtraCallBuffers::camera_tria, OVERLAY_ExtraCallBuffers::camera_volume, OVERLAY_ExtraCallBuffers::camera_volume_frame, OVERLAY_ExtraCallBuffers::center_active, OVERLAY_ExtraCallBuffers::center_deselected, OVERLAY_ExtraCallBuffers::center_deselected_lib, OVERLAY_ExtraCallBuffers::center_selected, OVERLAY_ExtraCallBuffers::center_selected_lib, OVERLAY_PrivateData::clipping_state, GlobalsUboStorage::color_active, GlobalsUboStorage::color_deselect, GlobalsUboStorage::color_library, GlobalsUboStorage::color_library_select, GlobalsUboStorage::color_select, DefaultTextureList::depth, DRW_cache_bone_arrows_get(), DRW_cache_camera_distances_get(), DRW_cache_camera_frame_get(), DRW_cache_camera_tria_get(), DRW_cache_camera_tria_wire_get(), DRW_cache_camera_volume_get(), DRW_cache_camera_volume_wire_get(), DRW_cache_circle_get(), DRW_cache_empty_capsule_body_get(), DRW_cache_empty_capsule_cap_get(), DRW_cache_empty_cone_get(), DRW_cache_empty_cube_get(), DRW_cache_empty_cylinder_get(), DRW_cache_empty_sphere_get(), DRW_cache_field_cone_limit_get(), DRW_cache_field_curve_get(), DRW_cache_field_force_get(), DRW_cache_field_sphere_limit_get(), DRW_cache_field_tube_limit_get(), DRW_cache_field_vortex_get(), DRW_cache_field_wind_get(), DRW_cache_groundline_get(), DRW_cache_light_area_disk_lines_get(), DRW_cache_light_area_square_lines_get(), DRW_cache_light_icon_inner_lines_get(), DRW_cache_light_icon_outer_lines_get(), DRW_cache_light_icon_sun_rays_get(), DRW_cache_light_point_lines_get(), DRW_cache_light_spot_lines_get(), DRW_cache_light_spot_volume_get(), DRW_cache_light_sun_lines_get(), DRW_cache_lightprobe_cube_get(), DRW_cache_lightprobe_grid_get(), DRW_cache_lightprobe_planar_get(), DRW_cache_plain_axes_get(), DRW_cache_quad_get(), DRW_cache_quad_wires_get(), DRW_cache_single_arrow_get(), DRW_cache_speaker_get(), DRW_cache_sphere_get(), DRW_LOD_LOW, DRW_PASS_CREATE, DRW_shgroup_create(), DRW_shgroup_create_sub(), DRW_shgroup_state_disable(), DRW_shgroup_state_enable(), DRW_shgroup_uniform_block, DRW_shgroup_uniform_bool_copy(), DRW_shgroup_uniform_texture(), DRW_shgroup_uniform_vec4_copy(), DRW_STATE_BLEND_ALPHA, DRW_STATE_CULL_BACK, DRW_STATE_CULL_FRONT, DRW_STATE_DEPTH_ALWAYS, DRW_STATE_DEPTH_LESS_EQUAL, DRW_STATE_IN_FRONT_SELECT, DRW_state_is_fbo(), DRW_state_is_select(), DRW_STATE_WRITE_COLOR, DRW_STATE_WRITE_DEPTH, DRW_viewport_texture_list_get(), OVERLAY_TextureList::dummy_depth_tx, OVERLAY_ExtraCallBuffers::empty_axes, OVERLAY_ExtraCallBuffers::empty_capsule_body, OVERLAY_ExtraCallBuffers::empty_capsule_cap, OVERLAY_ExtraCallBuffers::empty_circle, OVERLAY_ExtraCallBuffers::empty_cone, OVERLAY_ExtraCallBuffers::empty_cube, OVERLAY_ExtraCallBuffers::empty_cylinder, OVERLAY_ExtraCallBuffers::empty_image_frame, OVERLAY_ExtraCallBuffers::empty_plain_axes, OVERLAY_ExtraCallBuffers::empty_single_arrow, OVERLAY_ExtraCallBuffers::empty_sphere, OVERLAY_ExtraCallBuffers::empty_sphere_solid, OVERLAY_PassList::extra_blend_ps, OVERLAY_PrivateData::extra_call_buffers, OVERLAY_PassList::extra_centers_ps, OVERLAY_ExtraCallBuffers::extra_dashed_lines, OVERLAY_PrivateData::extra_grid_grp, OVERLAY_PassList::extra_grid_ps, OVERLAY_ExtraCallBuffers::extra_lines, OVERLAY_ExtraCallBuffers::extra_loose_points, OVERLAY_ExtraCallBuffers::extra_points, OVERLAY_PassList::extra_ps, OVERLAY_ExtraCallBuffers::extra_wire, OVERLAY_ExtraCallBuffers::field_cone_limit, OVERLAY_ExtraCallBuffers::field_curve, OVERLAY_ExtraCallBuffers::field_force, OVERLAY_ExtraCallBuffers::field_sphere_limit, OVERLAY_ExtraCallBuffers::field_tube_limit, OVERLAY_ExtraCallBuffers::field_vortex, OVERLAY_ExtraCallBuffers::field_wind, G, G_draw, G_TRANSFORM_OBJ, OVERLAY_ExtraCallBuffers::groundline, OVERLAY_InstanceFormats::instance_extra, OVERLAY_InstanceFormats::instance_pos, OVERLAY_ExtraCallBuffers::light_area, OVERLAY_ExtraCallBuffers::light_icon_inner, OVERLAY_ExtraCallBuffers::light_icon_outer, OVERLAY_ExtraCallBuffers::light_icon_sun_rays, OVERLAY_ExtraCallBuffers::light_point, OVERLAY_ExtraCallBuffers::light_spot, OVERLAY_ExtraCallBuffers::light_spot_cone_back, OVERLAY_ExtraCallBuffers::light_spot_cone_front, OVERLAY_ExtraCallBuffers::light_sun, OVERLAY_ExtraCallBuffers::origin_xform, OVERLAY_shader_extra(), OVERLAY_shader_extra_grid(), OVERLAY_shader_extra_groundline(), OVERLAY_shader_extra_loose_point(), OVERLAY_shader_extra_point(), OVERLAY_shader_extra_wire(), OVERLAY_shader_instance_formats_get(), OVERLAY_StorageList::pd, OVERLAY_InstanceFormats::point_extra, OVERLAY_InstanceFormats::pos, OVERLAY_InstanceFormats::pos_color, OVERLAY_ExtraCallBuffers::probe_cube, OVERLAY_ExtraCallBuffers::probe_grid, OVERLAY_ExtraCallBuffers::probe_planar, OVERLAY_Data::psl, OVERLAY_ExtraCallBuffers::solid_quad, OVERLAY_ExtraCallBuffers::speaker, state, OVERLAY_Data::stl, tex, OVERLAY_Data::txl, and OVERLAY_InstanceFormats::wire_extra.

Referenced by OVERLAY_cache_init().

◆ OVERLAY_extra_cache_populate()

◆ OVERLAY_extra_call_buffer_get()

◆ OVERLAY_extra_centers_draw()

void OVERLAY_extra_centers_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_extra_draw()

void OVERLAY_extra_draw ( OVERLAY_Data * vedata)

Definition at line 1666 of file overlay_extra.cc.

References DRW_draw_pass(), OVERLAY_PassList::extra_ps, and OVERLAY_Data::psl.

Referenced by OVERLAY_draw_scene().

◆ OVERLAY_extra_in_front_draw()

void OVERLAY_extra_in_front_draw ( OVERLAY_Data * vedata)

Definition at line 1671 of file overlay_extra.cc.

References DRW_draw_pass(), OVERLAY_PassList::extra_ps, and OVERLAY_Data::psl.

Referenced by OVERLAY_draw_scene().

◆ OVERLAY_extra_line()

void OVERLAY_extra_line ( OVERLAY_ExtraCallBuffers * cb,
const float start[3],
const float end[3],
int color_id )

◆ OVERLAY_extra_line_dashed()

void OVERLAY_extra_line_dashed ( OVERLAY_ExtraCallBuffers * cb,
const float start[3],
const float end[3],
const float color[4] )

◆ OVERLAY_extra_loose_points()

void OVERLAY_extra_loose_points ( OVERLAY_ExtraCallBuffers * cb,
blender::gpu::Batch * geom,
const float mat[4][4],
const float color[4] )

◆ OVERLAY_extra_point()

void OVERLAY_extra_point ( OVERLAY_ExtraCallBuffers * cb,
const float point[3],
const float color[4] )

◆ OVERLAY_extra_wire()

void OVERLAY_extra_wire ( OVERLAY_ExtraCallBuffers * cb,
blender::gpu::Batch * geom,
const float mat[4][4],
const float color[4] )

◆ OVERLAY_facing_cache_init()

◆ OVERLAY_facing_cache_populate()

◆ OVERLAY_facing_draw()

void OVERLAY_facing_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_facing_infront_draw()

void OVERLAY_facing_infront_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_facing_init()

void OVERLAY_facing_init ( OVERLAY_Data * vedata)

Definition at line 14 of file overlay_facing.cc.

Referenced by OVERLAY_engine_init().

◆ OVERLAY_fade_cache_init()

◆ OVERLAY_fade_cache_populate()

◆ OVERLAY_fade_draw()

void OVERLAY_fade_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_fade_infront_draw()

void OVERLAY_fade_infront_draw ( OVERLAY_Data * vedata)

Definition at line 78 of file overlay_fade.cc.

References DRW_draw_pass(), OVERLAY_PassList::fade_ps, IN_FRONT, and OVERLAY_Data::psl.

Referenced by OVERLAY_draw_scene().

◆ OVERLAY_fade_init()

void OVERLAY_fade_init ( OVERLAY_Data * vedata)

Definition at line 17 of file overlay_fade.cc.

◆ OVERLAY_gpencil_legacy_cache_init()

void OVERLAY_gpencil_legacy_cache_init ( OVERLAY_Data * vedata)

Definition at line 208 of file overlay_gpencil_legacy.cc.

References add_v3_v3(), BKE_gpencil_layer_active_get(), DRW_Global::block_ubo, bGPgrid::color, copy_m3_m4(), copy_m4_m4(), copy_v3_v3(), CURVE_HANDLE_NONE, Object::data, DRW_context_state_get(), DRW_PASS_CREATE, DRW_shgroup_call_procedural_lines(), DRW_shgroup_create(), DRW_shgroup_uniform_block, DRW_shgroup_uniform_int_copy(), DRW_shgroup_uniform_vec3_copy(), DRW_shgroup_uniform_vec4_copy(), DRW_STATE_BLEND_ALPHA, DRW_STATE_DEPTH_ALWAYS, DRW_STATE_DEPTH_LESS_EQUAL, DRW_STATE_WRITE_COLOR, DRW_view_viewmat_get(), ED_scene_grid_scale(), OVERLAY_PrivateData::edit_curve, View3D::flag2, G_draw, View3D::gp_flag, GP_LOCKAXIS_CURSOR, GP_LOCKAXIS_VIEW, GP_LOCKAXIS_X, GP_LOCKAXIS_Y, GP_LOCKAXIS_Z, GP_PROJECT_CURSOR, GP_PROJECT_DEPTH_STROKE, GP_PROJECT_DEPTH_VIEW, GP_PROJECT_VIEWSPACE, ToolSettings::gp_sculpt, OVERLAY_PassList::gpencil_canvas_ps, View3DOverlay::gpencil_grid_opacity, ToolSettings::gpencil_v3d_align, bGPdata::grid, OVERLAY_PrivateData::handle_display, View3DOverlay::handle_display, bGPDlayer::layer_mat, bGPgrid::lines, loc_eul_size_to_mat4(), GP_Sculpt_Settings::lock_axis, max_ff(), mul_m4_m4m3(), mul_v2_v2fl(), OB_GPENCIL_LEGACY, DRWContextState::obact, bGPgrid::offset, View3D::overlay, OVERLAY_shader_gpencil_canvas(), OVERLAY_StorageList::pd, OVERLAY_Data::psl, rescale_m4(), bGPgrid::scale, DRWContextState::scene, OVERLAY_PrivateData::show_handles, state, OVERLAY_Data::stl, swap_v4_v4(), translate_m4(), Object::type, DRWContextState::v3d, V3D_GP_SHOW_GRID, V3D_GP_SHOW_GRID_XRAY, and V3D_HIDE_OVERLAYS.

Referenced by OVERLAY_cache_init().

◆ OVERLAY_gpencil_legacy_draw()

void OVERLAY_gpencil_legacy_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_grease_pencil_cache_init()

void OVERLAY_grease_pencil_cache_init ( OVERLAY_Data * vedata)

◆ OVERLAY_grease_pencil_draw()

void OVERLAY_grease_pencil_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_grid_cache_init()

◆ OVERLAY_grid_draw()

void OVERLAY_grid_draw ( OVERLAY_Data * vedata)

Definition at line 318 of file overlay_grid.cc.

References DRW_draw_pass(), OVERLAY_PassList::grid_ps, and OVERLAY_Data::psl.

Referenced by OVERLAY_draw_scene().

◆ OVERLAY_grid_init()

void OVERLAY_grid_init ( OVERLAY_Data * vedata)

Definition at line 32 of file overlay_grid.cc.

References View3D::camera, View3D::clip_end, CLIP_ZNEG, CLIP_ZPOS, copy_v3_fl(), copy_v3_fl3(), copy_v3_v3(), CUSTOM_GRID, Object::data, DEG_get_evaluated_object(), DRWContextState::depsgraph, DRW_context_state_get(), DRW_view_viewmat_get(), DRW_view_winmat_get(), ED_space_image_grid_steps(), ED_space_image_has_buffer(), ED_space_image_zoom_level(), ED_view3d_grid_steps(), ELEM, fabsf, SpaceImage::flag, SpaceImageOverlay::flag, View3D::flag, float, OVERLAY_PrivateData::grid, OVERLAY_PrivateData::grid_axes, GRID_BACK, GRID_CAMERA, OVERLAY_PrivateData::grid_data, OVERLAY_PrivateData::grid_flag, SpaceImage::grid_shape_source, OVERLAY_PrivateData::hide_overlays, len_v3(), max_ff(), min_ff(), SpaceImage::mode, negate_v3_v3(), OB_CAMERA, SpaceImage::overlay, RegionView3D::persp, PLANE_IMAGE, PLANE_XY, PLANE_XZ, PLANE_YZ, DRWContextState::region, DRWContextState::rv3d, RV3D_CAMOB, RV3D_ORTHO, RV3D_VIEW_BACK, RV3D_VIEW_BOTTOM, RV3D_VIEW_FRONT, RV3D_VIEW_LEFT, RV3D_VIEW_RIGHT, RV3D_VIEW_TOP, RV3D_VIEW_USER, DRWContextState::scene, SHOW_AXIS_X, SHOW_AXIS_Y, SHOW_AXIS_Z, SHOW_GRID, SI_GRID_OVER_IMAGE, SI_GRID_SHAPE_DYNAMIC, SI_GRID_STEPS_LEN, SI_MODE_UV, SI_OVERLAY_SHOW_GRID_BACKGROUND, DRWContextState::space_data, SPACE_IMAGE, OVERLAY_PrivateData::space_type, SpaceImage::tile_grid_shape, Object::type, ARegion::v2d, DRWContextState::v3d, OVERLAY_PrivateData::v3d_gridflag, V3D_SHOW_FLOOR, V3D_SHOW_ORTHO_GRID, V3D_SHOW_X, V3D_SHOW_Y, V3D_SHOW_Z, V3D_XR_SESSION_MIRROR, V3D_XR_SESSION_SURFACE, RegionView3D::view, OVERLAY_PrivateData::zneg_flag, OVERLAY_PrivateData::zplane_axes, and OVERLAY_PrivateData::zpos_flag.

Referenced by OVERLAY_engine_init().

◆ OVERLAY_image_background_draw()

void OVERLAY_image_background_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_image_cache_finish()

◆ OVERLAY_image_cache_init()

◆ OVERLAY_image_camera_cache_populate()

◆ OVERLAY_image_draw()

◆ OVERLAY_image_empty_cache_populate()

◆ OVERLAY_image_in_front_draw()

◆ OVERLAY_image_init()

◆ OVERLAY_image_scene_background_draw()

void OVERLAY_image_scene_background_draw ( OVERLAY_Data * vedata)

This function draws images that needs the view transform applied. It draws these images directly into the scene color buffer.

Definition at line 447 of file overlay_image.cc.

References DefaultFramebufferList::default_fb, DRW_draw_pass(), DRW_pass_is_empty(), DRW_state_is_fbo(), DRW_viewport_framebuffer_list_get(), GPU_framebuffer_bind(), OVERLAY_PassList::image_background_scene_ps, OVERLAY_PassList::image_foreground_scene_ps, and OVERLAY_Data::psl.

Referenced by OVERLAY_draw_scene().

◆ OVERLAY_lattice_cache_populate()

◆ OVERLAY_light_cache_populate()

◆ OVERLAY_lightprobe_cache_populate()

void OVERLAY_lightprobe_cache_populate ( OVERLAY_Data * vedata,
Object * ob )

Definition at line 709 of file overlay_extra.cc.

References LightProbe::attenuation_type, Object::base_flag, BASE_SELECTED, LightProbe::clipend, LightProbe::clipsta, copy_m4_m4(), Object::data, LightProbe::distinf, LightProbe::distpar, DRW_buffer_add_entry, DRW_context_state_get(), DRW_object_wire_theme_get(), DRW_shgroup_call_procedural_points(), DRW_shgroup_create_sub(), DRW_shgroup_uniform_mat4_copy(), DRW_state_is_select(), OVERLAY_ExtraCallBuffers::empty_cube, Object::empty_drawsize, OVERLAY_PrivateData::extra_grid_grp, LightProbe::falloff, LightProbe::flag, LightProbe::grid_resolution_x, LightProbe::grid_resolution_y, LightProbe::grid_resolution_z, LightProbe::grid_surfel_density, OVERLAY_ExtraCallBuffers::groundline, LIGHTPROBE_FLAG_CUSTOM_PARALLAX, LIGHTPROBE_FLAG_SHOW_CLIP_DIST, LIGHTPROBE_FLAG_SHOW_DATA, LIGHTPROBE_FLAG_SHOW_INFLUENCE, LIGHTPROBE_FLAG_SHOW_PARALLAX, LIGHTPROBE_SHAPE_BOX, LIGHTPROBE_TYPE_PLANE, LIGHTPROBE_TYPE_SPHERE, LIGHTPROBE_TYPE_VOLUME, mul_v3_fl(), normalize_m4_m4(), normalize_v3_length(), OB_CUBE, OB_EMPTY_SPHERE, OB_SINGLE_ARROW, OVERLAY_empty_shape(), OVERLAY_extra_call_buffer_get(), LightProbe::parallax_type, OVERLAY_StorageList::pd, pos, OVERLAY_ExtraCallBuffers::probe_cube, OVERLAY_ExtraCallBuffers::probe_grid, OVERLAY_ExtraCallBuffers::probe_planar, blender::MatBase< T, NumCol, NumRow, Alignment >::ptr(), reduce_max(), OVERLAY_ExtraCallBuffers::solid_quad, OVERLAY_Data::stl, TH_ACTIVE, LightProbe::type, DRWContextState::view_layer, and zero_v3().

Referenced by OVERLAY_cache_populate().

◆ OVERLAY_metaball_cache_init()

◆ OVERLAY_metaball_cache_populate()

◆ OVERLAY_metaball_draw()

void OVERLAY_metaball_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_metaball_in_front_draw()

void OVERLAY_metaball_in_front_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_mode_transfer_cache_finish()

◆ OVERLAY_mode_transfer_cache_init()

◆ OVERLAY_mode_transfer_cache_populate()

◆ OVERLAY_mode_transfer_draw()

void OVERLAY_mode_transfer_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_mode_transfer_infront_draw()

void OVERLAY_mode_transfer_infront_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_motion_path_cache_init()

◆ OVERLAY_motion_path_cache_populate()

◆ OVERLAY_motion_path_draw()

void OVERLAY_motion_path_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_outline_cache_init()

◆ OVERLAY_outline_cache_populate()

◆ OVERLAY_outline_draw()

◆ OVERLAY_outline_init()

◆ OVERLAY_paint_cache_init()

void OVERLAY_paint_cache_init ( OVERLAY_Data * vedata)

Definition at line 70 of file overlay_paint.cc.

References OVERLAY_PrivateData::alpha_blending, Image::alpha_mode, BKE_image_get_gpu_texture(), BKE_scene_uses_blender_workbench(), BLI_assert, DRW_Global::block_ubo, OVERLAY_PrivateData::clipping_state, copy_v3_fl3(), OVERLAY_PrivateData::ctx_mode, CTX_MODE_EDIT_MESH, CTX_MODE_PAINT_TEXTURE, CTX_MODE_PAINT_VERTEX, CTX_MODE_PAINT_WEIGHT, CTX_MODE_POSE, DRW_context_state_get(), DRW_PASS_CREATE, DRW_shgroup_create(), DRW_shgroup_state_enable(), DRW_shgroup_uniform_block, DRW_shgroup_uniform_bool_copy(), DRW_shgroup_uniform_float_copy(), DRW_shgroup_uniform_texture(), DRW_shgroup_uniform_vec3_copy(), DRW_shgroup_uniform_vec4_copy(), DRW_STATE_BLEND_ALPHA, DRW_STATE_BLEND_MUL, DRW_STATE_DEPTH_EQUAL, DRW_STATE_DEPTH_LESS_EQUAL, DRW_STATE_WRITE_COLOR, DRW_STATE_WRITE_DEPTH, ImagePaintSettings::flag, G_draw, IMA_ALPHA_PREMUL, IMAGEPAINT_PROJECT_LAYER_STENCIL, IMAGEPAINT_PROJECT_LAYER_STENCIL_INV, ToolSettings::imapaint, normalize_v3(), OB_SOLID, OB_WIRE, OVERLAY_PrivateData::overlay, OVERLAY_shader_depth_only(), OVERLAY_shader_paint_face(), OVERLAY_shader_paint_point(), OVERLAY_shader_paint_texture(), OVERLAY_shader_paint_vertcol(), OVERLAY_shader_paint_weight(), OVERLAY_shader_paint_wire(), OVERLAY_PassList::paint_color_ps, OVERLAY_PrivateData::paint_depth_grp, OVERLAY_PassList::paint_depth_ps, OVERLAY_PrivateData::paint_face_grp, OVERLAY_PassList::paint_overlay_ps, OVERLAY_PrivateData::paint_point_grp, OVERLAY_PrivateData::paint_surf_grp, OVERLAY_PrivateData::paint_wire_grp, OVERLAY_PrivateData::paint_wire_selected_grp, OVERLAY_PrivateData::painting, OVERLAY_StorageList::pd, OVERLAY_Data::psl, DRWContextState::scene, View3D::shading, state, ImagePaintSettings::stencil, ImagePaintSettings::stencil_col, OVERLAY_Data::stl, tex, View3DOverlay::texture_paint_mode_opacity, Scene::toolsettings, View3DShading::type, DRWContextState::v3d, V3D_OVERLAY_WPAINT_CONTOURS, View3DOverlay::vertex_paint_mode_opacity, View3DOverlay::weight_paint_mode_opacity, DRW_Global::weight_ramp, and View3DOverlay::wpaint_flag.

Referenced by OVERLAY_cache_init().

◆ OVERLAY_paint_draw()

◆ OVERLAY_paint_init()

◆ OVERLAY_paint_texture_cache_populate()

◆ OVERLAY_paint_vertex_cache_populate()

◆ OVERLAY_paint_weight_cache_populate()

void OVERLAY_paint_weight_cache_populate ( OVERLAY_Data * vedata,
Object * ob )

Definition at line 260 of file overlay_paint.cc.

References OVERLAY_paint_vertex_cache_populate().

Referenced by OVERLAY_cache_populate().

◆ OVERLAY_particle_cache_init()

◆ OVERLAY_particle_cache_populate()

◆ OVERLAY_particle_draw()

void OVERLAY_particle_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_pose_armature_cache_populate()

◆ OVERLAY_pose_cache_populate()

◆ OVERLAY_pose_draw()

◆ OVERLAY_sculpt_cache_init()

◆ OVERLAY_sculpt_cache_populate()

◆ OVERLAY_sculpt_curves_cache_init()

◆ OVERLAY_sculpt_curves_cache_populate()

◆ OVERLAY_sculpt_curves_draw()

void OVERLAY_sculpt_curves_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_sculpt_curves_draw_wires()

void OVERLAY_sculpt_curves_draw_wires ( OVERLAY_Data * vedata)

◆ OVERLAY_sculpt_draw()

◆ OVERLAY_sculpt_grease_pencil_cache_populate()

◆ OVERLAY_shader_antialiasing()

GPUShader * OVERLAY_shader_antialiasing ( )

◆ OVERLAY_shader_armature_degrees_of_freedom_solid()

◆ OVERLAY_shader_armature_degrees_of_freedom_wire()

◆ OVERLAY_shader_armature_envelope()

◆ OVERLAY_shader_armature_shape()

◆ OVERLAY_shader_armature_shape_wire()

◆ OVERLAY_shader_armature_sphere()

◆ OVERLAY_shader_armature_stick()

◆ OVERLAY_shader_armature_wire()

◆ OVERLAY_shader_background()

GPUShader * OVERLAY_shader_background ( )

◆ OVERLAY_shader_clipbound()

GPUShader * OVERLAY_shader_clipbound ( )

◆ OVERLAY_shader_depth_only()

◆ OVERLAY_shader_edit_curve_handle()

◆ OVERLAY_shader_edit_curve_point()

◆ OVERLAY_shader_edit_curve_wire()

◆ OVERLAY_shader_edit_curves_handle()

◆ OVERLAY_shader_edit_gpencil_guide_point()

◆ OVERLAY_shader_edit_gpencil_point()

◆ OVERLAY_shader_edit_gpencil_wire()

◆ OVERLAY_shader_edit_lattice_point()

◆ OVERLAY_shader_edit_lattice_wire()

◆ OVERLAY_shader_edit_mesh_analysis()

◆ OVERLAY_shader_edit_mesh_depth()

◆ OVERLAY_shader_edit_mesh_edge()

◆ OVERLAY_shader_edit_mesh_face()

◆ OVERLAY_shader_edit_mesh_facedot()

◆ OVERLAY_shader_edit_mesh_normal()

◆ OVERLAY_shader_edit_mesh_skin_root()

◆ OVERLAY_shader_edit_mesh_vert()

◆ OVERLAY_shader_edit_particle_point()

◆ OVERLAY_shader_edit_particle_strand()

◆ OVERLAY_shader_edit_uv_edges_for_edge_select_get()

GPUShader * OVERLAY_shader_edit_uv_edges_for_edge_select_get ( )

◆ OVERLAY_shader_edit_uv_edges_get()

GPUShader * OVERLAY_shader_edit_uv_edges_get ( )

◆ OVERLAY_shader_edit_uv_face_dots_get()

GPUShader * OVERLAY_shader_edit_uv_face_dots_get ( )

◆ OVERLAY_shader_edit_uv_face_get()

GPUShader * OVERLAY_shader_edit_uv_face_get ( )

◆ OVERLAY_shader_edit_uv_mask_image()

GPUShader * OVERLAY_shader_edit_uv_mask_image ( )

◆ OVERLAY_shader_edit_uv_stencil_image()

GPUShader * OVERLAY_shader_edit_uv_stencil_image ( )

◆ OVERLAY_shader_edit_uv_stretching_angle_get()

GPUShader * OVERLAY_shader_edit_uv_stretching_angle_get ( )

◆ OVERLAY_shader_edit_uv_stretching_area_get()

GPUShader * OVERLAY_shader_edit_uv_stretching_area_get ( )

◆ OVERLAY_shader_edit_uv_tiled_image_borders_get()

GPUShader * OVERLAY_shader_edit_uv_tiled_image_borders_get ( )

◆ OVERLAY_shader_edit_uv_verts_get()

GPUShader * OVERLAY_shader_edit_uv_verts_get ( )

◆ OVERLAY_shader_extra()

◆ OVERLAY_shader_extra_grid()

◆ OVERLAY_shader_extra_groundline()

◆ OVERLAY_shader_extra_loose_point()

◆ OVERLAY_shader_extra_point()

◆ OVERLAY_shader_extra_wire()

GPUShader * OVERLAY_shader_extra_wire ( bool use_object,
bool is_select )

◆ OVERLAY_shader_facing()

◆ OVERLAY_shader_free()

void OVERLAY_shader_free ( )

Definition at line 1216 of file overlay_shader.cc.

References ARRAY_SIZE, DRW_SHADER_FREE_SAFE, e_data, g_formats, MEM_SAFE_FREE, and sh_data.

Referenced by OVERLAY_engine_free().

◆ OVERLAY_shader_gpencil_canvas()

◆ OVERLAY_shader_grid()

GPUShader * OVERLAY_shader_grid ( )

◆ OVERLAY_shader_grid_background()

GPUShader * OVERLAY_shader_grid_background ( )

◆ OVERLAY_shader_grid_image()

GPUShader * OVERLAY_shader_grid_image ( )

◆ OVERLAY_shader_image()

◆ OVERLAY_shader_instance_formats_get()

◆ OVERLAY_shader_motion_path_line()

◆ OVERLAY_shader_motion_path_vert()

◆ OVERLAY_shader_outline_detect()

GPUShader * OVERLAY_shader_outline_detect ( )

◆ OVERLAY_shader_outline_prepass()

◆ OVERLAY_shader_outline_prepass_curves()

◆ OVERLAY_shader_outline_prepass_gpencil()

◆ OVERLAY_shader_outline_prepass_pointcloud()

◆ OVERLAY_shader_paint_face()

◆ OVERLAY_shader_paint_point()

◆ OVERLAY_shader_paint_texture()

◆ OVERLAY_shader_paint_vertcol()

◆ OVERLAY_shader_paint_weight()

GPUShader * OVERLAY_shader_paint_weight ( bool shading)

◆ OVERLAY_shader_paint_wire()

◆ OVERLAY_shader_particle_dot()

◆ OVERLAY_shader_particle_shape()

◆ OVERLAY_shader_sculpt_curves_cage()

◆ OVERLAY_shader_sculpt_curves_selection()

◆ OVERLAY_shader_sculpt_mask()

◆ OVERLAY_shader_uniform_color()

◆ OVERLAY_shader_uniform_color_pointcloud()

◆ OVERLAY_shader_viewer_attribute_curve()

◆ OVERLAY_shader_viewer_attribute_curves()

◆ OVERLAY_shader_viewer_attribute_mesh()

◆ OVERLAY_shader_viewer_attribute_pointcloud()

◆ OVERLAY_shader_volume_gridlines()

GPUShader * OVERLAY_shader_volume_gridlines ( bool color_with_flags,
bool color_range )

◆ OVERLAY_shader_volume_velocity()

GPUShader * OVERLAY_shader_volume_velocity ( bool use_needle,
bool use_mac )

◆ OVERLAY_shader_wireframe()

◆ OVERLAY_shader_wireframe_select()

◆ OVERLAY_shader_xray_fade()

GPUShader * OVERLAY_shader_xray_fade ( )

◆ OVERLAY_speaker_cache_populate()

◆ OVERLAY_vertex_grease_pencil_cache_populate()

◆ OVERLAY_viewer_attribute_cache_init()

◆ OVERLAY_viewer_attribute_cache_populate()

◆ OVERLAY_viewer_attribute_draw()

void OVERLAY_viewer_attribute_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_viewer_attribute_text()

◆ OVERLAY_volume_cache_init()

◆ OVERLAY_volume_cache_populate()

void OVERLAY_volume_cache_populate ( OVERLAY_Data * vedata,
Object * ob )

◆ OVERLAY_volume_draw()

void OVERLAY_volume_draw ( OVERLAY_Data * vedata)

Definition at line 49 of file overlay_volume.cc.

References DRW_draw_pass(), OVERLAY_Data::psl, and OVERLAY_PassList::volume_ps.

Referenced by OVERLAY_draw_scene().

◆ OVERLAY_weight_grease_pencil_cache_populate()

◆ OVERLAY_wireframe_cache_init()

void OVERLAY_wireframe_cache_init ( OVERLAY_Data * vedata)

◆ OVERLAY_wireframe_cache_populate()

void OVERLAY_wireframe_cache_populate ( OVERLAY_Data * vedata,
Object * ob,
OVERLAY_DupliData * dupli,
bool init_dupli )

Definition at line 164 of file overlay_wireframe.cc.

References Object::base_flag, OVERLAY_DupliData::base_flag, BASE_FROM_DUPLI, BKE_object_get_editmesh_eval_cage(), BKE_object_get_editmesh_eval_final(), BKE_sculptsession_use_pbvh_draw(), BLI_assert, color, Object::data, Volume::display, DRW_cache_curve_edge_wire_get(), DRW_cache_mesh_all_verts_get(), DRW_cache_mesh_loose_edges_get(), DRW_cache_object_face_wireframe_get(), DRW_cache_surf_edge_wire_get(), DRW_cache_text_edge_wire_get(), DRW_context_state_get(), DRW_object_get_dupli_parent(), DRW_object_is_in_edit_mode(), DRW_object_is_visible_psys_in_active_context(), DRW_object_wire_theme_get(), DRW_shgroup_call, DRW_shgroup_call_no_cull, DRW_shgroup_call_sculpt(), DRW_state_is_image_render(), Object::dt, Object::dtx, Mesh::edges_num, ELEM, OVERLAY_ExtraCallBuffers::extra_loose_points, OVERLAY_ExtraCallBuffers::extra_wire, ListBase::first, View3DOverlay::flag, is_mesh(), Object::mode, OB_CURVES_LEGACY, OB_DRAW_ALL_EDGES, OB_DRAW_IN_FRONT, OB_DRAWWIRE, OB_FONT, OB_GPENCIL_LEGACY, OB_GREASE_PENCIL, OB_MESH, OB_MODE_SCULPT, OB_POINTCLOUD, OB_SURF, OB_VOLUME, OB_WIRE, OVERLAY_PrivateData::overlay, OVERLAY_extra_call_buffer_get(), OVERLAY_extra_loose_points(), OVERLAY_extra_wire(), PART_DRAW_PATH, PART_DRAW_REND, Object::particlesystem, OVERLAY_StorageList::pd, ParticleSettings::ren_as, DRWContextState::rv3d, DRWContextState::scene, Object::sculpt, OVERLAY_Data::stl, Object::type, V3D_OVERLAY_WIREFRAMES, DRWContextState::view_layer, VOLUME_WIREFRAME_POINTS, OVERLAY_DupliData::wire_geom, OVERLAY_DupliData::wire_shgrp, wireframe_hair_cache_populate(), OVERLAY_PrivateData::wireframe_mode, VolumeDisplay::wireframe_type, OVERLAY_PrivateData::wires_all_grp, OVERLAY_PrivateData::wires_grp, and OVERLAY_PrivateData::wires_sculpt_grp.

Referenced by OVERLAY_cache_populate().

◆ OVERLAY_wireframe_draw()

void OVERLAY_wireframe_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_wireframe_in_front_draw()

void OVERLAY_wireframe_in_front_draw ( OVERLAY_Data * vedata)

◆ OVERLAY_wireframe_init()

◆ OVERLAY_xray_depth_copy()

◆ OVERLAY_xray_depth_infront_copy()

◆ OVERLAY_xray_fade_draw()

◆ pack_data_in_mat4()

BLI_INLINE void pack_data_in_mat4 ( float rmat[4][4],
const float mat[4][4],
float a,
float b,
float c,
float d )

Definition at line 553 of file overlay_private.hh.

References b, and copy_m4_m4().

Referenced by pack_v4_in_mat4().

◆ pack_fl_in_mat4()

BLI_INLINE void pack_fl_in_mat4 ( float rmat[4][4],
const float mat[4][4],
float a )

Definition at line 568 of file overlay_private.hh.

References copy_m4_m4().

Referenced by OVERLAY_empty_shape().

◆ pack_v4_in_mat4()

BLI_INLINE void pack_v4_in_mat4 ( float rmat[4][4],
const float mat[4][4],
const float v[4] )

Definition at line 563 of file overlay_private.hh.

References pack_data_in_mat4(), and v.

Referenced by OVERLAY_extra_loose_points(), and OVERLAY_extra_wire().