Blender V4.3
GPU_immediate.hh File Reference
#include "GPU_batch.hh"
#include "GPU_immediate_util.hh"
#include "GPU_primitive.hh"
#include "GPU_shader.hh"
#include "GPU_texture.hh"
#include "GPU_vertex_format.hh"

Go to the source code of this file.

Functions

GPUVertFormatimmVertexFormat ()
 
void immBindShader (GPUShader *shader)
 
void immUnbindProgram ()
 
void immBegin (GPUPrimType, uint vertex_len)
 
void immBeginAtMost (GPUPrimType, uint max_vertex_len)
 
void immEnd ()
 
blender::gpu::Batch * immBeginBatch (GPUPrimType, uint vertex_len)
 
blender::gpu::Batch * immBeginBatchAtMost (GPUPrimType, uint vertex_len)
 
void immAttr1f (uint attr_id, float x)
 
void immAttr2f (uint attr_id, float x, float y)
 
void immAttr3f (uint attr_id, float x, float y, float z)
 
void immAttr4f (uint attr_id, float x, float y, float z, float w)
 
void immAttr2i (uint attr_id, int x, int y)
 
void immAttr1u (uint attr_id, uint x)
 
void immAttr2s (uint attr_id, short x, short y)
 
void immAttr2fv (uint attr_id, const float data[2])
 
void immAttr3fv (uint attr_id, const float data[3])
 
void immAttr4fv (uint attr_id, const float data[4])
 
void immAttr3ub (uint attr_id, unsigned char r, unsigned char g, unsigned char b)
 
void immAttr4ub (uint attr_id, unsigned char r, unsigned char g, unsigned char b, unsigned char a)
 
void immAttr3ubv (uint attr_id, const unsigned char data[3])
 
void immAttr4ubv (uint attr_id, const unsigned char data[4])
 
void immAttrSkip (uint attr_id)
 
void immVertex2f (uint attr_id, float x, float y)
 
void immVertex3f (uint attr_id, float x, float y, float z)
 
void immVertex4f (uint attr_id, float x, float y, float z, float w)
 
void immVertex2i (uint attr_id, int x, int y)
 
void immVertex2s (uint attr_id, short x, short y)
 
void immVertex2fv (uint attr_id, const float data[2])
 
void immVertex3fv (uint attr_id, const float data[3])
 
void immVertex2iv (uint attr_id, const int data[2])
 
void immUniform1i (const char *name, int x)
 
void immUniform1f (const char *name, float x)
 
void immUniform2f (const char *name, float x, float y)
 
void immUniform2fv (const char *name, const float data[2])
 
void immUniform3f (const char *name, float x, float y, float z)
 
void immUniform3fv (const char *name, const float data[3])
 
void immUniform4f (const char *name, float x, float y, float z, float w)
 
void immUniform4fv (const char *name, const float data[4])
 
void immUniformArray4fv (const char *bare_name, const float *data, int count)
 
void immUniformMatrix4fv (const char *name, const float data[4][4])
 
void immBindTexture (const char *name, GPUTexture *tex)
 
void immBindTextureSampler (const char *name, GPUTexture *tex, GPUSamplerState state)
 
void immBindUniformBuf (const char *name, GPUUniformBuf *ubo)
 
void immUniformColor4f (float r, float g, float b, float a)
 
void immUniformColor4fv (const float rgba[4])
 
void immUniformColor3f (float r, float g, float b)
 
void immUniformColor3fv (const float rgb[3])
 
void immUniformColor3fvAlpha (const float rgb[3], float a)
 
void immUniformColor3ub (unsigned char r, unsigned char g, unsigned char b)
 
