[Bf-blender-cvs] [333e589] temp_viewport_fx_merge: Merge branch 'master' into temp_viewport_fx_merge

Antony Riakiotakis noreply at git.blender.org
Mon May 11 11:33:25 CEST 2015


Commit: 333e58919c20c06a1a77584610633c690462b3a1
Author: Antony Riakiotakis
Date:   Mon May 11 11:33:03 2015 +0200
Branches: temp_viewport_fx_merge
https://developer.blender.org/rB333e58919c20c06a1a77584610633c690462b3a1

Merge branch 'master' into temp_viewport_fx_merge

Conflicts:
	source/blender/editors/gpencil/drawgpencil.c
	source/blender/editors/space_sequencer/sequencer_draw.c
	source/blender/editors/space_view3d/drawobject.c
	source/blender/editors/space_view3d/view3d_draw.c
	source/blender/editors/transform/transform.c

===================================================================



===================================================================

diff --cc source/blender/blenlib/BLI_math_matrix.h
index 2b733f6,f7eeb1e..f40c8b6
--- a/source/blender/blenlib/BLI_math_matrix.h
+++ b/source/blender/blenlib/BLI_math_matrix.h
@@@ -107,9 -105,8 +107,10 @@@ void mul_v3_m4v3(float r[3], float M[4]
  void mul_v2_m4v3(float r[2], float M[4][4], const float v[3]);
  void mul_v2_m2v2(float r[2], float M[2][2], const float v[2]);
  void mul_m2v2(float M[2][2], float v[2]);
 +void mul_v3_m4v3_q(float r[3], float M[4][4], const float v[3]);
 +void mul_v4_m4v3(float r[4], float M[4][4], const float v[3]);
  void mul_mat3_m4_v3(float M[4][4], float r[3]);
+ void mul_v3_mat3_m4v3(float r[3], float M[4][4], const float v[3]);
  void mul_m4_v4(float M[4][4], float r[4]);
  void mul_v4_m4v4(float r[4], float M[4][4], const float v[4]);
  void mul_project_m4_v3(float M[4][4], float vec[3]);
diff --cc source/blender/editors/gpencil/drawgpencil.c
index 3145c07,ffcd204..b814a0a
--- a/source/blender/editors/gpencil/drawgpencil.c
+++ b/source/blender/editors/gpencil/drawgpencil.c
@@@ -433,7 -443,9 +433,8 @@@ static void gp_draw_stroke_3d(bGPDspoin
  	/* draw debug points of curve on top? */
  	/* XXX: for now, we represent "selected" strokes in the same way as debug, which isn't used anymore */
  	if (debug) {
+ 		glPointSize((float)(thickness + 2));
 -		
 -		glBegin(GL_POINTS);
 +		GPUBegin(GL_POINTS);
  		for (i = 0, pt = points; i < totpoints && pt; i++, pt++)
  			glVertex3fv(&pt->x);
  		glEnd();
@@@ -607,7 -619,9 +608,8 @@@ static void gp_draw_stroke_2d(bGPDspoin
  		bGPDspoint *pt;
  		int i;
  		
+ 		glPointSize((float)(thickness_s + 2));
 -		
 -		glBegin(GL_POINTS);
 +		GPUBegin(GL_POINTS);
  		for (i = 0, pt = points; i < totpoints && pt; i++, pt++) {
  			float co[2];
  			
diff --cc source/blender/editors/space_sequencer/sequencer_draw.c
index 8926377,0c811ca..4f9843f
--- a/source/blender/editors/space_sequencer/sequencer_draw.c
+++ b/source/blender/editors/space_sequencer/sequencer_draw.c
@@@ -983,6 -981,76 +984,76 @@@ static void sequencer_display_size(Scen
  	}
  }
  
+ static void sequencer_draw_gpencil(const bContext *C)
+ {
+ 	/* draw grease-pencil (image aligned) */
+ 	ED_gpencil_draw_2dimage(C);
+ 
+ 	/* ortho at pixel level */
+ 	UI_view2d_view_restore(C);
+ 
+ 	/* draw grease-pencil (screen aligned) */
+ 	ED_gpencil_draw_view2d(C, 0);
+ }
+ 
+ /* draws content borders plus safety borders if needed */
+ static void sequencer_draw_borders(const SpaceSeq *sseq, const View2D *v2d, const Scene *scene)
+ {
+ 	float x1 = v2d->tot.xmin;
+ 	float y1 = v2d->tot.ymin;
+ 	float x2 = v2d->tot.xmax;
+ 	float y2 = v2d->tot.ymax;
+ 
+ 	/* border */
+ 	setlinestyle(3);
+ 
+ 	UI_ThemeColorBlendShade(TH_WIRE, TH_BACK, 1.0, 0);
+ 
 -	glBegin(GL_LINE_LOOP);
++	GPUBegin(GL_LINE_LOOP);
+ 	glVertex2f(x1 - 0.5f, y1 - 0.5f);
+ 	glVertex2f(x1 - 0.5f, y2 + 0.5f);
+ 	glVertex2f(x2 + 0.5f, y2 + 0.5f);
+ 	glVertex2f(x2 + 0.5f, y1 - 0.5f);
+ 	glEnd();
+ 
+ 	/* safety border */
+ 	if (sseq->flag & SEQ_SHOW_SAFE_MARGINS) {
+ 		UI_draw_safe_areas(
+ 		        x1, x2, y1, y2,
+ 		        scene->safe_areas.title,
+ 		        scene->safe_areas.action);
+ 
+ 		if (sseq->flag & SEQ_SHOW_SAFE_CENTER) {
+ 			UI_draw_safe_areas(
+ 			        x1, x2, y1, y2,
+ 			        scene->safe_areas.title_center,
+ 			        scene->safe_areas.action_center);
+ 		}
+ 	}
+ 
+ 	setlinestyle(0);
+ }
+ 
+ /* draws checkerboard background for transparent content */
+ static void sequencer_draw_background(const SpaceSeq *sseq, View2D *v2d, const float viewrect[2])
+ {
+ 	/* setting up the view */
+ 	UI_view2d_totRect_set(v2d, viewrect[0] + 0.5f, viewrect[1] + 0.5f);
+ 	UI_view2d_curRect_validate(v2d);
+ 	UI_view2d_view_ortho(v2d);
+ 
+ 	/* only draw alpha for main buffer */
+ 	if (sseq->mainb == SEQ_DRAW_IMG_IMBUF) {
+ 		if (sseq->flag & SEQ_USE_ALPHA) {
+ 			glEnable(GL_BLEND);
+ 			glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
+ 
+ 			fdrawcheckerboard(v2d->tot.xmin, v2d->tot.ymin, v2d->tot.xmax, v2d->tot.ymax);
+ 			glColor4f(1.0, 1.0, 1.0, 1.0);
+ 		}
+ 	}
+ }
+ 
  void draw_image_seq(const bContext *C, Scene *scene, ARegion *ar, SpaceSeq *sseq, int cfra, int frame_ofs, bool draw_overlay, bool draw_backdrop)
  {
  	struct Main *bmain = CTX_data_main(C);
@@@ -1264,13 -1334,7 +1335,13 @@@
  		glTexCoord2f(1.0f, 0.0f); glVertex2f(v2d->tot.xmax, v2d->tot.ymin);
  	}
  	glEnd();
- 	
+ 
 +	if (draw_backdrop) {
 +		gpuPopMatrix(GPU_MODELVIEW_MATRIX);
 +		gpuPopMatrix(GPU_PROJECTION_MATRIX);
 +		
 +	}
 +	
  	glBindTexture(GL_TEXTURE_2D, last_texid);
  	glDisable(GL_TEXTURE_2D);
  	if (sseq->mainb == SEQ_DRAW_IMG_IMBUF && sseq->flag & SEQ_USE_ALPHA)
diff --cc source/blender/editors/space_view3d/drawobject.c
index b252b98,5b2ac50..48f5f80
--- a/source/blender/editors/space_view3d/drawobject.c
+++ b/source/blender/editors/space_view3d/drawobject.c
@@@ -7022,19 -7106,31 +7091,31 @@@ static void draw_forcefield(Object *ob
  	setlinestyle(0);
  }
  
- static void draw_box(float vec[8][3])
+ static void draw_box(float vec[8][3], bool solid)
  {
- 	GPUBegin(GL_LINE_STRIP);
- 	glVertex3fv(vec[0]); glVertex3fv(vec[1]); glVertex3fv(vec[2]); glVertex3fv(vec[3]);
- 	glVertex3fv(vec[0]); glVertex3fv(vec[4]); glVertex3fv(vec[5]); glVertex3fv(vec[6]);
- 	glVertex3fv(vec[7]); glVertex3fv(vec[4]);
- 	glEnd();
+ 	if (!solid) {
 -		glBegin(GL_LINE_STRIP);
++		GPUBegin(GL_LINE_STRIP);
+ 		glVertex3fv(vec[0]); glVertex3fv(vec[1]); glVertex3fv(vec[2]); glVertex3fv(vec[3]);
+ 		glVertex3fv(vec[0]); glVertex3fv(vec[4]); glVertex3fv(vec[5]); glVertex3fv(vec[6]);
+ 		glVertex3fv(vec[7]); glVertex3fv(vec[4]);
+ 		glEnd();
  
- 	GPUBegin(GL_LINES);
- 	glVertex3fv(vec[1]); glVertex3fv(vec[5]);
- 	glVertex3fv(vec[2]); glVertex3fv(vec[6]);
- 	glVertex3fv(vec[3]); glVertex3fv(vec[7]);
- 	glEnd();
 -		glBegin(GL_LINES);
++		GPUBegin(GL_LINES);
+ 		glVertex3fv(vec[1]); glVertex3fv(vec[5]);
+ 		glVertex3fv(vec[2]); glVertex3fv(vec[6]);
+ 		glVertex3fv(vec[3]); glVertex3fv(vec[7]);
+ 		glEnd();
+ 	}
+ 	else {
 -		glBegin(GL_QUADS);
++		GPUBegin(GL_QUADS);
+ 		glVertex3fv(vec[0]); glVertex3fv(vec[1]); glVertex3fv(vec[2]); glVertex3fv(vec[3]);
+ 		glVertex3fv(vec[7]); glVertex3fv(vec[6]); glVertex3fv(vec[5]); glVertex3fv(vec[4]);
+ 		glVertex3fv(vec[4]); glVertex3fv(vec[5]); glVertex3fv(vec[1]); glVertex3fv(vec[0]);
+ 		glVertex3fv(vec[3]); glVertex3fv(vec[2]); glVertex3fv(vec[6]); glVertex3fv(vec[7]);
+ 		glVertex3fv(vec[3]); glVertex3fv(vec[7]); glVertex3fv(vec[4]); glVertex3fv(vec[0]);
+ 		glVertex3fv(vec[1]); glVertex3fv(vec[5]); glVertex3fv(vec[6]); glVertex3fv(vec[2]);
+ 		glEnd();
+ 	}
  }
  
  static void draw_bb_quadric(BoundBox *bb, char type, bool around_origin)
diff --cc source/blender/editors/space_view3d/view3d_draw.c
index 3cb4854,57b417e..501e198
--- a/source/blender/editors/space_view3d/view3d_draw.c
+++ b/source/blender/editors/space_view3d/view3d_draw.c
@@@ -2750,11 -2771,13 +2758,11 @@@ static void view3d_draw_objects
  			*grid_unit = NULL;  /* drawgrid need this to detect/affect smallest valid unit... */
  			drawgrid(&scene->unit, ar, v3d, grid_unit);
  			/* XXX make function? replaces persp(1) */
 -			glMatrixMode(GL_PROJECTION);
 -			glLoadMatrixf(rv3d->winmat);
 -			glMatrixMode(GL_MODELVIEW);
 -			glLoadMatrixf(rv3d->viewmat);
 +			gpuLoadMatrix(GPU_PROJECTION_MATRIX, rv3d->winmat[0]);
 +			gpuLoadMatrix(GPU_MODELVIEW_MATRIX, rv3d->viewmat[0]);
  		}
- 		else {
- 			drawfloor(scene, v3d, grid_unit);
+ 		else if (!draw_grids_after) {
+ 			drawfloor(scene, v3d, grid_unit, true);
  		}
  	}
  
@@@ -2922,11 -2960,11 +2943,11 @@@ static void view3d_main_area_clear(Scen
  			glEnable(GL_DEPTH_TEST);
  			glDepthFunc(GL_ALWAYS);
  			glShadeModel(GL_SMOOTH);
- 			GPUBegin(GL_QUADS);
 -			glBegin(GL_TRIANGLE_STRIP);
++			GPUBegin(GL_TRIANGLE_STRIP);
  			glVertex3f(-1.0, -1.0, 1.0);
  			glVertex3f(1.0, -1.0, 1.0);
- 			glVertex3f(1.0, 1.0, 1.0);
  			glVertex3f(-1.0, 1.0, 1.0);
+ 			glVertex3f(1.0, 1.0, 1.0);
  			glEnd();
  			glShadeModel(GL_FLAT);
  
diff --cc source/blender/editors/transform/transform.c
index 507bab6,b49fe5e..e774d12
--- a/source/blender/editors/transform/transform.c
+++ b/source/blender/editors/transform/transform.c
@@@ -6281,48 -6301,94 +6304,94 @@@ static void drawEdgeSlide(TransInfo *t
  			glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
  
  			glPushAttrib(GL_CURRENT_BIT | GL_LINE_BIT | GL_POINT_BIT);
 -			glPushMatrix();
 +			gpuPushMatrix(GPU_MODELVIEW_MATRIX);
  
 -			glMultMatrixf(t->obedit->obmat);
 +			gpuMultMatrix(GPU_MODELVIEW_MATRIX, t->obedit->obmat[0]);
  
- 			glLineWidth(line_size);
- 			UI_ThemeColorShadeAlpha(TH_EDGE_SELECT, 80, alpha_shade);
- 			GPUBegin(GL_LINES);
- 			if (curr_sv->v_a) {
- 				glVertex3fv(curr_sv->v_a->co);
- 				glVertex3fv(curr_sv->v_co_orig);
- 			}
- 			if (curr_sv->v_b) {
- 				glVertex3fv(curr_sv->v_b->co);
- 				glVertex3fv(curr_sv->v_co_orig);
- 			}
- 			bglEnd();
+ 			if (sld->is_proportional == false) {
+ 				float co_a[3], co_b[3], co_mark[3];
+ 				TransDataEdgeSlideVert *curr_sv = &sld->sv[sld->curr_sv_index];
+ 				const float fac = (sld->perc + 1.0f) / 2.0f;
+ 				const float ctrl_size = UI_GetThemeValuef(TH_FACEDOT_SIZE) + 1.5f;
+ 				const float guide_size = ctrl_size - 0.5f;
+ 				const int alpha_shade = -30;
+ 
+ 				add_v3_v3v3(co_a, curr_sv->v_co_orig, curr_sv->dir_side[0]);
+ 				add_v3_v3v3(co_b, curr_sv->v_co_orig, curr_sv->dir_side[1]);
+ 
+ 				glLineWidth(line_size);
+ 				UI_ThemeColorShadeAlpha(TH_EDGE_SELECT, 80, alpha_shade);
 -				glBegin(GL_LINES);
++				GPUBegin(GL_LINES);
+ 				if (curr_sv->v_side[0]) {
+ 					glVertex3fv(curr_sv->v_side[0]->co);
+ 					glVertex3fv(curr_sv->v_co_orig);
+ 				}
+ 				if (curr_sv->v_side[1]) {
+ 					glVertex3fv(curr_sv->v_side[1]->co);
+ 					glVertex3fv(curr_sv->v_co_orig);
+ 				}
+ 				glEnd();
  
+ 				UI_ThemeColorShadeAlpha(TH_SELECT, -30, alpha_shade);
+ 				glPointSize(ctrl_size);
+ 				bglBegin(GL_POINTS);
+ 				if (sld->flipped_vtx) {
+ 					if (curr_sv->v_side[1]) bglVertex3fv(curr_sv->v_side[1]->co);
+ 				}
+ 				else {
+ 					if (curr_sv->v_side[0]) bglVertex3fv(curr_sv->v_side[0]->co);
+ 				}
+ 				bglEnd();
  
- 			UI_ThemeColorShadeAlpha(TH_SELECT, -30, alpha_shade);
- 			glPointSize(ctrl_size);
- 			bglBegin(GL_POINTS

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list