37 for (
int i = 0; i < 2; i++) {
92 float final_mat[4][4], box[4][2];
111 if (sb->
rot == 0.0f) {
126 mul_m4_m4m4(final_mat, ob->object_to_world().ptr(), final_mat);
141 mul_m4_m4m4(mat, ob->object_to_world().ptr(), mat);
152 for (
int i = 0; i < cu->
totbox; i++) {
154 const bool is_active = (i == (cu->
actbox - 1));
157 if ((tb->
w != 0.0f) || (tb->
h != 0.0f)) {
159 vecs[0][0] = vecs[1][0] = vecs[2][0] = vecs[3][0] = cu->
xof + tb->
x;
160 vecs[0][1] = vecs[1][1] = vecs[2][1] = vecs[3][1] = cu->
yof + tb->
y + cu->
fsize_realtime;
161 vecs[0][2] = vecs[1][2] = vecs[2][2] = vecs[3][2] = 0.001;
168 for (
int j = 0; j < 4; j++) {
169 mul_v3_m4v3(vecs[j], ob->object_to_world().ptr(), vecs[j]);
171 for (
int j = 0; j < 4; j++) {
181 blender::gpu::Batch *geom;
MINLINE void srgb_to_linearrgb_v4(float linear[4], const float srgb[4])
void mul_m4_m4m4(float R[4][4], const float A[4][4], const float B[4][4])
void unit_m4(float m[4][4])
void mul_v3_m4v3(float r[3], const float mat[4][4], const float vec[3])
void angle_to_mat2(float R[2][2], float angle)
MINLINE void copy_v2_fl2(float v[2], float x, float y)
MINLINE void mul_v2_fl(float r[2], float f)
MINLINE void copy_v2_v2(float r[2], const float a[2])
MINLINE void add_v2_v2(float r[2], const float a[2])
MINLINE void sub_v2_v2v2(float r[2], const float a[2], const float b[2])
MINLINE void mul_v2_v2fl(float r[2], const float a[2], float f)
#define DRW_PASS_INSTANCE_CREATE(pass, original, state)
#define DRW_PASS_CREATE(pass, state)
#define DRW_shgroup_call_obmat(shgroup, geom, obmat)
#define DRW_shgroup_call(shgroup, geom, ob)
void GPU_framebuffer_bind(GPUFrameBuffer *framebuffer)
Group Output data from inside of a node group A color picker Mix two input colors RGB to Convert a color s luminance to a grayscale value Generate a normal vector and a dot product Brightness Control the brightness and contrast of the input color Vector Map input vector components with curves Camera Retrieve information about the camera and how it relates to the current shading point s position Clamp a value between a minimum and a maximum Vector Perform vector math operation Invert Invert a color
@ TH_WIDGET_TEXT_HIGHLIGHT
@ TH_WIDGET_TEXT_SELECTION
void UI_GetThemeColor4fv(int colorid, float col[4])
struct GPUShader GPUShader
blender::gpu::Batch * DRW_cache_text_edge_wire_get(Object *ob)
blender::gpu::Batch * DRW_cache_quad_get()
DRWView * DRW_view_create_with_zoffset(const DRWView *parent_view, const RegionView3D *rv3d, float offset)
const DRWContextState * DRW_context_state_get()
const DRWView * DRW_view_default_get()
DRWShadingGroup * DRW_shgroup_create(GPUShader *shader, DRWPass *pass)
void DRW_shgroup_uniform_vec4(DRWShadingGroup *shgroup, const char *name, const float *value, int arraysize)
void DRW_shgroup_uniform_vec4_copy(DRWShadingGroup *shgroup, const char *name, const float *value)
void DRW_draw_pass(DRWPass *pass)
void DRW_view_set_active(const DRWView *view)
@ DRW_STATE_DEPTH_GREATER_EQUAL
@ DRW_STATE_DEPTH_LESS_EQUAL
draw_view in_light_buf[] float
static void edit_text_cache_populate_boxes(OVERLAY_Data *vedata, Object *ob)
static void edit_text_cache_populate_select(OVERLAY_Data *vedata, Object *ob)
static void edit_text_cache_populate_cursor(OVERLAY_Data *vedata, Object *ob)
void OVERLAY_edit_text_cache_init(OVERLAY_Data *vedata)
void OVERLAY_edit_text_cache_populate(OVERLAY_Data *vedata, Object *ob)
static void v2_quad_corners_to_mat4(const float corners[4][2], float r_mat[4][4])
void OVERLAY_edit_text_draw(OVERLAY_Data *vedata)
GPUShader * OVERLAY_shader_uniform_color()
struct EditFont * editfont
EditFontSelBox * selboxes
OVERLAY_StorageList * stl
OVERLAY_FramebufferList * fbl
GPUFrameBuffer * overlay_default_fb
DRWPass * edit_text_highlight_ps
DRWPass * edit_text_selection_ps
DRWPass * edit_text_cursor_ps
DRWPass * edit_text_wire_ps[2]
OVERLAY_ShadingData shdata
DRWShadingGroup * edit_text_cursor_grp
DRWShadingGroup * edit_text_wire_grp[2]
DRWShadingGroup * edit_text_selection_grp
struct OVERLAY_PrivateData::@216210106171324025244131023234223216173313152160 edit_text
struct OVERLAY_PrivateData::@017025346316061011333067144345352107066311354153 edit_curve
float edit_curve_normal_length