88 for (
int i = 0; i < 2; i++) {
102 DRWPass *extra_ps = *p_extra_ps;
104 #define BUF_INSTANCE DRW_shgroup_call_buffer_instance
105 #define BUF_POINT(grp, format) DRW_shgroup_call_buffer(grp, format, GPU_PRIM_POINTS)
106 #define BUF_LINE(grp, format) DRW_shgroup_call_buffer(grp, format, GPU_PRIM_LINES)
241 const float start[3],
243 const float color[4])
250 const float start[3],
267 const float mat[4][4],
268 const float color[4])
270 float draw_mat[4][4];
277 const float mat[4][4],
278 const float color[4])
280 float draw_mat[4][4];
291 const float mat[4][4],
292 const float draw_size,
293 const char draw_type,
294 const float color[4])
296 float instdata[4][4];
363 float center[3],
size[3], tmp[4][4], final_mat[4][4];
373 const float min[3] = {-1.0f, -1.0f, -1.0f},
max[3] = {1.0f, 1.0f, 1.0f};
417 tmp[3][2] -=
size[2];
468 float *texcoloc =
NULL;
469 float *texcosize =
NULL;
471 switch (
GS(ob_data->
name)) {
479 texcosize = cu->
size;
485 texcosize = mb->
size;
500 if (texcoloc !=
NULL && texcosize !=
NULL) {
523 float _pad00[3], size_x;
524 float _pad01[3], size_y;
525 float _pad02[3], size_z;
526 float pos[3], _pad03[1];
531 instdata.size_x = instdata.size_y = instdata.size_z = ob->empty_drawsize;
533 switch (pd->forcefield) {
538 instdata.size_z = pd->f_strength;
542 instdata.size_y = (pd->f_strength < 0.0f) ? -instdata.size_y : instdata.size_y;
546 if (cu && (cu->flag &
CU_PATH) && ob->runtime.curve_cache->anim_path_accum_length) {
547 instdata.size_x = instdata.size_y = instdata.size_z = pd->f_strength;
548 float pos[4], tmp[3];
566 instdata.size_z = (pd->flag &
PFIELD_USEMAX) ? pd->maxdist : 0.0f;
567 instdata.size_x = (pd->flag &
PFIELD_USEMAXR) ? pd->maxrad : 1.0f;
568 instdata.size_y = instdata.size_x;
572 instdata.size_z = (pd->flag &
PFIELD_USEMIN) ? pd->mindist : 0.0f;
573 instdata.size_x = (pd->flag &
PFIELD_USEMINR) ? pd->minrad : 1.0f;
574 instdata.size_y = instdata.size_x;
584 instdata.size_y = instdata.size_x;
592 instdata.size_y = instdata.size_x;
598 instdata.size_x = instdata.size_y = instdata.size_z = pd->maxdist;
602 instdata.size_x = instdata.size_y = instdata.size_z = pd->mindist;
624 float color[4] = {
UNPACK3(color_p), 1.0f};
639 float _pad02[3], clip_sta;
640 float pos[3], clip_end;
650 instdata.clip_sta = la->
clipsta;
655 instdata.area_size_x = instdata.area_size_y = la->
area_size;
664 rescale_m4(instdata.mat, (
float[3]){10.0f, 10.0f, 10.0f});
673 float c =
a * b -
a - b;
675 instdata.spot_blend =
sqrtf((-
a -
c *
a) / (
c -
c *
a));
676 instdata.spot_cosine =
a;
682 const float color_inside[4] = {0.0f, 0.0f, 0.0f, 0.5f};
683 const float color_outside[4] = {1.0f, 1.0f, 1.0f, 0.3f};
721 float _pad02[3], clip_sta;
722 float pos[3], clip_end;
730 instdata.clip_sta = show_clipping ? prb->
clipsta : -1.0;
731 instdata.clip_end = show_clipping ? prb->
clipend : -1.0;
735 if (show_influence) {
750 instdata.clip_sta = show_clipping ? prb->
clipsta : -1.0;
751 instdata.clip_end = show_clipping ? prb->
clipend : -1.0;
754 if (show_influence) {
767 instdata.mat[3][3] = 0.0;
770 instdata.mat[3][3] = 1.0;
773 instdata.mat[3][3] = 2.0;
789 if (show_influence) {
869 const float color[4])
886 float bundle_color_custom[3];
889 uchar text_color_selected[4], text_color_unselected[4];
894 float camera_mat[4][4];
898 float tracking_object_mat[4][4];
907 float object_mat[4][4];
909 tracking, tracking_object, framenr, object_mat);
911 float object_imat[4][4];
924 float bundle_mat[4][4];
926 translate_m4(bundle_mat, track->bundle_pos[0], track->bundle_pos[1], track->bundle_pos[2]);
928 const float *bundle_color;
933 bundle_color = bundle_color_custom;
935 else if (is_solid_bundle) {
936 bundle_color = bundle_color_solid;
938 else if (is_selected) {
939 bundle_color = color;
942 bundle_color = bundle_color_unselected;
950 if (is_solid_bundle) {
955 const float bundle_color_v4[4] = {
979 is_selected ? text_color_selected : text_color_unselected);
1015 const float delta_shiftx = shiftx - cam->
shiftx;
1017 return delta_shiftx *
width;
1041 if (!is_stereo3d_cameras) {
1046 for (
int eye = 0; eye < 2; eye++) {
1056 if (is_stereo3d_cameras) {
1063 if (is_stereo3d_volume && !is_select) {
1064 float r = (eye == 1) ? 2.0f : 1.0f;
1082 if (is_stereo3d_plane && !is_select) {
1090 for (
int i = 0; i < 2; i++) {
1103 for (
int i = 0; i < 2; i++) {
1140 const bool is_active = (ob == camera_object);
1145 const bool is_stereo3d_display_extra = is_active && is_multiview && (!look_through) &&
1147 const bool is_selection_camera_stereo = is_select && look_through && is_multiview &&
1150 float vec[4][3], asp[2], shift[2], scale[3], drawsize,
center[2],
corner[2];
1159 if (is_selection_camera_stereo) {
1165 if (
ELEM(0.0f, scale[0], scale[1], scale[2])) {
1172 scene, cam, cam->
drawsize, look_through, scale, asp, shift, &drawsize, vec);
1176 for (
int i = 0; i < 4; i++) {
1189 instdata.
depth = vec[0][2];
1200 for (
int i = 0; i < 4; i++) {
1211 if (is_stereo3d_display_extra) {
1219 if (!look_through) {
1221 float tria_size = 0.7f * drawsize /
fabsf(instdata.
depth);
1222 float tria_margin = 0.1f * drawsize /
fabsf(instdata.
depth);
1245 instdata.
focus = 1.0f;
1325 for (curcon = list->
first; curcon; curcon = curcon->
next) {
1354 for (ct = targets.
first; ct; ct = ct->
next) {
1410 float voxel_cubemat[4][4] = {{0.0f}};
1412 voxel_cubemat[0][0] = fds->
cell_size[0] / 2.0f;
1413 voxel_cubemat[1][1] = fds->
cell_size[1] / 2.0f;
1414 voxel_cubemat[2][2] = fds->
cell_size[2] / 2.0f;
1415 voxel_cubemat[3][3] = 1.0f;
1425 int slice_axis = -1;
1428 float viewinv[4][4];
1436 if (draw_velocity) {
1450 line_count *= fds->
res[0] * fds->
res[1] * fds->
res[2];
1453 line_count /= fds->
res[slice_axis];
1481 if (show_gridlines) {
1491 if (color_with_flags || color_range) {
1505 const int line_count = 4 * fds->
res[0] * fds->
res[1] * fds->
res[2] / fds->
res[slice_axis];
1509 if (draw_velocity || show_gridlines) {
1541 if (ob ==
OBACT(view_layer)) {
1581 const bool is_paint_mode = (draw_ctx->
object_mode &
1585 const bool has_texspace = has_bounds &&
1589 const bool draw_obcenters = !is_paint_mode &&
1591 const bool draw_texspace = (ob->
dtx &
OB_TEXSPACE) && has_texspace;
1593 const bool draw_bounds = has_bounds && ((ob->
dt ==
OB_BOUNDBOX) ||
1599 const bool draw_volume = !from_dupli &&
1618 const float color_xform[4] = {0.15f, 0.15f, 0.15f, 0.7f};
1623 if (draw_obcenters) {
1626 if (draw_relations) {
1632 if (draw_texspace) {
bool BKE_where_on_path(const struct Object *ob, float ctime, float r_vec[4], float r_dir[3], float r_quat[4], float *r_radius, float *r_weight)
Camera data-block and utility functions.
void BKE_camera_view_frame_ex(const struct Scene *scene, const struct Camera *camera, const float drawsize, const bool do_clip, const float scale[3], float r_asp[2], float r_shift[2], float *r_drawsize, float r_vec[4][3])
float BKE_camera_multiview_shift_x(const struct RenderData *rd, const struct Object *camera, const char *viewname)
struct Object * BKE_camera_multiview_render(const struct Scene *scene, struct Object *camera, const char *viewname)
float BKE_camera_object_dof_distance(struct Object *ob)
void BKE_camera_multiview_model_matrix(const struct RenderData *rd, const struct Object *camera, const char *viewname, float r_modelmat[4][4])
void BKE_camera_multiview_model_matrix_scaled(const struct RenderData *rd, const struct Object *camera, const char *viewname, float r_modelmat[4][4])
struct bConstraintOb * BKE_constraints_make_evalob(struct Depsgraph *depsgraph, struct Scene *scene, struct Object *ob, void *subdata, short datatype)
const bConstraintTypeInfo * BKE_constraint_typeinfo_get(struct bConstraint *con)
void BKE_constraints_clear_evalob(struct bConstraintOb *cob)
void BKE_curve_texspace_ensure(struct Curve *cu)
bool BKE_mball_is_basis(struct Object *ob)
Test, if ob is a basis meta-ball.
void BKE_mesh_texspace_get_reference(struct Mesh *me, short **r_texflag, float **r_loc, float **r_size)
bool BKE_modifier_is_enabled(const struct Scene *scene, struct ModifierData *md, int required_mode)
struct ModifierData * BKE_modifiers_findby_type(const struct Object *ob, ModifierType type)
float BKE_movieclip_remap_scene_to_clip_frame(const struct MovieClip *clip, float framenr)
General operations, lookup, etc. for blender objects.
struct MovieClip * BKE_object_movieclip_get(struct Scene *scene, struct Object *ob, bool use_default)
void BKE_boundbox_calc_size_aabb(const struct BoundBox *bb, float r_size[3])
void BKE_boundbox_init_from_minmax(struct BoundBox *bb, const float min[3], const float max[3])
void BKE_boundbox_calc_center_aabb(const struct BoundBox *bb, float r_cent[3])
struct BoundBox * BKE_object_boundbox_get(struct Object *ob)
struct MovieTrackingReconstruction * BKE_tracking_object_get_reconstruction(struct MovieTracking *tracking, struct MovieTrackingObject *object)
void BKE_tracking_get_camera_object_matrix(struct Object *camera_object, float mat[4][4])
void BKE_tracking_camera_get_reconstructed_interpolate(struct MovieTracking *tracking, struct MovieTrackingObject *object, float framenr, float mat[4][4])
#define TRACK_SELECTED(track)
struct ListBase * BKE_tracking_object_get_tracks(struct MovieTracking *tracking, struct MovieTrackingObject *object)
BLI_INLINE bool BLI_listbase_is_empty(const struct ListBase *lb)
void * BLI_pophead(ListBase *listbase) ATTR_NONNULL(1)
#define LISTBASE_FOREACH(type, var, list)
struct LinkData * BLI_genericNodeN(void *data)
void BLI_addtail(struct ListBase *listbase, void *vlink) ATTR_NONNULL(1)
MINLINE float max_fff(float a, float b, float c)
MINLINE float max_ff(float a, float b)
MINLINE void srgb_to_linearrgb_v3_v3(float linear[3], const float srgb[3])
MINLINE int axis_dominant_v3_single(const float vec[3])
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 translate_m4(float mat[4][4], float tx, float ty, float tz)
bool invert_m4_m4(float R[4][4], const float A[4][4])
void rescale_m4(float mat[4][4], const float scale[3])
void size_to_mat4(float R[4][4], const float size[3])
void mul_m4_v3(const float M[4][4], float r[3])
void scale_m4_fl(float R[4][4], float scale)
void normalize_m4_m4(float R[4][4], const float M[4][4]) ATTR_NONNULL()
void copy_m4_m4(float m1[4][4], const float m2[4][4])
void mul_v3_m4v3(float r[3], const float M[4][4], const float v[3])
MINLINE void copy_v4_v4(float r[4], const float a[4])
MINLINE void madd_v3_v3fl(float r[3], const float a[3], float f)
MINLINE void copy_v2_fl2(float v[2], float x, float y)
MINLINE void madd_v3fl_v3fl_v3fl_v3i(float r[3], const float a[3], const float b[3], const int c[3])
MINLINE float normalize_v3(float r[3])
MINLINE void mul_v3_v3(float r[3], const float a[3])
MINLINE void mul_v2_fl(float r[2], float f)
MINLINE void copy_v2_v2(float r[2], const float a[2])
MINLINE void mul_v3_fl(float r[3], float f)
MINLINE void copy_v3_v3(float r[3], const float a[3])
MINLINE void copy_v3_fl3(float v[3], float x, float y, float z)
MINLINE void cross_v3_v3v3(float r[3], const float a[3], const float b[3])
MINLINE void negate_v3(float r[3])
MINLINE void invert_v3(float r[3])
void mid_v2_v2v2(float r[2], const float a[2], const float b[2])
MINLINE void sub_v2_v2v2(float r[2], const float a[2], const float b[2])
MINLINE void swap_v3_v3(float a[3], float b[3])
MINLINE float normalize_v3_length(float r[3], const float unit_scale)
MINLINE void copy_v3_fl(float r[3], float f)
MINLINE void zero_v3(float r[3])
MINLINE void add_v3_v3(float r[3], const float a[3])
MINLINE float len_v3(const float a[3]) ATTR_WARN_UNUSED_RESULT
struct Depsgraph Depsgraph
float DEG_get_ctime(const Depsgraph *graph)
struct Object * DEG_get_evaluated_object(const struct Depsgraph *depsgraph, struct Object *object)
#define ID_IS_LINKED(_id)
#define ID_REAL_USERS(id)
@ CONSTRAINT_TYPE_FOLLOWTRACK
@ CONSTRAINT_TYPE_OBJECTSOLVER
@ CONSTRAINT_OBTYPE_OBJECT
@ FLUID_DOMAIN_FIELD_FLAGS
@ FLUID_DISPLAY_INTERP_CLOSEST
@ FLUID_GRIDLINE_COLOR_TYPE_FLAGS
@ FLUID_GRIDLINE_COLOR_TYPE_RANGE
@ FLUID_DOMAIN_VECTOR_FIELD_FORCE
@ eGpencilModifierType_Hook
@ LIGHTPROBE_FLAG_SHOW_PARALLAX
@ LIGHTPROBE_FLAG_SHOW_CLIP_DIST
@ LIGHTPROBE_FLAG_SHOW_INFLUENCE
@ LIGHTPROBE_FLAG_SHOW_DATA
@ LIGHTPROBE_FLAG_CUSTOM_PARALLAX
#define OB_MODE_ALL_PAINT
#define OB_MODE_ALL_PAINT_GPENCIL
#define PFIELD_FALL_SPHERE
Types and defines for representing Rigid Body entities.
#define OBACT(_view_layer)
@ SCE_VIEWS_FORMAT_STEREO_3D
#define STEREO_RIGHT_NAME
#define V3D_S3D_DISPCAMERAS
#define V3D_HIDE_HELPLINES
#define V3D_SHOW_BUNDLENAME
#define V3D_SHOW_CAMERAPATH
#define V3D_SHOW_RECONSTRUCTION
#define V3D_S3D_DISPVOLUME
@ V3D_OVERLAY_HIDE_OBJECT_ORIGINS
#define V3D_S3D_DISPPLANE
#define DRW_buffer_add_entry(buffer,...)
@ DRW_STATE_IN_FRONT_SELECT
@ DRW_STATE_DEPTH_LESS_EQUAL
#define DRW_PASS_CREATE(pass, state)
#define DRW_shgroup_call_obmat(shgroup, geom, obmat)
#define XRAY_FLAG_ENABLED(v3d)
NSNotificationCenter * center
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei GLsizei GLenum type _GL_VOID_RET _GL_VOID GLsizei GLenum GLenum const void *pixels _GL_VOID_RET _GL_VOID const void *pointer _GL_VOID_RET _GL_VOID GLdouble v _GL_VOID_RET _GL_VOID GLfloat v _GL_VOID_RET _GL_VOID GLint GLint i2 _GL_VOID_RET _GL_VOID GLint j _GL_VOID_RET _GL_VOID GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble GLdouble GLdouble zFar _GL_VOID_RET _GL_UINT GLdouble *equation _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLenum GLfloat *v _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLfloat *values _GL_VOID_RET _GL_VOID GLushort *values _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLenum GLdouble *params _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_BOOL GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLenum GLfloat param _GL_VOID_RET _GL_VOID GLenum GLint param _GL_VOID_RET _GL_VOID GLushort pattern _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint const GLdouble *points _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint GLdouble GLdouble GLint GLint const GLdouble *points _GL_VOID_RET _GL_VOID GLdouble GLdouble u2 _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLdouble GLdouble v2 _GL_VOID_RET _GL_VOID GLenum GLfloat param _GL_VOID_RET _GL_VOID GLenum GLint param _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLdouble GLdouble nz _GL_VOID_RET _GL_VOID GLfloat GLfloat nz _GL_VOID_RET _GL_VOID GLint GLint nz _GL_VOID_RET _GL_VOID GLshort GLshort nz _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_VOID GLsizei const GLfloat *values _GL_VOID_RET _GL_VOID GLsizei const GLushort *values _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID const GLuint const GLclampf *priorities _GL_VOID_RET _GL_VOID GLdouble y _GL_VOID_RET _GL_VOID GLfloat y _GL_VOID_RET _GL_VOID GLint y _GL_VOID_RET _GL_VOID GLshort y _GL_VOID_RET _GL_VOID GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLfloat GLfloat z _GL_VOID_RET _GL_VOID GLint GLint z _GL_VOID_RET _GL_VOID GLshort GLshort z _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble w _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat w _GL_VOID_RET _GL_VOID GLint GLint GLint w _GL_VOID_RET _GL_VOID GLshort GLshort GLshort w _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble y2 _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat y2 _GL_VOID_RET _GL_VOID GLint GLint GLint y2 _GL_VOID_RET _GL_VOID GLshort GLshort GLshort y2 _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLuint *buffer _GL_VOID_RET _GL_VOID GLdouble t _GL_VOID_RET _GL_VOID GLfloat t _GL_VOID_RET _GL_VOID GLint t _GL_VOID_RET _GL_VOID GLshort t _GL_VOID_RET _GL_VOID GLdouble GLdouble r _GL_VOID_RET _GL_VOID GLfloat GLfloat r _GL_VOID_RET _GL_VOID GLint GLint r _GL_VOID_RET _GL_VOID GLshort GLshort r _GL_VOID_RET _GL_VOID GLdouble GLdouble r
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei width
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei GLsizei GLenum type _GL_VOID_RET _GL_VOID GLsizei GLenum GLenum const void *pixels _GL_VOID_RET _GL_VOID const void *pointer _GL_VOID_RET _GL_VOID GLdouble v _GL_VOID_RET _GL_VOID GLfloat v _GL_VOID_RET _GL_VOID GLint GLint i2 _GL_VOID_RET _GL_VOID GLint j _GL_VOID_RET _GL_VOID GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble GLdouble GLdouble zFar _GL_VOID_RET _GL_UINT GLdouble *equation _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLenum GLfloat *v _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLfloat *values _GL_VOID_RET _GL_VOID GLushort *values _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLenum GLdouble *params _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_BOOL GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLenum GLfloat param _GL_VOID_RET _GL_VOID GLenum GLint param _GL_VOID_RET _GL_VOID GLushort pattern _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint const GLdouble *points _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint GLdouble v1
struct GPUShader GPUShader
struct GPUTexture GPUTexture
void UI_GetThemeColor4ubv(int colorid, unsigned char col[4])
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
const Depsgraph * depsgraph
GPUBatch * DRW_cache_camera_frame_get(void)
GPUBatch * DRW_cache_empty_capsule_body_get(void)
GPUBatch * DRW_cache_groundline_get(void)
GPUBatch * DRW_cache_circle_get(void)
GPUBatch * DRW_cache_plain_axes_get(void)
GPUBatch * DRW_cache_empty_sphere_get(void)
GPUBatch * DRW_cache_quad_get(void)
GPUBatch * DRW_cache_lightprobe_grid_get(void)
GPUBatch * DRW_cache_light_area_disk_lines_get(void)
GPUBatch * DRW_cache_empty_cylinder_get(void)
GPUBatch * DRW_cache_field_force_get(void)
GPUBatch * DRW_cache_field_tube_limit_get(void)
GPUBatch * DRW_cache_field_cone_limit_get(void)
GPUBatch * DRW_cache_field_sphere_limit_get(void)
GPUBatch * DRW_cache_field_vortex_get(void)
GPUBatch * DRW_cache_light_area_square_lines_get(void)
GPUBatch * DRW_cache_light_spot_lines_get(void)
GPUBatch * DRW_cache_speaker_get(void)
GPUBatch * DRW_cache_camera_volume_wire_get(void)
GPUBatch * DRW_cache_light_spot_volume_get(void)
GPUBatch * DRW_cache_field_wind_get(void)
GPUBatch * DRW_cache_lightprobe_planar_get(void)
GPUBatch * DRW_cache_field_curve_get(void)
GPUBatch * DRW_cache_camera_tria_get(void)
GPUBatch * DRW_cache_camera_volume_get(void)
GPUBatch * DRW_cache_sphere_get(const eDRWLevelOfDetail level_of_detail)
GPUBatch * DRW_cache_light_sun_lines_get(void)
GPUBatch * DRW_cache_lightprobe_cube_get(void)
GPUBatch * DRW_cache_camera_tria_wire_get(void)
GPUBatch * DRW_cache_quad_wires_get(void)
GPUBatch * DRW_cache_empty_capsule_cap_get(void)
GPUBatch * DRW_cache_single_arrow_get(void)
GPUBatch * DRW_cache_camera_distances_get(void)
GPUBatch * DRW_cache_empty_cone_get(void)
GPUBatch * DRW_cache_light_point_lines_get(void)
GPUBatch * DRW_cache_bone_arrows_get(void)
GPUBatch * DRW_cache_empty_cube_get(void)
float * DRW_color_background_blend_get(int theme_id)
int DRW_object_wire_theme_get(Object *ob, ViewLayer *view_layer, float **r_color)
void DRW_fluid_ensure_flags(struct FluidModifierData *fmd)
void DRW_smoke_free_velocity(struct FluidModifierData *fmd)
void DRW_smoke_ensure_velocity(struct FluidModifierData *fmd)
void DRW_fluid_ensure_range_field(struct FluidModifierData *fmd)
bool DRW_state_is_select(void)
bool DRW_state_show_text(void)
int DRW_object_visibility_in_active_context(const Object *ob)
bool DRW_state_is_fbo(void)
const DRWContextState * DRW_context_state_get(void)
bool DRW_state_is_image_render(void)
struct DRWTextStore * DRW_text_cache_ensure(void)
DefaultTextureList * DRW_viewport_texture_list_get(void)
void DRW_shgroup_uniform_float_copy(DRWShadingGroup *shgroup, const char *name, const float value)
void DRW_shgroup_uniform_block(DRWShadingGroup *shgroup, const char *name, const GPUUniformBuf *ubo)
void DRW_shgroup_state_disable(DRWShadingGroup *shgroup, DRWState state)
void DRW_shgroup_uniform_texture(DRWShadingGroup *shgroup, const char *name, const GPUTexture *tex)
void DRW_shgroup_uniform_ivec3_copy(DRWShadingGroup *shgroup, const char *name, const int *value)
void DRW_shgroup_call_procedural_lines(DRWShadingGroup *shgroup, Object *ob, uint line_count)
void DRW_buffer_add_entry_struct(DRWCallBuffer *callbuf, const void *data)
void DRW_shgroup_state_enable(DRWShadingGroup *shgroup, DRWState state)
void DRW_shgroup_uniform_vec3_copy(DRWShadingGroup *shgroup, const char *name, const float *value)
void DRW_shgroup_call_procedural_points(DRWShadingGroup *shgroup, Object *ob, uint point_count)
void DRW_shgroup_uniform_vec4_array_copy(DRWShadingGroup *shgroup, const char *name, const float(*value)[4], int arraysize)
void DRW_shgroup_uniform_int_copy(DRWShadingGroup *shgroup, const char *name, const int value)
DRWShadingGroup * DRW_shgroup_create(struct GPUShader *shader, DRWPass *pass)
DRWShadingGroup * DRW_shgroup_create_sub(DRWShadingGroup *shgroup)
void DRW_shgroup_uniform_vec4_copy(DRWShadingGroup *shgroup, const char *name, const float *value)
void DRW_shgroup_uniform_bool_copy(DRWShadingGroup *shgroup, const char *name, const bool value)
void DRW_view_viewmat_get(const DRWView *view, float mat[4][4], bool inverse)
void DRW_draw_pass(DRWPass *pass)
void DRW_select_load_id(uint id)
void DRW_text_cache_add(DRWTextStore *dt, const float co[3], const char *str, const int str_len, short xoffs, short yoffs, short flag, const uchar col[4])
@ DRW_TEXT_CACHE_GLOBALSPACE
@ DRW_TEXT_CACHE_STRING_PTR
const ProjectiveReconstruction & reconstruction
void(* MEM_freeN)(void *vmemh)
void OVERLAY_image_camera_cache_populate(OVERLAY_Data *vedata, Object *ob)
void OVERLAY_image_empty_cache_populate(OVERLAY_Data *vedata, Object *ob)
GPUShader * OVERLAY_shader_extra_groundline(void)
GPUShader * OVERLAY_shader_extra_loose_point(void)
GPUShader * OVERLAY_shader_extra_grid(void)
GPUShader * OVERLAY_shader_extra(bool is_select)
GPUShader * OVERLAY_shader_volume_velocity(bool use_needle, bool use_mac)
GPUShader * OVERLAY_shader_extra_wire(bool use_object, bool is_select)
BLI_INLINE void pack_v4_in_mat4(float rmat[4][4], const float mat[4][4], const float v[4])
GPUShader * OVERLAY_shader_extra_point(void)
OVERLAY_InstanceFormats * OVERLAY_shader_instance_formats_get(void)
GPUShader * OVERLAY_shader_volume_gridlines(bool color_with_flags, bool color_range)
BLI_INLINE void pack_fl_in_mat4(float rmat[4][4], const float mat[4][4], float a)
float convergence_distance
struct ListBase bg_images
struct CameraStereoSettings stereo
struct Depsgraph * depsgraph
struct ViewLayer * view_layer
struct RegionView3D * rv3d
struct GPUUniformBuf * block_ubo
struct GPUTexture * depth
float gridlines_upper_bound
float gridlines_lower_bound
struct GPUTexture * tex_range_field
struct GPUTexture * tex_velocity_x
struct GPUTexture * tex_velocity_y
char gridlines_cell_filter
struct GPUTexture * tex_velocity_z
struct PointCache * point_cache[2]
struct GPUTexture * tex_flags
float gridlines_range_color[4]
char vector_scale_with_magnitude
char vector_draw_mac_components
char gridlines_color_field
struct FluidDomainSettings * domain
float colorBundleSolid[4]
float colorLibrarySelect[4]
struct MovieTracking tracking
OVERLAY_StorageList * stl
OVERLAY_TextureList * txl
DRWPass * extra_centers_ps
OVERLAY_ExtraCallBuffers extra_call_buffers[2]
DRWShadingGroup * extra_grid_grp
struct OVERLAY_PrivateData * pd
struct GPUTexture * dummy_depth_tx
float parent_display_origin[3]
struct Collection * instance_collection
struct RigidBodyOb * rigidbody_object
ListBase greasepencil_modifiers
struct RigidBodyCon * rigidbody_constraint
struct ToolSettings * toolsettings
float stereo3d_volume_alpha
float stereo3d_convergence_alpha
struct bConstraintTarget * next
int(* get_constraint_targets)(struct bConstraint *con, struct ListBase *list)
void(* flush_constraint_targets)(struct bConstraint *con, struct ListBase *list, bool no_copy)
void(* get_target_matrix)(struct Depsgraph *depsgraph, struct bConstraint *con, struct bConstraintOb *cob, struct bConstraintTarget *ct, float ctime)
struct bConstraint * next
ccl_device_inline float sqr(float a)
ccl_device_inline float distance(const float2 &a, const float2 &b)