[Bf-blender-cvs] [bb45d36] soc-2016-layer_manager: Cleanup: Add comments, improve naming, etc

Julian Eisel noreply at git.blender.org
Sun Jun 5 19:48:34 CEST 2016


Commit: bb45d36ffe6e562ea9741862bf8e42ad2d1fd7f1
Author: Julian Eisel
Date:   Sun Jun 5 19:46:23 2016 +0200
Branches: soc-2016-layer_manager
https://developer.blender.org/rBbb45d36ffe6e562ea9741862bf8e42ad2d1fd7f1

Cleanup: Add comments, improve naming, etc

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

M	source/blender/editors/space_view3d/view3d_draw.c

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

diff --git a/source/blender/editors/space_view3d/view3d_draw.c b/source/blender/editors/space_view3d/view3d_draw.c
index 194243e..2af3528 100644
--- a/source/blender/editors/space_view3d/view3d_draw.c
+++ b/source/blender/editors/space_view3d/view3d_draw.c
@@ -2712,8 +2712,12 @@ void ED_view3d_update_viewmat(Scene *scene, View3D *v3d, ARegion *ar, float view
 	}
 }
 
+/**
+ * Values tell #view3d_layer_objects_draw_cb what and how to draw.
+ * Not really generic, but simple :)
+ */
 typedef enum {
-	/* draw backgournd scene */
+	/* draw background scene */
 	OB_DRAWSTEP_SET,
 	/* offscreen drawing */
 	OB_DRAWSTEP_OFFSCREEN,
@@ -2735,6 +2739,12 @@ typedef struct {
 	unsigned int r_lay_used;
 } ObjectDrawData;
 
+/**
+ * \brief Main object layer draw callback.
+ *
+ * Callback for drawing objects of the active layer, based on
+ * ObjectDrawData.drawstep (and other ObjectDrawData stuff).
+ */
 static bool view3d_layer_objects_draw_cb(LayerTreeItem *litem, void *customdata)
 {
 	LayerTypeObject *oblayer = (LayerTypeObject *)litem;
@@ -2756,6 +2766,7 @@ static bool view3d_layer_objects_draw_cb(LayerTreeItem *litem, void *customdata)
 					draw_dupli_objects_color(ddata->scene, ddata->ar, ddata->v3d, base, ddata->dflag, TH_UNDEFINED);
 				}
 				break;
+
 			case OB_DRAWSTEP_DUPLI_UNSEL:
 				ddata->r_lay_used |= base->lay;
 
@@ -2768,11 +2779,13 @@ static bool view3d_layer_objects_draw_cb(LayerTreeItem *litem, void *customdata)
 						DRAW_OBJECT;
 				}
 				break;
+
 			case OB_DRAWSTEP_SEL_EDIT:
 				if (base->object == ddata->scene->obedit || (base->flag & SELECT)) {
 					DRAW_OBJECT;
 				}
 				break;
+
 			case OB_DRAWSTEP_OFFSCREEN:
 				/* dupli drawing */
 				if (base->object->transflag & OB_DUPLI)
@@ -2791,7 +2804,15 @@ static bool view3d_layer_objects_draw_cb(LayerTreeItem *litem, void *customdata)
 	return true;
 }
 
-static void view3d_object_drawstep_draw(ObjectDrawData *ddata, ObjectDrawStep step)
+/**
+ * \brief Draw all object layers.
+ *
+ * Draw objects by iterating over object layers in the scene. Uses
+ * #view3d_layer_objects_draw_cb to draw the individual layers.
+ *
+ * \param step: Tells the layer draw callback what and how to draw.
+ */
+static void view3d_objectlayers_drawstep_draw(ObjectDrawData *ddata, ObjectDrawStep step)
 {
 	ddata->drawstep = step;
 	BKE_layertree_iterate(ddata->scene->object_layers, view3d_layer_objects_draw_cb, ddata, false);
@@ -2878,14 +2899,14 @@ static void view3d_draw_objects(
 		ED_view3d_clipping_set(rv3d);
 	}
 
-	/* draw set first */
+	/* draw background set first */
 	if (scene->set) {
 		ObjectDrawData ddata_set = ddata;
 
 		ddata_set.dflag = DRAW_CONSTCOLOR | DRAW_SCENESET;
 		for (Scene *sce_iter = scene->set; sce_iter; sce_iter = sce_iter->set) {
 			ddata_set.scene = sce_iter;
-			view3d_object_drawstep_draw(&ddata_set, OB_DRAWSTEP_SET);
+			view3d_objectlayers_drawstep_draw(&ddata_set, OB_DRAWSTEP_SET);
 		}
 
 		/* Transp and X-ray afterdraw stuff for sets is done later */
@@ -2893,17 +2914,17 @@ static void view3d_draw_objects(
 
 
 	if (draw_offscreen) {
-		view3d_object_drawstep_draw(&ddata, OB_DRAWSTEP_OFFSCREEN);
+		view3d_objectlayers_drawstep_draw(&ddata, OB_DRAWSTEP_OFFSCREEN);
 	}
 	else {
 		/* then draw not selected and the duplis, but skip editmode object */
-		view3d_object_drawstep_draw(&ddata, OB_DRAWSTEP_DUPLI_UNSEL);
+		view3d_objectlayers_drawstep_draw(&ddata, OB_DRAWSTEP_DUPLI_UNSEL);
 
 		/* mask out localview */
 		v3d->lay_used = ddata.r_lay_used & ((1 << 20) - 1);
 
 		/* draw selected and editmode */
-		view3d_object_drawstep_draw(&ddata, OB_DRAWSTEP_SEL_EDIT);
+		view3d_objectlayers_drawstep_draw(&ddata, OB_DRAWSTEP_SEL_EDIT);
 	}
 
 	/* perspective floor goes last to use scene depth and avoid writing to depth buffer */




More information about the Bf-blender-cvs mailing list