[Bf-blender-cvs] [6371f8f] blender2.8: Merge branch 'master' into blender2.8

Bastien Montagne noreply at git.blender.org
Mon Oct 10 12:46:15 CEST 2016


Commit: 6371f8ff8add8e64213496a0de153715ca794d39
Author: Bastien Montagne
Date:   Mon Oct 10 12:41:32 2016 +0200
Branches: blender2.8
https://developer.blender.org/rB6371f8ff8add8e64213496a0de153715ca794d39

Merge branch 'master' into blender2.8

Conflicts:
	source/blender/blenloader/intern/readfile.c
	source/blender/editors/space_view3d/view3d_draw.c

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



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

diff --cc source/blender/editors/space_view3d/view3d_draw.c
index 5f3a075,000d1fe..cf04c25
--- a/source/blender/editors/space_view3d/view3d_draw.c
+++ b/source/blender/editors/space_view3d/view3d_draw.c
@@@ -1070,55 -3913,140 +1070,55 @@@ static void view3d_draw_view(const bCon
  
  void view3d_main_region_draw(const bContext *C, ARegion *ar)
  {
 -	Scene *scene = CTX_data_scene(C);
  	View3D *v3d = CTX_wm_view3d(C);
 -	const char *grid_unit = NULL;
 -	rcti border_rect;
 -	bool render_border, clip_border;
 -
 -	/* if we only redraw render border area, skip opengl draw and also
 -	 * don't do scissor because it's already set */
 -	render_border = ED_view3d_calc_render_border(scene, v3d, ar, &border_rect);
 -	clip_border = (render_border && !BLI_rcti_compare(&ar->drawrct, &border_rect));
 -
 -	/* draw viewport using opengl */
 -	if (v3d->drawtype != OB_RENDER || !view3d_main_region_do_render_draw(scene) || clip_border) {
 -		view3d_main_region_draw_objects(C, scene, v3d, ar, &grid_unit);
 -		
 -#ifdef DEBUG_DRAW
 -		bl_debug_draw();
 -#endif
 -		if (G.debug & G_DEBUG_SIMDATA)
 -			draw_sim_debug_data(scene, v3d, ar);
 -		
 -		ED_region_pixelspace(ar);
 +
 +	if (IS_VIEWPORT_LEGACY(v3d)) {
 +		view3d_main_region_draw_legacy(C, ar);
 +		return;
  	}
  
 -	/* draw viewport using external renderer */
 -	if (v3d->drawtype == OB_RENDER)
 -		view3d_main_region_draw_engine(C, scene, ar, v3d, clip_border, &border_rect);
 -	
 -	view3d_main_region_draw_info(C, scene, ar, v3d, grid_unit, render_border);
 +	/* TODO viewport - there is so much to be done, in fact a lot will need to happen in the space_view3d.c
 +	 * before we even call the drawing routine, but let's move on for now (dfelinto)
 +	 * but this is a provisory way to start seeing things in the viewport */
 +	DrawData draw_data;
 +	view3d_draw_data_init(C, ar, &draw_data);
 +	view3d_draw_view(C, ar, &draw_data);
  
  	v3d->flag |= V3D_INVALID_BACKBUF;
 +}
 +
 +/* ******************** legacy interface ***************** */
 +/**
 + * This will be removed once the viewport gets replaced
 + * meanwhile it should keep the old viewport working.
 + */
  
 -	BLI_assert(BLI_listbase_is_empty(&v3d->afterdraw_transp));
 -	BLI_assert(BLI_listbase_is_empty(&v3d->afterdraw_xray));
 -	BLI_assert(BLI_listbase_is_empty(&v3d->afterdraw_xraytransp));
 +void VP_legacy_drawgrid(UnitSettings *unit, ARegion *ar, View3D *v3d, const char **grid_unit)
 +{
 +	drawgrid(unit, ar, v3d, grid_unit);
  }
  
 -#ifdef DEBUG_DRAW
 -/* debug drawing */
 -#define _DEBUG_DRAW_QUAD_TOT 1024
 -#define _DEBUG_DRAW_EDGE_TOT 1024
 -static float _bl_debug_draw_quads[_DEBUG_DRAW_QUAD_TOT][4][3];
 -static int   _bl_debug_draw_quads_tot = 0;
 -static float _bl_debug_draw_edges[_DEBUG_DRAW_QUAD_TOT][2][3];
 -static int   _bl_debug_draw_edges_tot = 0;
 -static unsigned int _bl_debug_draw_quads_color[_DEBUG_DRAW_QUAD_TOT];
 -static unsigned int _bl_debug_draw_edges_color[_DEBUG_DRAW_EDGE_TOT];
 -static unsigned int _bl_debug_draw_color;
 -
 -void bl_debug_draw_quad_clear(void)
 +void VP_legacy_drawfloor(Scene *scene, View3D *v3d, const char **grid_unit, bool write_depth)
  {
 -	_bl_debug_draw_quads_tot = 0;
 -	_bl_debug_draw_edges_tot = 0;
 -	_bl_debug_draw_color = 0x00FF0000;
 +	drawfloor(scene, v3d, grid_unit, write_depth);
  }
 -void bl_debug_color_set(const unsigned int color)
 +
 +void VP_legacy_view3d_main_region_setup_view(Scene *scene, View3D *v3d, ARegion *ar, float viewmat[4][4], float winmat[4][4])
  {
 -	_bl_debug_draw_color = color;
 +	view3d_main_region_setup_view(scene, v3d, ar, viewmat, winmat);
  }
 -void bl_debug_draw_quad_add(const float v0[3], const float v1[3], const float v2[3], const float v3[3])
 +
 +bool VP_legacy_view3d_stereo3d_active(const bContext *C, Scene *scene, View3D *v3d, RegionView3D *rv3d)
  {
 -	if (_bl_debug_draw_quads_tot >= _DEBUG_DRAW_QUAD_TOT) {
 -		printf("%s: max quad count hit %d!", __func__, _bl_debug_draw_quads_tot);
 -	}
 -	else {
 -		float *pt = &_bl_debug_draw_quads[_bl_debug_draw_quads_tot][0][0];
 -		copy_v3_v3(pt, v0); pt += 3;
 -		copy_v3_v3(pt, v1); pt += 3;
 -		copy_v3_v3(pt, v2); pt += 3;
 -		copy_v3_v3(pt, v3); pt += 3;
 -		_bl_debug_draw_quads_color[_bl_debug_draw_quads_tot] = _bl_debug_draw_color;
 -		_bl_debug_draw_quads_tot++;
 -	}
 +	return view3d_stereo3d_active(C, scene, v3d, rv3d);
  }
 -void bl_debug_draw_edge_add(const float v0[3], const float v1[3])
 +
 +void VP_legacy_view3d_stereo3d_setup(Scene *scene, View3D *v3d, ARegion *ar)
  {
 -	if (_bl_debug_draw_quads_tot >= _DEBUG_DRAW_EDGE_TOT) {
 -		printf("%s: max edge count hit %d!", __func__, _bl_debug_draw_edges_tot);
 -	}
 -	else {
 -		float *pt = &_bl_debug_draw_edges[_bl_debug_draw_edges_tot][0][0];
 -		copy_v3_v3(pt, v0); pt += 3;
 -		copy_v3_v3(pt, v1); pt += 3;
 -		_bl_debug_draw_edges_color[_bl_debug_draw_edges_tot] = _bl_debug_draw_color;
 -		_bl_debug_draw_edges_tot++;
 -	}
 +	view3d_stereo3d_setup(scene, v3d, ar);
  }
 -static void bl_debug_draw(void)
 +
 +bool VP_legacy_use_depth(Scene *scene, View3D *v3d)
  {
 -	unsigned int color;
 -	if (_bl_debug_draw_quads_tot) {
 -		int i;
 -		color = _bl_debug_draw_quads_color[0];
 -		cpack(color);
 -		for (i = 0; i < _bl_debug_draw_quads_tot; i ++) {
 -			if (_bl_debug_draw_quads_color[i] != color) {
 -				color = _bl_debug_draw_quads_color[i];
 -				cpack(color);
 -			}
 -			glBegin(GL_LINE_LOOP);
 -			glVertex3fv(_bl_debug_draw_quads[i][0]);
 -			glVertex3fv(_bl_debug_draw_quads[i][1]);
 -			glVertex3fv(_bl_debug_draw_quads[i][2]);
 -			glVertex3fv(_bl_debug_draw_quads[i][3]);
 -			glEnd();
 -		}
 -	}
 -	if (_bl_debug_draw_edges_tot) {
 -		int i;
 -		color = _bl_debug_draw_edges_color[0];
 -		cpack(color);
 -		glBegin(GL_LINES);
 -		for (i = 0; i < _bl_debug_draw_edges_tot; i ++) {
 -			if (_bl_debug_draw_edges_color[i] != color) {
 -				color = _bl_debug_draw_edges_color[i];
 -				cpack(color);
 -			}
 -			glVertex3fv(_bl_debug_draw_edges[i][0]);
 -			glVertex3fv(_bl_debug_draw_edges[i][1]);
 -		}
 -		glEnd();
 -		color = _bl_debug_draw_edges_color[0];
 -		cpack(color);
 -		glPointSize(4.0);
 -		glBegin(GL_POINTS);
 -		for (i = 0; i < _bl_debug_draw_edges_tot; i ++) {
 -			if (_bl_debug_draw_edges_color[i] != color) {
 -				color = _bl_debug_draw_edges_color[i];
 -				cpack(color);
 -			}
 -			glVertex3fv(_bl_debug_draw_edges[i][0]);
 -			glVertex3fv(_bl_debug_draw_edges[i][1]);
 -		}
 -		glEnd();
 -	}
 +	return use_depth_doit(scene, v3d);
- }
+ }
 -#endif




More information about the Bf-blender-cvs mailing list