void immUniformColor4ub (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
 
void immUniformColor3ubv (const unsigned char rgb[3])
 
void immUniformColor3ubvAlpha (const unsigned char rgb[3], unsigned char a)
 
void immUniformColor4ubv (const unsigned char rgba[4])
 
void immBindBuiltinProgram (eGPUBuiltinShader shader_id)
 
void immUniformThemeColor (int color_id)
 
void immUniformThemeColorAlpha (int color_id, float a)
 
void immUniformThemeColor3 (int color_id)
 
void immUniformThemeColorShade (int color_id, int offset)
 
void immUniformThemeColorShadeAlpha (int color_id, int color_offset, int alpha_offset)
 
void immUniformThemeColorBlendShade (int color_id1, int color_id2, float fac, int offset)
 
void immUniformThemeColorBlend (int color_id1, int color_id2, float fac)
 
void immThemeColorShadeAlpha (int colorid, int coloffset, int alphaoffset)
 

Detailed Description

GPU immediate mode work-alike

Definition in file GPU_immediate.hh.

Function Documentation

◆ immAttr1f()

◆ immAttr1u()

◆ immAttr2f()

◆ immAttr2fv()

void immAttr2fv ( uint attr_id,
const float data[2] )

Definition at line 406 of file gpu_immediate.cc.

References attr_id, and immAttr2f().

◆ immAttr2i()

◆ immAttr2s()

◆ immAttr3f()

◆ immAttr3fv()

void immAttr3fv ( uint attr_id,
const float data[3] )

◆ immAttr3ub()

◆ immAttr3ubv()

void immAttr3ubv ( uint attr_id,
const unsigned char data[3] )

Definition at line 458 of file gpu_immediate.cc.

References attr_id, and immAttr3ub().

Referenced by draw_dividers(), ui_draw_but_TAB_outline(), and UI_view2d_multi_grid_draw().

◆ immAttr4f()

◆ immAttr4fv()

◆ immAttr4ub()

◆ immAttr4ubv()

void immAttr4ubv ( uint attr_id,
const unsigned char data[4] )

◆ immAttrSkip()

◆ immBegin()

void immBegin ( GPUPrimType prim_type,
uint vertex_len )

Must supply exactly vertex_len vertices.

Definition at line 195 of file gpu_immediate.cc.

References blender::gpu::Immediate::begin(), BLI_assert, blender::gpu::Immediate::enabled_attr_bits, GPU_PRIM_NONE, imm, blender::gpu::Immediate::prim_type, blender::gpu::Immediate::unassigned_attr_bits, vertex_count_makes_sense_for_primitive(), blender::gpu::Immediate::vertex_data, blender::gpu::Immediate::vertex_idx, blender::gpu::Immediate::vertex_len, and wide_line_workaround_start().

Referenced by ANIM_channel_draw(), ANIM_draw_action_framerange(), ANIM_draw_cfra(), ANIM_draw_framerange(), annotation_draw_stabilizer(), annotation_draw_stroke_2d(), annotation_draw_stroke_buffer(), annotation_draw_stroke_point(), arrow_draw_geom(), button2d_draw_intern(), cage2d_draw_box_corners(), cage2d_draw_box_interaction(), cage2d_draw_circle_wire(), cage2d_draw_rect_wire(), cage3d_draw_circle_wire(), channel_list_draw_keys(), clip_draw_dopesheet_main(), clip_draw_sfra_efra(), cursor_point_draw(), blender::ed::curves::curve_draw_stroke_3d(), curve_draw_stroke_3d(), dial_ghostarc_draw_helpline(), dial_ghostarc_draw_incremental_angle(), draw_anti_tria(), draw_azone_arrow(), blender::ed::sculpt_paint::draw_bezier_handle_lines(), draw_channel_strips(), blender::ed::greasepencil::image_render::draw_circles(), draw_columnheader_columns(), blender::ed::greasepencil::draw_control_points(), draw_cross(), draw_disk_shaded(), draw_display_buffer(), draw_distortion(), draw_dividers(), blender::ed::greasepencil::image_render::draw_dot(), blender::ed::greasepencil::image_render::draw_dots(), draw_fcurve_active_vertex(), draw_fcurve_curve(), draw_fcurve_curve_keys(), draw_fcurve_curve_samples(), draw_fcurve_modifier_controls_envelope(), draw_image_sample_line(), draw_keyframe(), draw_lasso_smooth_stroke_indicator(), draw_marker_areas(), draw_marker_line(), draw_marker_outline(), draw_marker_slide_triangle(), draw_marker_slide_zones(), draw_overlap_frame_indicator(), draw_overshoot_triangle(), draw_parallel_lines(), draw_plane_marker_ex(), draw_plane_marker_image(), draw_single_handle(), draw_spline_points(), draw_timeline_sfra_efra(), draw_track_path_lines(), draw_track_path_points(), draw_tracking_tracks(), blender::ed::sculpt_paint::draw_tri_point(), draw_view_axis(), drawArrow(), drawConstraint(), drawEdgeSlide(), drawFlyPixel(), drawLine(), drawSnapping(), drawVertSlide(), drawviewborder(), drawviewborder_grid3(), drawviewborder_triangle(), drawWalkPixel(), DRW_draw_cursor(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_edit_draw(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_parallel_lines_draw(), ED_image_draw_cursor(), ED_mask_draw_frames(), ED_node_draw_snap(), ED_region_draw_mouse_line_cb(), ED_region_grid_draw(), ED_view3d_cursor_snap_draw_util(), EDBM_preselect_edgering_draw(), EDBM_preselect_elem_draw(), blender::ed::sculpt_paint::boundary::edges_preview_draw(), gizmo_axis_draw(), gizmo_ruler_draw(), GPU_viewport_stereo_composite(), blender::ed::sculpt_paint::image::ops::paint::gradient_draw_line(), graph_draw_driver_debug(), graph_main_region_draw(), histogram_draw_one(), imm_draw_box_wire_2d(), imm_draw_box_wire_3d(), imm_draw_circle(), imm_draw_circle_3D(), imm_draw_circle_partial(), imm_draw_circle_partial_3d(), imm_draw_cube_corners_3d(), imm_draw_cube_fill_3d(), imm_draw_cube_wire_3d(), imm_draw_cylinder_fill_3d(), imm_draw_cylinder_fill_normal_3d(), imm_draw_cylinder_wire_3d(), imm_draw_disk_partial(), imm_draw_disk_partial_3d(), imm_draw_point_aspect_2d(), imm_drawcircball(), immBeginAtMost(), immDrawBorderCorners(), immDrawPixelsTexScaledFullSize(), immDrawPixelsTexTiled_scaling_clipping(), immRectf(), immRecti(), knifetool_draw(), knifetool_draw_angle(), knifetool_draw_angle_snapping(), knifetool_draw_orientation_locking(), mask_draw_array(), blender::ed::sculpt_paint::min_distance_edit::min_distance_edit_draw(), move_geom_draw(), blender::ed::sculpt_paint::multiplane_scrape_preview_draw(), nla_action_draw_keyframes(), nla_draw_strip_curves(), blender::ed::space_node::node_composit_backdrop_boxmask(), blender::ed::space_node::node_composit_backdrop_ellipsemask(), blender::ed::space_node::node_draw_hidden(), blender::ed::space_node::node_draw_sockets(), blender::ed::space_node::node_draw_zones_and_frames(), blender::ed::space_node::node_socket_draw(), blender::ed::outliner::outliner_back(), blender::ed::outliner::outliner_draw_hierarchy_line(), blender::ed::outliner::outliner_draw_separator(), blender::ed::outliner::outliner_draw_struct_marks(), blender::ed::sculpt_paint::paint_cursor_pose_brush_segments_draw(), blender::ed::sculpt_paint::paint_draw_cursor_overlay(), blender::ed::sculpt_paint::paint_draw_curve_cursor(), blender::ed::sculpt_paint::paint_draw_line_cursor(), blender::ed::sculpt_paint::paint_draw_smooth_cursor(), blender::ed::sculpt_paint::paint_draw_tex_overlay(), blender::ed::sculpt_paint::boundary::pivot_line_preview_draw(), blender::ed::sculpt_paint::cloth::plane_falloff_preview_draw(), playanim_toscreen_ex(), radial_control_paint_cursor(), radial_control_paint_curve(), radial_control_paint_tex(), rounded_corners(), blender::ed::sculpt_paint::sculpt_geometry_preview_lines_draw(), seq_draw_image_origin_and_outline(), sequencer_draw_display_buffer(), sequencer_draw_scopes(), blender::gpu::tests::test_immediate_one_plane(), blender::gpu::tests::test_immediate_two_planes(), transform_draw_cursor_draw(), ui_draw_but_COLORBAND(), ui_draw_but_CURVE(), ui_draw_but_curve_grid(), ui_draw_but_CURVEPROFILE(), ui_draw_but_HISTOGRAM(), ui_draw_but_HSVCIRCLE(), ui_draw_but_TRACKPREVIEW(), ui_draw_but_VECTORSCOPE(), ui_draw_but_WAVEFORM(), ui_draw_colorband_handle(), ui_draw_colorband_handle_box(), ui_draw_colorband_handle_tri(), ui_draw_gradient(), ui_draw_popover_back_impl(), ui_draw_rounded_corners_inverted(), ui_draw_separator(), ui_hsv_cursor(), UI_view2d_dot_grid_draw(), vectorscope_draw_target(), vertex_draw(), vicon_keytype_draw_wrapper(), blender::ed::object::voxel_size_edit_draw(), blender::ed::object::voxel_size_parallel_lines_draw(), widget_draw_vertex_buffer(), widget_swatch(), wm_gesture_draw_cross(), wm_gesture_draw_lasso(), wm_gesture_draw_line(), wm_gesture_draw_line_active_side(), wm_gesture_draw_polyline(), wm_gizmo_vec_draw(), wm_software_cursor_draw_bitmap(), wm_stereo3d_draw_sidebyside(), wm_stereo3d_draw_topbottom(), wm_xr_controller_aim_draw(), and wm_xr_raycast_draw().

◆ immBeginAtMost()

◆ immBeginBatch()

◆ immBeginBatchAtMost()

blender::gpu::Batch * immBeginBatchAtMost ( GPUPrimType prim_type,
uint vertex_len )

Definition at line 238 of file gpu_immediate.cc.

References BLI_assert, imm, immBeginBatch(), and blender::gpu::Immediate::strict_vertex_len.

Referenced by knifetool_draw().

◆ immBindBuiltinProgram()

void immBindBuiltinProgram ( eGPUBuiltinShader shader_id)

Extend immBindShader to use Blender's library of built-in shader programs. Use immUnbindProgram() when done.

Definition at line 61 of file gpu_immediate.cc.

References blender::gpu::Immediate::builtin_shader_bound, GPU_shader_get_builtin_shader(), imm, and immBindShader().

Referenced by acf_generic_channel_backdrop(), acf_generic_dataexpand_backdrop(), ANIM_channel_draw(), ANIM_channel_draw_widgets(), ANIM_draw_action_framerange(), ANIM_draw_cfra(), ANIM_draw_framerange(), ANIM_draw_previewrange(), annotation_draw_eraser(), annotation_draw_stabilizer(), annotation_draw_stroke_2d(), annotation_draw_stroke_3d(), annotation_draw_stroke_buffer(), annotation_draw_stroke_point(), arrow_draw_geom(), brush_drawcursor(), button2d_draw_intern(), button2d_geom_draw_backdrop(), cage2d_draw_box_corners(), cage2d_draw_box_interaction(), cage2d_draw_circle_wire(), cage2d_draw_rect_corner_handles(), cage2d_draw_rect_edge_handles(), cage2d_draw_rect_wire(), cage3d_draw_box_corners(), cage3d_draw_box_interaction(), cage3d_draw_circle_handles(), cage3d_draw_circle_wire(), channel_list_draw_keys(), clip_draw_dopesheet_channels(), clip_draw_dopesheet_main(), clip_draw_graph(), clip_draw_sfra_efra(), console_textview_draw_cursor(), cursor_box_draw(), blender::ed::curves::curve_draw_stroke_3d(), curve_draw_stroke_3d(), dial_geom_draw(), dial_ghostarc_draw(), dial_ghostarc_draw_helpline(), dial_ghostarc_draw_incremental_angle(), draw_anti_tria(), draw_azone_arrow(), draw_background(), draw_background(), draw_channel_strips(), blender::ed::greasepencil::image_render::draw_circles(), draw_columnheader_background(), draw_columnheader_columns(), blender::ed::greasepencil::draw_control_points(), draw_current_frame(), draw_disk_shaded(), draw_display_buffer(), draw_distortion(), draw_dividers(), blender::ed::greasepencil::image_render::draw_dot(), blender::ed::greasepencil::image_render::draw_dots(), draw_fcurve(), draw_fcurve_handle_vertices(), draw_fcurve_handles(), draw_fcurve_keyframe_vertices(), draw_fcurve_modifier_controls_envelope(), draw_fcurve_samples(), blender::ed::greasepencil::image_render::draw_grease_pencil_stroke(), draw_image_cache(), draw_image_sample_line(), draw_lasso_smooth_stroke_indicator(), blender::ed::greasepencil::image_render::draw_lines(), draw_marker_areas(), draw_marker_line(), draw_markers_background(), draw_movieclip_cache(), draw_movieclip_muted(), draw_nla_main_data(), blender::ed::space_node::draw_nodespace_back_pix(), draw_normalization_borders(), draw_overlap_frame_indicator(), draw_overshoot_triangle(), draw_parallel_lines(), draw_plane_marker_ex(), draw_plane_marker_image(), blender::ed::greasepencil::image_render::draw_polyline(), draw_render_info(), draw_seq_timeline_channels(), draw_single_handle(), draw_spline_points(), blender::ed::spreadsheet::draw_spreadsheet_in_region(), draw_stabilization_border(), draw_start_vertex_circle(), draw_timeline_sfra_efra(), draw_track_path(), draw_tracking_tracks(), draw_view_axis(), drawConstraint(), drawEdgeSlide(), drawFlyPixel(), drawLine(), drawPropCircle(), drawPropRange(), drawrenderborder(), drawSnapping(), drawVertSlide(), drawviewborder(), drawWalkPixel(), DRW_draw_cursor(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_edit_draw(), ED_image_draw_cursor(), ED_image_draw_info(), ED_imbuf_sample_draw(), ED_mask_draw_frames(), ED_region_cache_draw_background(), ED_region_cache_draw_cached_segments(), ED_region_cache_draw_curfra_label(), ED_region_do_draw(), ED_region_draw_mouse_line_cb(), ED_region_grid_draw(), ED_region_image_metadata_draw(), ED_region_info_draw_multiline(), ED_time_scrub_channel_search_draw(), ED_view3d_cursor_snap_draw_util(), EDBM_preselect_edgering_draw(), EDBM_preselect_elem_draw(), file_draw_preview(), gizmo_axis_draw(), gizmo_cage2d_draw_intern(), gizmo_cage3d_draw_intern(), gizmo_primitive_draw_geom(), gizmo_ruler_draw(), GPU_viewport_stereo_composite(), blender::ed::sculpt_paint::image::ops::paint::gradient_draw_line(), graph_draw_driver_debug(), graph_draw_ghost_curves(), graph_main_region_draw(), blender::ed::sculpt_paint::grease_pencil_eraser_draw(), imm_draw_box_checker_2d_ex(), immDrawPixelsTexSetup(), knifetool_draw(), knifetool_draw_angle(), knifetool_draw_angle_snapping(), knifetool_draw_orientation_locking(), knifetool_draw_visible_distances(), mask_draw_curve_type(), blender::ed::sculpt_paint::min_distance_edit::min_distance_edit_draw(), move_geom_draw(), nla_action_draw_keyframes(), nla_actionclip_draw_markers(), nla_draw_strip(), nla_draw_use_dashed_outlines(), blender::ed::space_node::node_composit_backdrop_boxmask(), blender::ed::space_node::node_composit_backdrop_ellipsemask(), blender::ed::space_node::node_draw_hidden(), blender::ed::space_node::node_draw_preview_background(), blender::ed::space_node::node_draw_sockets(), blender::ed::space_node::node_draw_zones_and_frames(), blender::ed::space_node::node_socket_draw(), blender::ed::outliner::outliner_back(), blender::ed::outliner::outliner_draw_hierarchy_lines(), blender::ed::outliner::outliner_draw_highlights(), blender::ed::outliner::outliner_draw_separator(), blender::ed::outliner::outliner_draw_struct_marks(), blender::ed::sculpt_paint::paint_cursor_setup_2D_drawing(), blender::ed::sculpt_paint::paint_cursor_setup_3D_drawing(), blender::ed::sculpt_paint::paint_draw_cursor_overlay(), blender::ed::sculpt_paint::paint_draw_curve_cursor(), blender::ed::sculpt_paint::paint_draw_line_cursor(), blender::ed::sculpt_paint::paint_draw_smooth_cursor(), blender::ed::sculpt_paint::paint_draw_tex_overlay(), panel_draw_aligned_backdrop(), playanim_toscreen_ex(), radial_control_paint_cursor(), radial_control_paint_tex(), region_draw_emboss(), rounded_corners(), seq_draw_image_origin_and_outline(), sequencer_draw_borders_overlay(), sequencer_draw_display_buffer(), sequencer_draw_scopes(), sequencer_retiming_keys_draw(), blender::gpu::tests::test_immediate_one_plane(), blender::gpu::tests::test_immediate_two_planes(), textview_draw_sel(), textview_draw_string(), timeline_draw_cache(), transform_draw_cursor_draw(), ui_draw_but_COLORBAND(), ui_draw_but_CURVE(), ui_draw_but_CURVEPROFILE(), ui_draw_but_HISTOGRAM(), ui_draw_but_HSVCIRCLE(), ui_draw_but_HSVCUBE(), ui_draw_but_TAB_outline(), ui_draw_but_TRACKPREVIEW(), ui_draw_but_UNITVEC(), ui_draw_but_VECTORSCOPE(), ui_draw_but_WAVEFORM(), ui_draw_button_sections_alignment_separator(), ui_draw_colorband_handle(), ui_draw_gradient(), ui_draw_pie_center(), ui_draw_popover_back_impl(), ui_draw_rounded_corners_inverted(), ui_draw_separator(), UI_draw_text_underline(), ui_hsv_cursor(), UI_panel_category_draw_all(), ui_tooltip_region_draw_cb(), UI_view2d_dot_grid_draw(), UI_view2d_multi_grid_draw(), v3d_cursor_plane_draw_grid(), vicon_colorset_draw(), vicon_gplayer_color_draw(), vicon_keytype_draw_wrapper(), blender::ed::object::voxel_size_edit_draw(), wide_line_workaround_end(), wide_line_workaround_start(), widget_draw_extra_mask(), widget_draw_text(), widget_progress_type_ring(), widget_swatch(), wm_gesture_draw_circle(), wm_gesture_draw_cross(), wm_gesture_draw_lasso(), wm_gesture_draw_line(), wm_gesture_draw_line_active_side(), wm_gesture_draw_polyline(), wm_gesture_draw_rect(), wm_software_cursor_draw_bitmap(), wm_software_cursor_draw_crosshair(), wm_stereo3d_draw_sidebyside(), wm_stereo3d_draw_topbottom(), wm_xr_controller_aim_draw(), and wm_xr_raycast_draw().

◆ immBindShader()

◆ immBindTexture()

void immBindTexture ( const char * name,
GPUTexture * tex )

◆ immBindTextureSampler()

void immBindTextureSampler ( const char * name,
GPUTexture * tex,
GPUSamplerState state )

◆ immBindUniformBuf()

void immBindUniformBuf ( const char * name,
GPUUniformBuf * ubo )

◆ immEnd()

void immEnd ( )

Definition at line 245 of file gpu_immediate.cc.

References blender::gpu::Immediate::batch, BLI_assert, blender::gpu::Immediate::end(), GPU_batch_set_shader(), GPU_PRIM_NONE, GPU_vertbuf_data_resize(), imm, blender::gpu::Immediate::prim_type, blender::gpu::Immediate::shader, blender::gpu::Immediate::strict_vertex_len, vertex_count_makes_sense_for_primitive(), blender::gpu::Immediate::vertex_data, blender::gpu::Immediate::vertex_idx, blender::gpu::Immediate::vertex_len, and wide_line_workaround_end().

Referenced by ANIM_channel_draw(), ANIM_draw_action_framerange(), ANIM_draw_cfra(), ANIM_draw_framerange(), annotation_draw_stabilizer(), annotation_draw_stroke_2d(), annotation_draw_stroke_3d(), annotation_draw_stroke_arrow_buffer(), annotation_draw_stroke_buffer(), annotation_draw_stroke_point(), arrow_draw_geom(), button2d_draw_intern(), cage2d_draw_box_corners(), cage2d_draw_box_interaction(), cage2d_draw_circle_wire(), cage2d_draw_rect_wire(), cage3d_draw_circle_wire(), channel_list_draw_keys(), clip_draw_dopesheet_main(), clip_draw_sfra_efra(), cursor_point_draw(), blender::ed::curves::curve_draw_stroke_3d(), curve_draw_stroke_3d(), dial_ghostarc_draw_helpline(), dial_ghostarc_draw_incremental_angle(), draw_anti_tria(), draw_azone_arrow(), blender::ed::sculpt_paint::draw_bezier_handle_lines(), draw_channel_strips(), blender::ed::greasepencil::image_render::draw_circles(), draw_columnheader_columns(), blender::ed::greasepencil::draw_control_points(), draw_cross(), draw_disk_shaded(), draw_display_buffer(), draw_distortion(), draw_dividers(), blender::ed::greasepencil::image_render::draw_dot(), blender::ed::greasepencil::image_render::draw_dots(), draw_fcurve_active_handle_vertices(), draw_fcurve_active_vertex(), draw_fcurve_curve(), draw_fcurve_curve_keys(), draw_fcurve_curve_samples(), draw_fcurve_handles(), draw_fcurve_modifier_controls_envelope(), draw_fcurve_selected_handle_vertices(), draw_fcurve_selected_keyframe_vertices(), draw_frame_curves(), blender::ed::greasepencil::image_render::draw_grease_pencil_stroke(), draw_image_sample_line(), draw_keyframe(), draw_lasso_smooth_stroke_indicator(), blender::ed::greasepencil::image_render::draw_lines(), draw_marker_areas(), draw_marker_line(), draw_marker_outline(), draw_marker_slide_triangle(), draw_marker_slide_zones(), draw_overlap_frame_indicator(), draw_overshoot_triangle(), draw_parallel_lines(), draw_plane_marker_ex(), draw_plane_marker_image(), blender::ed::greasepencil::image_render::draw_polyline(), blender::ed::spreadsheet::draw_separator_lines(), draw_single_handle(), draw_spline_points(), draw_timeline_sfra_efra(), draw_track_path_keyframe_points(), draw_track_path_lines(), draw_track_path_points(), draw_tracking_tracks(), blender::ed::sculpt_paint::draw_tri_point(), draw_view_axis(), drawArrow(), drawConstraint(), drawEdgeSlide(), drawFlyPixel(), drawLine(), drawSnapping(), drawVertSlide(), drawviewborder(), drawviewborder_grid3(), drawviewborder_triangle(), drawWalkPixel(), DRW_draw_cursor(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_edit_draw(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_parallel_lines_draw(), ED_image_draw_cursor(), ED_mask_draw_frames(), ED_node_draw_snap(), ED_region_draw_mouse_line_cb(), ED_region_grid_draw(), ED_view3d_cursor_snap_draw_util(), EDBM_preselect_edgering_draw(), EDBM_preselect_elem_draw(), blender::ed::sculpt_paint::boundary::edges_preview_draw(), gizmo_axis_draw(), gizmo_ruler_draw(), GPU_viewport_stereo_composite(), blender::ed::sculpt_paint::image::ops::paint::gradient_draw_line(), graph_draw_driver_debug(), graph_main_region_draw(), histogram_draw_one(), imm_draw_box_wire_2d(), imm_draw_box_wire_3d(), imm_draw_circle(), imm_draw_circle_3D(), imm_draw_circle_partial(), imm_draw_circle_partial_3d(), imm_draw_cube_corners_3d(), imm_draw_cube_fill_3d(), imm_draw_cube_wire_3d(), imm_draw_cylinder_fill_3d(), imm_draw_cylinder_fill_normal_3d(), imm_draw_cylinder_wire_3d(), imm_draw_disk_partial(), imm_draw_disk_partial_3d(), imm_draw_point_aspect_2d(), imm_drawcircball(), immDrawBorderCorners(), immDrawPixelsTexScaledFullSize(), immDrawPixelsTexTiled_scaling_clipping(), immRectf(), immRecti(), knifetool_draw(), knifetool_draw_angle(), knifetool_draw_angle_snapping(), knifetool_draw_orientation_locking(), mask_draw_array(), blender::ed::sculpt_paint::min_distance_edit::min_distance_edit_draw(), move_geom_draw(), blender::ed::sculpt_paint::multiplane_scrape_preview_draw(), nla_action_draw_keyframes(), nla_actionclip_draw_markers(), nla_draw_strip(), nla_draw_strip_curves(), blender::ed::space_node::node_composit_backdrop_boxmask(), blender::ed::space_node::node_composit_backdrop_ellipsemask(), blender::ed::space_node::node_draw_hidden(), blender::ed::space_node::node_draw_sockets(), blender::ed::space_node::node_draw_zones_and_frames(), blender::ed::space_node::node_socket_draw(), blender::ed::outliner::outliner_back(), blender::ed::outliner::outliner_draw_hierarchy_line(), blender::ed::outliner::outliner_draw_separator(), blender::ed::outliner::outliner_draw_struct_marks(), blender::ed::sculpt_paint::paint_cursor_pose_brush_segments_draw(), blender::ed::sculpt_paint::paint_draw_cursor_overlay(), blender::ed::sculpt_paint::paint_draw_curve_cursor(), blender::ed::sculpt_paint::paint_draw_line_cursor(), blender::ed::sculpt_paint::paint_draw_smooth_cursor(), blender::ed::sculpt_paint::paint_draw_tex_overlay(), blender::ed::sculpt_paint::boundary::pivot_line_preview_draw(), blender::ed::sculpt_paint::cloth::plane_falloff_preview_draw(), playanim_toscreen_ex(), radial_control_paint_cursor(), radial_control_paint_curve(), radial_control_paint_tex(), region_draw_emboss(), rounded_corners(), blender::ed::sculpt_paint::sculpt_geometry_preview_lines_draw(), seq_draw_image_origin_and_outline(), sequencer_draw_display_buffer(), sequencer_draw_scopes(), sequencer_retiming_keys_draw(), blender::gpu::tests::test_immediate_one_plane(), blender::gpu::tests::test_immediate_two_planes(), timeline_cache_draw_cached_segments(), timeline_cache_draw_geometry_nodes(), tracking_segment_end_cb(), transform_draw_cursor_draw(), ui_draw_but_COLORBAND(), ui_draw_but_CURVE(), ui_draw_but_curve_grid(), ui_draw_but_CURVEPROFILE(), ui_draw_but_HISTOGRAM(), ui_draw_but_HSVCIRCLE(), ui_draw_but_TAB_outline(), ui_draw_but_TRACKPREVIEW(), ui_draw_but_VECTORSCOPE(), ui_draw_but_WAVEFORM(), ui_draw_colorband_handle(), ui_draw_colorband_handle_box(), ui_draw_colorband_handle_tri(), ui_draw_gradient(), ui_draw_popover_back_impl(), ui_draw_rounded_corners_inverted(), ui_draw_separator(), ui_hsv_cursor(), UI_view2d_dot_grid_draw(), UI_view2d_multi_grid_draw(), v3d_cursor_plane_draw_grid(), vectorscope_draw_target(), vertex_draw(), vicon_keytype_draw_wrapper(), blender::ed::object::voxel_size_edit_draw(), blender::ed::object::voxel_size_parallel_lines_draw(), widget_draw_vertex_buffer(), widget_swatch(), wm_gesture_draw_cross(), wm_gesture_draw_lasso(), wm_gesture_draw_line(), wm_gesture_draw_line_active_side(), wm_gesture_draw_polyline(), wm_gizmo_vec_draw(), wm_software_cursor_draw_bitmap(), wm_stereo3d_draw_sidebyside(), wm_stereo3d_draw_topbottom(), wm_xr_controller_aim_draw(), and wm_xr_raycast_draw().

◆ immThemeColorShadeAlpha()

void immThemeColorShadeAlpha ( int colorid,
int coloffset,
int alphaoffset )

◆ immUnbindProgram()

void immUnbindProgram ( )

Call after your last immEnd, or before binding another program.

Definition at line 68 of file gpu_immediate.cc.

References BLI_assert, GPU_shader_unbind(), imm, and blender::gpu::Immediate::shader.

Referenced by acf_generic_channel_backdrop(), acf_generic_dataexpand_backdrop(), ANIM_channel_draw(), ANIM_channel_draw_widgets(), ANIM_draw_action_framerange(), ANIM_draw_cfra(), ANIM_draw_framerange(), ANIM_draw_previewrange(), annotation_draw_eraser(), annotation_draw_stabilizer(), annotation_draw_stroke_2d(), annotation_draw_stroke_3d(), annotation_draw_stroke_buffer(), annotation_draw_stroke_point(), arrow_draw_geom(), brush_drawcursor(), button2d_draw_intern(), button2d_geom_draw_backdrop(), cage2d_draw_box_corners(), cage2d_draw_box_interaction(), cage2d_draw_circle_wire(), cage2d_draw_rect_corner_handles(), cage2d_draw_rect_edge_handles(), cage2d_draw_rect_wire(), cage3d_draw_box_corners(), cage3d_draw_box_interaction(), cage3d_draw_circle_handles(), cage3d_draw_circle_wire(), channel_list_draw_keys(), clip_draw_dopesheet_channels(), clip_draw_dopesheet_main(), clip_draw_graph(), clip_draw_sfra_efra(), console_textview_draw_cursor(), cursor_box_draw(), blender::ed::curves::curve_draw_stroke_3d(), curve_draw_stroke_3d(), dial_geom_draw(), dial_ghostarc_draw(), dial_ghostarc_draw_helpline(), dial_ghostarc_draw_incremental_angle(), BlenderDisplayDriver::draw(), draw_anti_tria(), draw_azone_arrow(), draw_background(), draw_background(), draw_channel_strips(), blender::ed::greasepencil::image_render::draw_circles(), draw_columnheader_background(), draw_columnheader_columns(), blender::ed::greasepencil::draw_control_points(), draw_current_frame(), draw_disk_shaded(), draw_display_buffer(), draw_distortion(), draw_dividers(), blender::ed::greasepencil::image_render::draw_dot(), blender::ed::greasepencil::image_render::draw_dots(), draw_fcurve(), draw_fcurve_handle_vertices(), draw_fcurve_handles(), draw_fcurve_keyframe_vertices(), draw_fcurve_modifier_controls_envelope(), draw_fcurve_samples(), blender::ed::greasepencil::image_render::draw_grease_pencil_stroke(), draw_image_cache(), draw_image_sample_line(), draw_lasso_smooth_stroke_indicator(), blender::ed::greasepencil::image_render::draw_lines(), draw_marker_areas(), draw_marker_line(), draw_markers_background(), draw_movieclip_cache(), draw_movieclip_muted(), draw_nla_main_data(), blender::ed::space_node::draw_nodespace_back_pix(), draw_normalization_borders(), draw_overlap_frame_indicator(), draw_overshoot_triangle(), draw_parallel_lines(), draw_plane_marker_ex(), draw_plane_marker_image(), blender::ed::greasepencil::image_render::draw_polyline(), draw_render_info(), draw_seq_timeline_channels(), draw_single_handle(), draw_spline_points(), blender::ed::spreadsheet::draw_spreadsheet_in_region(), draw_stabilization_border(), draw_start_vertex_circle(), draw_timeline_sfra_efra(), draw_track_path(), draw_tracking_tracks(), draw_view_axis(), drawConstraint(), drawEdgeSlide(), drawFlyPixel(), drawLine(), drawPropCircle(), drawPropRange(), drawrenderborder(), drawSnapping(), drawVertSlide(), drawviewborder(), drawWalkPixel(), DRW_draw_cursor(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_edit_draw(), ED_image_draw_cursor(), ED_image_draw_info(), ED_imbuf_sample_draw(), ED_mask_draw_frames(), ED_region_cache_draw_background(), ED_region_cache_draw_cached_segments(), ED_region_cache_draw_curfra_label(), ED_region_do_draw(), ED_region_draw_mouse_line_cb(), ED_region_grid_draw(), ED_region_image_metadata_draw(), ED_region_info_draw_multiline(), ED_time_scrub_channel_search_draw(), ED_view3d_cursor_snap_draw_util(), EDBM_preselect_edgering_draw(), EDBM_preselect_elem_draw(), file_draw_preview(), gizmo_axis_draw(), gizmo_cage2d_draw_intern(), gizmo_cage3d_draw_intern(), gizmo_primitive_draw_geom(), gizmo_ruler_draw(), GPU_viewport_stereo_composite(), blender::ed::sculpt_paint::image::ops::paint::gradient_draw_line(), graph_draw_driver_debug(), graph_draw_ghost_curves(), graph_main_region_draw(), blender::ed::sculpt_paint::grease_pencil_eraser_draw(), imm_draw_box_checker_2d_ex(), immDrawPixelsTexScaledFullSize(), immDrawPixelsTexTiled_scaling_clipping(), knifetool_draw(), knifetool_draw_angle(), knifetool_draw_angle_snapping(), knifetool_draw_orientation_locking(), knifetool_draw_visible_distances(), mask_draw_curve_type(), blender::ed::sculpt_paint::min_distance_edit::min_distance_edit_draw(), move_geom_draw(), nla_action_draw_keyframes(), nla_actionclip_draw_markers(), nla_draw_strip(), blender::ed::space_node::node_composit_backdrop_boxmask(), blender::ed::space_node::node_composit_backdrop_ellipsemask(), blender::ed::space_node::node_draw_hidden(), blender::ed::space_node::node_draw_preview_background(), blender::ed::space_node::node_draw_sockets(), blender::ed::space_node::node_draw_zones_and_frames(), blender::ed::space_node::node_socket_draw(), blender::ed::outliner::outliner_back(), blender::ed::outliner::outliner_draw_hierarchy_lines(), blender::ed::outliner::outliner_draw_highlights(), blender::ed::outliner::outliner_draw_separator(), blender::ed::outliner::outliner_draw_struct_marks(), blender::ed::sculpt_paint::paint_cursor_restore_drawing_state(), blender::ed::sculpt_paint::paint_draw_cursor_overlay(), blender::ed::sculpt_paint::paint_draw_curve_cursor(), blender::ed::sculpt_paint::paint_draw_line_cursor(), blender::ed::sculpt_paint::paint_draw_smooth_cursor(), blender::ed::sculpt_paint::paint_draw_tex_overlay(), panel_draw_aligned_backdrop(), playanim_toscreen_ex(), radial_control_paint_cursor(), radial_control_paint_tex(), region_draw_emboss(), rounded_corners(), seq_draw_image_origin_and_outline(), sequencer_draw_borders_overlay(), sequencer_draw_display_buffer(), sequencer_draw_scopes(), sequencer_retiming_keys_draw(), textview_draw_sel(), textview_draw_string(), timeline_draw_cache(), transform_draw_cursor_draw(), ui_draw_but_COLORBAND(), ui_draw_but_CURVE(), ui_draw_but_CURVEPROFILE(), ui_draw_but_HISTOGRAM(), ui_draw_but_HSVCIRCLE(), ui_draw_but_HSVCUBE(), ui_draw_but_TAB_outline(), ui_draw_but_TRACKPREVIEW(), ui_draw_but_UNITVEC(), ui_draw_but_VECTORSCOPE(), ui_draw_but_WAVEFORM(), ui_draw_button_sections_alignment_separator(), ui_draw_colorband_handle(), ui_draw_gradient(), ui_draw_pie_center(), ui_draw_popover_back_impl(), ui_draw_rounded_corners_inverted(), ui_draw_separator(), UI_draw_text_underline(), ui_hsv_cursor(), UI_panel_category_draw_all(), ui_tooltip_region_draw_cb(), UI_view2d_dot_grid_draw(), UI_view2d_multi_grid_draw(), v3d_cursor_plane_draw_grid(), vicon_colorset_draw(), vicon_gplayer_color_draw(), vicon_keytype_draw_wrapper(), blender::ed::object::voxel_size_edit_draw(), wide_line_workaround_end(), wide_line_workaround_start(), widget_draw_extra_mask(), widget_draw_text(), widget_progress_type_ring(), widget_swatch(), wm_gesture_draw_circle(), wm_gesture_draw_cross(), wm_gesture_draw_lasso(), wm_gesture_draw_line(), wm_gesture_draw_line_active_side(), wm_gesture_draw_polyline(), wm_gesture_draw_rect(), wm_software_cursor_draw_bitmap(), wm_software_cursor_draw_crosshair(), wm_stereo3d_draw_sidebyside(), wm_stereo3d_draw_topbottom(), wm_xr_controller_aim_draw(), and wm_xr_raycast_draw().

◆ immUniform1f()

void immUniform1f ( const char * name,
float x )

Definition at line 555 of file gpu_immediate.cc.

References GPU_shader_uniform_1f(), imm, and blender::gpu::Immediate::shader.

Referenced by annotation_draw_eraser(), annotation_draw_stroke_2d(), annotation_draw_stroke_3d(), annotation_draw_stroke_buffer(), annotation_draw_stroke_point(), arrow_draw_geom(), button2d_draw_intern(), button2d_geom_draw_backdrop(), cage2d_draw_box_corners(), cage2d_draw_box_interaction(), cage2d_draw_circle_wire(), cage2d_draw_rect_wire(), cage3d_draw_box_corners(), cage3d_draw_circle_wire(), channel_list_draw_keys(), clip_draw_dopesheet_main(), dial_geom_draw(), dial_ghostarc_draw_helpline(), dial_ghostarc_draw_incremental_angle(), blender::ed::greasepencil::image_render::draw_circles(), draw_fcurve(), draw_fcurve_handle_vertices(), draw_fcurve_keyframe_vertices(), draw_fcurve_modifier_controls_envelope(), draw_image_sample_line(), draw_marker_areas(), draw_marker_line(), draw_overlap_frame_indicator(), draw_parallel_lines(), draw_plane_marker_ex(), draw_single_handle(), draw_spline_points(), draw_stabilization_border(), drawConstraint(), drawLine(), drawPropCircle(), drawPropRange(), drawrenderborder(), drawVertSlide(), drawviewborder(), ED_image_draw_cursor(), ED_region_draw_mouse_line_cb(), ED_view3d_cursor_snap_draw_util(), EDBM_preselect_edgering_draw(), gizmo_axis_draw(), gizmo_primitive_draw_geom(), gizmo_ruler_draw(), graph_draw_driver_debug(), graph_draw_ghost_curves(), blender::ed::sculpt_paint::grease_pencil_eraser_draw(), icon_draw_rect(), mask_draw_curve_type(), move_geom_draw(), nla_action_draw_keyframes(), nla_actionclip_draw_markers(), nla_draw_use_dashed_outlines(), blender::ed::space_node::node_draw_sockets(), blender::ed::space_node::node_draw_zones_and_frames(), blender::ed::space_node::node_socket_draw(), blender::ed::outliner::outliner_draw_hierarchy_line(), blender::ed::outliner::outliner_draw_hierarchy_lines(), blender::ed::sculpt_paint::paint_draw_line_cursor(), seq_draw_image_origin_and_outline(), sequencer_draw_borders_overlay(), sequencer_retiming_keys_draw(), transform_draw_cursor_draw(), ui_draw_colorband_handle(), ui_hsv_cursor(), UI_view2d_dot_grid_draw(), vicon_keytype_draw_wrapper(), wide_line_workaround_start(), wm_gesture_draw_circle(), wm_gesture_draw_cross(), wm_gesture_draw_lasso(), wm_gesture_draw_line(), wm_gesture_draw_polyline(), wm_gesture_draw_rect(), wm_xr_controller_aim_draw(), and wm_xr_raycast_draw().

◆ immUniform1i()

◆ immUniform2f()

◆ immUniform2fv()

◆ immUniform3f()

void immUniform3f ( const char * name,
float x,
float y,
float z )

Definition at line 570 of file gpu_immediate.cc.

References GPU_shader_uniform_3f(), imm, blender::gpu::Immediate::shader, and z().

◆ immUniform3fv()

void immUniform3fv ( const char * name,
const float data[3] )

Definition at line 575 of file gpu_immediate.cc.

References GPU_shader_uniform_3fv(), imm, and blender::gpu::Immediate::shader.

◆ immUniform4f()

◆ immUniform4fv()

◆ immUniformArray4fv()

void immUniformArray4fv ( const char * bare_name,
const float * data,
int count )

Note array index is not supported for name (i.e: "array[0]").

Definition at line 590 of file gpu_immediate.cc.

References count, GPU_shader_uniform_4fv_array(), imm, and blender::gpu::Immediate::shader.

◆ immUniformColor3f()

◆ immUniformColor3fv()

◆ immUniformColor3fvAlpha()

◆ immUniformColor3ub()

void immUniformColor3ub ( unsigned char r,
unsigned char g,
unsigned char b )

◆ immUniformColor3ubv()

◆ immUniformColor3ubvAlpha()

void immUniformColor3ubvAlpha ( const unsigned char rgb[3],
unsigned char a )

◆ immUniformColor4f()

void immUniformColor4f ( float r,
float g,
float b,
float a )

Definition at line 625 of file gpu_immediate.cc.

References b, BLI_assert, copy_v4_v4(), GPU_shader_get_builtin_uniform(), GPU_shader_uniform_float_ex(), GPU_UNIFORM_COLOR, imm, blender::gpu::Immediate::shader, and blender::gpu::Immediate::uniform_color.

Referenced by annotation_draw_eraser(), annotation_draw_stabilizer(), clip_draw_dopesheet_background(), clip_draw_sfra_efra(), dial_ghostarc_draw(), draw_azone_arrow(), blender::ed::sculpt_paint::draw_bezier_handle_lines(), draw_lasso_smooth_stroke_indicator(), draw_marker_areas(), draw_plane_marker_image(), blender::ed::sculpt_paint::draw_rect_point(), draw_stabilization_border(), draw_start_vertex_circle(), blender::ed::sculpt_paint::draw_tri_point(), drawConstraint(), drawVertSlide(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_edit_draw(), ED_region_do_draw(), gizmo_cage2d_draw_intern(), gizmo_cage3d_draw_intern(), blender::ed::sculpt_paint::grease_pencil_brush_cursor_draw(), blender::ed::sculpt_paint::grease_pencil_eraser_draw(), histogram_draw_one(), immUniformColor3f(), immUniformColor3fv(), immUniformColor3fvAlpha(), immUniformColor3ub(), immUniformColor4fv(), immUniformColor4ub(), nla_draw_strip_curves(), blender::ed::sculpt_paint::paint_cursor_pose_brush_origins_draw(), blender::ed::sculpt_paint::paint_cursor_pose_brush_segments_draw(), blender::ed::sculpt_paint::paint_cursor_preview_boundary_data_pivot_draw(), blender::ed::sculpt_paint::paint_draw_curve_cursor(), blender::ed::sculpt_paint::boundary::pivot_line_preview_draw(), radial_control_paint_curve(), blender::ed::sculpt_paint::sculpt_geometry_preview_lines_draw(), ui_draw_but_HISTOGRAM(), ui_draw_but_VECTORSCOPE(), ui_draw_but_WAVEFORM(), vectorscope_draw_target(), blender::ed::object::voxel_size_edit_draw(), wm_gesture_draw_circle(), wm_gesture_draw_rect(), and wm_software_cursor_draw_crosshair().

◆ immUniformColor4fv()

void immUniformColor4fv ( const float rgba[4])

Definition at line 635 of file gpu_immediate.cc.

References immUniformColor4f().

Referenced by arrow_draw_geom(), button2d_draw_intern(), button2d_geom_draw_backdrop(), clip_draw_dopesheet_main(), dial_geom_draw(), dial_ghostarc_draw(), dial_ghostarc_draw_helpline(), draw_anti_tria(), blender::ed::sculpt_paint::draw_bezier_handle_lines(), draw_distortion(), draw_nla_main_data(), blender::ed::sculpt_paint::draw_rect_point(), blender::ed::sculpt_paint::draw_tri_point(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_edit_draw(), ED_region_do_draw(), ED_region_info_draw_multiline(), file_draw_preview(), gizmo_primitive_draw_geom(), gizmo_ruler_draw(), histogram_draw_one(), immDrawPixelsTexScaledFullSize(), immDrawPixelsTexTiled_scaling_clipping(), immUniformThemeColor(), immUniformThemeColorAlpha(), immUniformThemeColorBlendShade(), immUniformThemeColorShade(), immUniformThemeColorShadeAlpha(), knifetool_draw_angle(), knifetool_draw_visible_distances(), move_geom_draw(), nla_action_draw_keyframes(), blender::ed::outliner::outliner_draw_highlights(), blender::ed::sculpt_paint::paint_draw_cursor_overlay(), blender::ed::sculpt_paint::paint_draw_tex_overlay(), region_draw_emboss(), rounded_corners(), set_fcurve_vertex_color(), blender::gpu::tests::test_immediate_one_plane(), blender::gpu::tests::test_immediate_two_planes(), tracking_segment_start_cb(), ui_draw_but_CURVE(), ui_draw_button_sections_alignment_separator(), ui_draw_rounded_corners_inverted(), UI_draw_text_underline(), UI_panel_category_draw_all(), ui_tooltip_region_draw_cb(), wide_line_workaround_start(), wm_gizmo_vec_draw(), and wm_xr_raycast_draw().

◆ immUniformColor4ub()

◆ immUniformColor4ubv()

◆ immUniformMatrix4fv()

void immUniformMatrix4fv ( const char * name,
const float data[4][4] )

Definition at line 595 of file gpu_immediate.cc.

References GPU_shader_uniform_mat4(), imm, and blender::gpu::Immediate::shader.

Referenced by dial_geom_draw().

◆ immUniformThemeColor()

◆ immUniformThemeColor3()

◆ immUniformThemeColorAlpha()

void immUniformThemeColorAlpha ( int color_id,
float a )

◆ immUniformThemeColorBlend()

◆ immUniformThemeColorBlendShade()

void immUniformThemeColorBlendShade ( int color_id1,
int color_id2,
float fac,
int offset )

Definition at line 720 of file gpu_immediate.cc.

References immUniformColor4fv(), and UI_GetThemeColorBlendShade4fv().

Referenced by ED_region_grid_draw().

◆ immUniformThemeColorShade()

◆ immUniformThemeColorShadeAlpha()

◆ immVertex2f()

void immVertex2f ( uint attr_id,
float x,
float y )

Definition at line 505 of file gpu_immediate.cc.

References attr_id, immAttr2f(), and immEndVertex().

Referenced by ANIM_channel_draw(), ANIM_draw_action_framerange(), ANIM_draw_cfra(), ANIM_draw_framerange(), annotation_draw_stabilizer(), annotation_draw_stroke_arrow_buffer(), cage3d_draw_circle_wire(), clip_draw_sfra_efra(), draw_anti_tria(), draw_azone_arrow(), draw_channel_strips(), draw_columnheader_columns(), draw_cross(), draw_disk_shaded(), draw_display_buffer(), draw_distortion(), draw_fcurve_curve(), draw_fcurve_modifier_controls_envelope(), draw_frame_curves(), draw_keyframe_shape(), draw_keyframe_shape(), draw_lasso_smooth_stroke_indicator(), draw_marker_areas(), draw_marker_line(), draw_marker_outline(), draw_marker_slide_triangle(), draw_marker_slide_zones(), draw_overlap_frame_indicator(), draw_overshoot_triangle(), draw_parallel_lines(), draw_spline_points(), draw_timeline_sfra_efra(), draw_tracking_tracks(), draw_view_axis(), drawArrow(), drawFlyPixel(), drawviewborder(), drawviewborder_grid3(), drawviewborder_triangle(), ED_image_draw_cursor(), ED_node_draw_snap(), ED_region_grid_draw(), gizmo_ruler_draw(), GPU_viewport_stereo_composite(), graph_draw_driver_debug(), graph_main_region_draw(), histogram_draw_one(), imm_draw_box_wire_2d(), imm_draw_circle(), imm_draw_circle_partial(), imm_draw_disk_partial(), imm_draw_point_aspect_2d(), immDrawBorderCorners(), immDrawPixelsTexScaledFullSize(), immDrawPixelsTexTiled_scaling_clipping(), immRectf(), immRectf_fast(), immRectf_fast_with_color(), nla_actionclip_draw_markers(), nla_draw_strip(), nla_draw_strip_curves(), blender::ed::space_node::node_composit_backdrop_boxmask(), blender::ed::space_node::node_composit_backdrop_ellipsemask(), blender::ed::space_node::node_draw_hidden(), blender::ed::space_node::node_socket_draw(), blender::ed::outliner::outliner_back(), blender::ed::outliner::outliner_draw_hierarchy_line(), blender::ed::outliner::outliner_draw_separator(), blender::ed::outliner::outliner_draw_struct_marks(), blender::ed::sculpt_paint::paint_draw_cursor_overlay(), blender::ed::sculpt_paint::paint_draw_line_cursor(), blender::ed::sculpt_paint::paint_draw_smooth_cursor(), blender::ed::sculpt_paint::paint_draw_tex_overlay(), playanim_toscreen_ex(), radial_control_paint_cursor(), radial_control_paint_curve(), radial_control_paint_tex(), region_draw_emboss(), rounded_corners(), seq_draw_image_origin_and_outline(), sequencer_draw_display_buffer(), sequencer_draw_scopes(), tracking_segment_point_cb(), transform_draw_cursor_draw(), ui_draw_but_COLORBAND(), ui_draw_but_CURVE(), ui_draw_but_curve_grid(), ui_draw_but_CURVEPROFILE(), ui_draw_but_HISTOGRAM(), ui_draw_but_HSVCIRCLE(), ui_draw_but_TAB_outline(), ui_draw_but_TRACKPREVIEW(), ui_draw_but_VECTORSCOPE(), ui_draw_but_WAVEFORM(), ui_draw_colorband_handle(), ui_draw_colorband_handle_box(), ui_draw_colorband_handle_tri(), ui_draw_gradient(), ui_draw_popover_back_impl(), ui_draw_rounded_corners_inverted(), ui_draw_separator(), ui_hsv_cursor(), UI_view2d_dot_grid_draw(), UI_view2d_multi_grid_draw(), vectorscope_draw_target(), vertex_draw(), widget_swatch(), wm_gesture_draw_cross(), wm_gesture_draw_lasso(), wm_gesture_draw_line(), wm_gesture_draw_line_active_side(), wm_gesture_draw_polyline(), wm_stereo3d_draw_sidebyside(), and wm_stereo3d_draw_topbottom().

◆ immVertex2fv()

◆ immVertex2i()

◆ immVertex2iv()

void immVertex2iv ( uint attr_id,
const int data[2] )

Definition at line 547 of file gpu_immediate.cc.

References attr_id, immAttr2i(), and immEndVertex().

Referenced by draw_dividers().

◆ immVertex2s()

void immVertex2s ( uint attr_id,
short x,
short y )

Definition at line 529 of file gpu_immediate.cc.

References attr_id, immAttr2s(), and immEndVertex().

◆ immVertex3f()

◆ immVertex3fv()

void immVertex3fv ( uint attr_id,
const float data[3] )

Definition at line 541 of file gpu_immediate.cc.

References attr_id, immAttr3f(), and immEndVertex().

Referenced by annotation_draw_stroke_3d(), annotation_draw_stroke_point(), button2d_draw_intern(), blender::ed::curves::curve_draw_stroke_3d(), curve_draw_stroke_3d(), dial_ghostarc_draw_helpline(), dial_ghostarc_draw_incremental_angle(), blender::ed::greasepencil::image_render::draw_circles(), blender::ed::greasepencil::draw_control_points(), blender::ed::greasepencil::image_render::draw_dot(), blender::ed::greasepencil::image_render::draw_dots(), blender::ed::greasepencil::image_render::draw_grease_pencil_stroke(), blender::ed::greasepencil::image_render::draw_lines(), blender::ed::greasepencil::image_render::draw_polyline(), drawConstraint(), drawEdgeSlide(), drawLine(), drawSnapping(), drawVertSlide(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_edit_draw(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_parallel_lines_draw(), ED_view3d_cursor_snap_draw_util(), EDBM_preselect_edgering_draw(), EDBM_preselect_elem_draw(), blender::ed::sculpt_paint::boundary::edges_preview_draw(), gizmo_axis_draw(), gizmo_ruler_draw(), imm_draw_cube_corners_3d(), imm_draw_cube_fill_3d(), imm_draw_cube_wire_3d(), imm_draw_cylinder_fill_3d(), imm_draw_cylinder_fill_normal_3d(), imm_draw_cylinder_wire_3d(), imm_drawcircball(), knifetool_draw(), knifetool_draw_angle(), knifetool_draw_angle_snapping(), knifetool_draw_orientation_locking(), blender::ed::sculpt_paint::min_distance_edit::min_distance_edit_draw(), blender::ed::space_node::node_draw_zones_and_frames(), blender::ed::sculpt_paint::paint_cursor_pose_brush_segments_draw(), blender::ed::sculpt_paint::boundary::pivot_line_preview_draw(), blender::ed::sculpt_paint::sculpt_geometry_preview_lines_draw(), v3d_cursor_plane_draw_grid(), blender::ed::object::voxel_size_edit_draw(), blender::ed::object::voxel_size_parallel_lines_draw(), wm_gizmo_vec_draw(), wm_xr_controller_aim_draw(), and wm_xr_raycast_draw().

◆ immVertex4f()

void immVertex4f ( uint attr_id,
float x,
float y,
float z,
float w )

Definition at line 517 of file gpu_immediate.cc.

References attr_id, immAttr4f(), immEndVertex(), w(), and z().

◆ immVertexFormat()

GPUVertFormat * immVertexFormat ( )

Returns a cleared vertex format, ready for #add_attr.

Definition at line 38 of file gpu_immediate.cc.

References GPU_vertformat_clear(), imm, and blender::gpu::Immediate::vertex_format.

Referenced by acf_generic_channel_backdrop(), acf_generic_dataexpand_backdrop(), ANIM_channel_draw(), ANIM_draw_action_framerange(), ANIM_draw_cfra(), ANIM_draw_framerange(), ANIM_draw_previewrange(), annotation_draw_eraser(), annotation_draw_stabilizer(), annotation_draw_stroke_2d(), annotation_draw_stroke_3d(), annotation_draw_stroke_buffer(), annotation_draw_stroke_point(), arrow_draw_geom(), brush_drawcursor(), button2d_draw_intern(), button2d_geom_draw_backdrop(), cage2d_draw_box_corners(), cage2d_draw_box_interaction(), cage2d_draw_circle_wire(), cage2d_draw_rect_corner_handles(), cage2d_draw_rect_edge_handles(), cage2d_draw_rect_wire(), cage3d_draw_box_corners(), cage3d_draw_box_interaction(), cage3d_draw_circle_handles(), cage3d_draw_circle_wire(), channel_list_draw_keys(), clip_draw_dopesheet_channels(), clip_draw_dopesheet_main(), clip_draw_graph(), clip_draw_sfra_efra(), console_textview_draw_cursor(), cursor_box_draw(), blender::ed::curves::curve_draw_stroke_3d(), curve_draw_stroke_3d(), dial_geom_draw(), dial_ghostarc_draw(), dial_ghostarc_draw_helpline(), dial_ghostarc_draw_incremental_angle(), BlenderDisplayDriver::draw(), draw_anti_tria(), draw_azone_arrow(), draw_background(), draw_background(), draw_channel_strips(), blender::ed::greasepencil::image_render::draw_circles(), draw_columnheader_background(), draw_columnheader_columns(), blender::ed::greasepencil::draw_control_points(), draw_current_frame(), draw_disk_shaded(), draw_display_buffer(), draw_distortion(), draw_dividers(), blender::ed::greasepencil::image_render::draw_dot(), blender::ed::greasepencil::image_render::draw_dots(), draw_fcurve(), draw_fcurve_handles(), draw_fcurve_modifier_controls_envelope(), draw_fcurve_samples(), draw_fcurve_vertices(), blender::ed::greasepencil::image_render::draw_grease_pencil_stroke(), draw_image_cache(), draw_image_sample_line(), draw_line_bounds(), draw_line_loop(), draw_line_pairs(), blender::ed::greasepencil::image_render::draw_lines(), draw_marker_areas(), draw_marker_line(), draw_markers_background(), draw_movieclip_cache(), draw_movieclip_muted(), draw_nla_main_data(), blender::ed::space_node::draw_nodespace_back_pix(), draw_normalization_borders(), draw_overlap_frame_indicator(), draw_overshoot_triangle(), draw_parallel_lines(), draw_plane_marker_ex(), draw_plane_marker_image(), blender::ed::greasepencil::image_render::draw_polyline(), draw_render_info(), draw_seq_timeline_channels(), draw_single_handle(), draw_spline_points(), blender::ed::spreadsheet::draw_spreadsheet_in_region(), draw_stabilization_border(), draw_timeline_sfra_efra(), draw_track_path(), draw_tracking_tracks(), draw_view_axis(), drawConstraint(), drawEdgeSlide(), drawFlyPixel(), drawLine(), drawPropCircle(), drawPropRange(), drawrenderborder(), drawSnapping(), drawVertSlide(), drawviewborder(), drawWalkPixel(), DRW_draw_cursor(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_edit_draw(), ED_image_draw_cursor(), ED_image_draw_info(), ED_imbuf_sample_draw(), ED_mask_draw_frames(), ED_region_cache_draw_background(), ED_region_cache_draw_cached_segments(), ED_region_cache_draw_curfra_label(), ED_region_do_draw(), ED_region_draw_mouse_line_cb(), ED_region_grid_draw(), ED_region_image_metadata_draw(), ED_region_info_draw_multiline(), ED_time_scrub_channel_search_draw(), ED_view3d_cursor_snap_draw_util(), EDBM_preselect_edgering_draw(), EDBM_preselect_elem_draw(), file_draw_preview(), gizmo_axis_draw(), gizmo_cage2d_draw_intern(), gizmo_cage3d_draw_intern(), gizmo_primitive_draw_geom(), gizmo_ruler_draw(), gpu_viewport_draw_colormanaged(), GPU_viewport_stereo_composite(), blender::ed::sculpt_paint::image::ops::paint::gradient_draw_line(), graph_draw_driver_debug(), graph_draw_ghost_curves(), graph_main_region_draw(), imm_draw_box_checker_2d_ex(), immDrawPixelsTexSetupAttributes(), knifetool_draw(), knifetool_draw_angle(), knifetool_draw_angle_snapping(), knifetool_draw_orientation_locking(), knifetool_draw_visible_distances(), mask_draw_curve_type(), blender::ed::sculpt_paint::min_distance_edit::min_distance_edit_draw(), move_geom_draw(), nla_action_draw_keyframes(), nla_actionclip_draw_markers(), nla_draw_strip(), nla_draw_use_dashed_outlines(), blender::ed::space_node::node_composit_backdrop_boxmask(), blender::ed::space_node::node_composit_backdrop_ellipsemask(), blender::ed::space_node::node_draw_hidden(), blender::ed::space_node::node_draw_preview_background(), blender::ed::space_node::node_draw_sockets(), blender::ed::space_node::node_draw_zones_and_frames(), blender::ed::space_node::node_socket_draw(), blender::ed::outliner::outliner_back(), blender::ed::outliner::outliner_draw_hierarchy_lines(), blender::ed::outliner::outliner_draw_highlights(), blender::ed::outliner::outliner_draw_separator(), blender::ed::outliner::outliner_draw_struct_marks(), blender::ed::sculpt_paint::paint_cursor_setup_2D_drawing(), blender::ed::sculpt_paint::paint_cursor_setup_3D_drawing(), blender::ed::sculpt_paint::paint_draw_cursor_overlay(), blender::ed::sculpt_paint::paint_draw_curve_cursor(), blender::ed::sculpt_paint::paint_draw_line_cursor(), blender::ed::sculpt_paint::paint_draw_smooth_cursor(), blender::ed::sculpt_paint::paint_draw_tex_overlay(), playanim_toscreen_ex(), radial_control_paint_cursor(), radial_control_paint_tex(), region_draw_emboss(), rounded_corners(), seq_draw_image_origin_and_outline(), sequencer_draw_borders_overlay(), sequencer_draw_display_buffer(), sequencer_draw_scopes(), sequencer_retiming_keys_draw(), blender::gpu::tests::test_immediate_one_plane(), blender::gpu::tests::test_immediate_two_planes(), textview_draw_sel(), textview_draw_string(), timeline_draw_cache(), transform_draw_cursor_draw(), ui_draw_but_COLORBAND(), ui_draw_but_CURVE(), ui_draw_but_CURVEPROFILE(), ui_draw_but_HISTOGRAM(), ui_draw_but_HSVCIRCLE(), ui_draw_but_HSVCUBE(), ui_draw_but_TAB_outline(), ui_draw_but_TRACKPREVIEW(), ui_draw_but_UNITVEC(), ui_draw_but_VECTORSCOPE(), ui_draw_but_WAVEFORM(), ui_draw_button_sections_alignment_separator(), ui_draw_gradient(), ui_draw_pie_center(), ui_draw_popover_back_impl(), ui_draw_rounded_corners_inverted(), ui_draw_separator(), UI_draw_text_underline(), ui_hsv_cursor(), UI_panel_category_draw_all(), ui_tooltip_region_draw_cb(), UI_view2d_dot_grid_draw(), UI_view2d_multi_grid_draw(), v3d_cursor_plane_draw_grid(), vicon_colorset_draw(), vicon_gplayer_color_draw(), vicon_keytype_draw_wrapper(), blender::ed::object::voxel_size_edit_draw(), widget_draw_extra_mask(), widget_draw_text(), widget_progress_type_ring(), widget_swatch(), wm_gesture_draw_circle(), wm_gesture_draw_cross(), wm_gesture_draw_lasso(), wm_gesture_draw_line(), wm_gesture_draw_line_active_side(), wm_gesture_draw_polyline(), wm_gesture_draw_rect(), wm_software_cursor_draw_bitmap(), wm_software_cursor_draw_crosshair(), wm_stereo3d_draw_sidebyside(), wm_stereo3d_draw_topbottom(), wm_xr_controller_aim_draw(), and wm_xr_raycast_draw().