diff options
author | Campbell Barton <ideasman42@gmail.com> | 2014-03-20 15:56:28 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2014-03-20 15:56:28 +0400 |
commit | 27e86ed8324c5cc72e58f61231018b6c77689f03 (patch) | |
tree | 2ce5eafe712cd230a268ffa7491a60eaf68c65d1 /source/blender/blenkernel/intern/displist.c | |
parent | 03d053da4cf36d17d59434da0d17252411356554 (diff) |
Code cleanup: use bools
Diffstat (limited to 'source/blender/blenkernel/intern/displist.c')
-rw-r--r-- | source/blender/blenkernel/intern/displist.c | 119 |
1 files changed, 63 insertions, 56 deletions
diff --git a/source/blender/blenkernel/intern/displist.c b/source/blender/blenkernel/intern/displist.c index b5f631648ea..33cb2c0fb23 100644 --- a/source/blender/blenkernel/intern/displist.c +++ b/source/blender/blenkernel/intern/displist.c @@ -302,7 +302,8 @@ bool BKE_displist_surfindex_get(DispList *dl, int a, int *b, int *p1, int *p2, i /* ****************** make displists ********************* */ -static void curve_to_displist(Curve *cu, ListBase *nubase, ListBase *dispbase, int forRender, int renderResolution) +static void curve_to_displist(Curve *cu, ListBase *nubase, ListBase *dispbase, + const bool for_render, const bool use_render_resolution) { Nurb *nu; DispList *dl; @@ -310,12 +311,12 @@ static void curve_to_displist(Curve *cu, ListBase *nubase, ListBase *dispbase, i BPoint *bp; float *data; int a, len, resolu; - const int editmode = (!forRender && (cu->editnurb || cu->editfont)); + const bool editmode = (!for_render && (cu->editnurb || cu->editfont)); nu = nubase->first; while (nu) { - if (nu->hide == 0 || editmode == 0) { - if (renderResolution && cu->resolu_ren != 0) + if (nu->hide == 0 || editmode == false) { + if (use_render_resolution && cu->resolu_ren != 0) resolu = cu->resolu_ren; else resolu = nu->resolu; @@ -748,14 +749,15 @@ void BKE_displist_make_mball_forRender(EvaluationContext *eval_ctx, Scene *scene object_deform_mball(ob, dispbase); } -static ModifierData *curve_get_tessellate_point(Scene *scene, Object *ob, int renderResolution, int editmode) +static ModifierData *curve_get_tessellate_point(Scene *scene, Object *ob, + const bool use_render_resolution, const bool editmode) { VirtualModifierData virtualModifierData; ModifierData *md = modifiers_getVirtualModifierList(ob, &virtualModifierData); ModifierData *pretessellatePoint; int required_mode; - if (renderResolution) + if (use_render_resolution) required_mode = eModifierMode_Render; else required_mode = eModifierMode_Realtime; @@ -790,14 +792,14 @@ static ModifierData *curve_get_tessellate_point(Scene *scene, Object *ob, int re } static void curve_calc_modifiers_pre(Scene *scene, Object *ob, ListBase *nurb, - int forRender, int renderResolution) + const bool for_render, const bool use_render_resolution) { VirtualModifierData virtualModifierData; ModifierData *md = modifiers_getVirtualModifierList(ob, &virtualModifierData); ModifierData *pretessellatePoint; Curve *cu = ob->data; int numVerts = 0; - const int editmode = (!forRender && (cu->editnurb || cu->editfont)); + const bool editmode = (!for_render && (cu->editnurb || cu->editfont)); ModifierApplyFlag app_flag = 0; float (*deformedVerts)[3] = NULL; float *keyVerts = NULL; @@ -807,14 +809,14 @@ static void curve_calc_modifiers_pre(Scene *scene, Object *ob, ListBase *nurb, if (editmode) app_flag |= MOD_APPLY_USECACHE; - if (renderResolution) { + if (use_render_resolution) { app_flag |= MOD_APPLY_RENDER; required_mode = eModifierMode_Render; } else required_mode = eModifierMode_Realtime; - pretessellatePoint = curve_get_tessellate_point(scene, ob, renderResolution, editmode); + pretessellatePoint = curve_get_tessellate_point(scene, ob, use_render_resolution, editmode); if (editmode) required_mode |= eModifierMode_Editmode; @@ -900,28 +902,28 @@ static void displist_apply_allverts(ListBase *dispbase, float (*allverts)[3]) } static void curve_calc_modifiers_post(Scene *scene, Object *ob, ListBase *nurb, - ListBase *dispbase, DerivedMesh **derivedFinal, - int forRender, int renderResolution) + ListBase *dispbase, DerivedMesh **r_dm_final, + const bool for_render, const bool use_render_resolution) { VirtualModifierData virtualModifierData; ModifierData *md = modifiers_getVirtualModifierList(ob, &virtualModifierData); ModifierData *pretessellatePoint; Curve *cu = ob->data; int required_mode = 0, totvert = 0; - int editmode = (!forRender && (cu->editnurb || cu->editfont)); + const bool editmode = (!for_render && (cu->editnurb || cu->editfont)); DerivedMesh *dm = NULL, *ndm; float (*vertCos)[3] = NULL; - int useCache = !forRender; + int useCache = !for_render; ModifierApplyFlag app_flag = 0; - if (renderResolution) { + if (use_render_resolution) { app_flag |= MOD_APPLY_RENDER; required_mode = eModifierMode_Render; } else required_mode = eModifierMode_Realtime; - pretessellatePoint = curve_get_tessellate_point(scene, ob, renderResolution, editmode); + pretessellatePoint = curve_get_tessellate_point(scene, ob, use_render_resolution, editmode); if (editmode) required_mode |= eModifierMode_Editmode; @@ -930,8 +932,8 @@ static void curve_calc_modifiers_post(Scene *scene, Object *ob, ListBase *nurb, md = pretessellatePoint->next; } - if (derivedFinal && *derivedFinal) { - (*derivedFinal)->release(*derivedFinal); + if (r_dm_final && *r_dm_final) { + (*r_dm_final)->release(*r_dm_final); } for (; md; md = md->next) { @@ -966,7 +968,7 @@ static void curve_calc_modifiers_post(Scene *scene, Object *ob, ListBase *nurb, } } else { - if (!derivedFinal) { + if (!r_dm_final) { /* makeDisplistCurveTypes could be used for beveling, where derived mesh * is totally unnecessary, so we could stop modifiers applying * when we found constructive modifier but derived mesh is unwanted result @@ -1033,7 +1035,7 @@ static void curve_calc_modifiers_post(Scene *scene, Object *ob, ListBase *nurb, } } - if (derivedFinal) { + if (r_dm_final) { if (dm) { /* see: mesh_calc_modifiers */ if (dm->getNumTessFaces(dm) == 0) { @@ -1049,7 +1051,7 @@ static void curve_calc_modifiers_post(Scene *scene, Object *ob, ListBase *nurb, CDDM_calc_normals_mapping_ex(dm, (dm->dirty & DM_DIRTY_NORMALS) ? false : true); } } - (*derivedFinal) = dm; + (*r_dm_final) = dm; } } @@ -1125,7 +1127,8 @@ static void add_orco_dm(Object *ob, DerivedMesh *dm, DerivedMesh *orcodm) DM_add_vert_layer(dm, CD_ORCO, CD_ASSIGN, orco); } -static void curve_calc_orcodm(Scene *scene, Object *ob, DerivedMesh *derivedFinal, int forRender, int renderResolution) +static void curve_calc_orcodm(Scene *scene, Object *ob, DerivedMesh *dm_final, + const bool for_render, const bool use_render_resolution) { /* this function represents logic of mesh's orcodm calculation * for displist-based objects @@ -1135,18 +1138,18 @@ static void curve_calc_orcodm(Scene *scene, Object *ob, DerivedMesh *derivedFina ModifierData *pretessellatePoint; Curve *cu = ob->data; int required_mode; - int editmode = (!forRender && (cu->editnurb || cu->editfont)); + const bool editmode = (!for_render && (cu->editnurb || cu->editfont)); DerivedMesh *ndm, *orcodm = NULL; ModifierApplyFlag app_flag = MOD_APPLY_ORCO; - if (renderResolution) { + if (use_render_resolution) { app_flag |= MOD_APPLY_RENDER; required_mode = eModifierMode_Render; } else required_mode = eModifierMode_Realtime; - pretessellatePoint = curve_get_tessellate_point(scene, ob, renderResolution, editmode); + pretessellatePoint = curve_get_tessellate_point(scene, ob, use_render_resolution, editmode); if (editmode) required_mode |= eModifierMode_Editmode; @@ -1186,13 +1189,14 @@ static void curve_calc_orcodm(Scene *scene, Object *ob, DerivedMesh *derivedFina } /* add an orco layer if needed */ - add_orco_dm(ob, derivedFinal, orcodm); + add_orco_dm(ob, dm_final, orcodm); orcodm->release(orcodm); } void BKE_displist_make_surf(Scene *scene, Object *ob, ListBase *dispbase, - DerivedMesh **derivedFinal, int forRender, int forOrco, int renderResolution) + DerivedMesh **r_dm_final, + const bool for_render, const bool for_orco, const bool use_render_resolution) { ListBase nubase = {NULL, NULL}; Nurb *nu; @@ -1201,21 +1205,21 @@ void BKE_displist_make_surf(Scene *scene, Object *ob, ListBase *dispbase, float *data; int len; - if (!forRender && cu->editnurb) { + if (!for_render && cu->editnurb) { BKE_nurbList_duplicate(&nubase, BKE_curve_editNurbs_get(cu)); } else { BKE_nurbList_duplicate(&nubase, &cu->nurb); } - if (!forOrco) - curve_calc_modifiers_pre(scene, ob, &nubase, forRender, renderResolution); + if (!for_orco) + curve_calc_modifiers_pre(scene, ob, &nubase, for_render, use_render_resolution); for (nu = nubase.first; nu; nu = nu->next) { - if (forRender || nu->hide == 0) { + if (for_render || nu->hide == 0) { int resolu = nu->resolu, resolv = nu->resolv; - if (renderResolution) { + if (use_render_resolution) { if (cu->resolu_ren) resolu = cu->resolu_ren; if (cu->resolv_ren) @@ -1274,9 +1278,9 @@ void BKE_displist_make_surf(Scene *scene, Object *ob, ListBase *dispbase, } } - if (!forOrco) { - curve_calc_modifiers_post(scene, ob, &nubase, dispbase, derivedFinal, - forRender, renderResolution); + if (!for_orco) { + curve_calc_modifiers_post(scene, ob, &nubase, dispbase, r_dm_final, + for_render, use_render_resolution); } BKE_nurbList_free(&nubase); @@ -1361,7 +1365,8 @@ static void fillBevelCap(Nurb *nu, DispList *dlb, float *prev_fp, ListBase *disp } static void do_makeDispListCurveTypes(Scene *scene, Object *ob, ListBase *dispbase, - DerivedMesh **derivedFinal, int forRender, int forOrco, int renderResolution) + DerivedMesh **r_dm_final, + const bool for_render, const bool for_orco, const bool use_render_resolution) { Curve *cu = ob->data; @@ -1369,7 +1374,7 @@ static void do_makeDispListCurveTypes(Scene *scene, Object *ob, ListBase *dispba if (!ELEM3(ob->type, OB_SURF, OB_CURVE, OB_FONT)) return; if (ob->type == OB_SURF) { - BKE_displist_make_surf(scene, ob, dispbase, derivedFinal, forRender, forOrco, renderResolution); + BKE_displist_make_surf(scene, ob, dispbase, r_dm_final, for_render, for_orco, use_render_resolution); } else if (ELEM(ob->type, OB_CURVE, OB_FONT)) { ListBase dlbev; @@ -1381,7 +1386,7 @@ static void do_makeDispListCurveTypes(Scene *scene, Object *ob, ListBase *dispba * If the calculation happens for orco, we should never free data which * was needed before and only not needed for orco calculation. */ - if (!forOrco) { + if (!for_orco) { if (ob->curve_cache->path) free_path(ob->curve_cache->path); ob->curve_cache->path = NULL; } @@ -1393,17 +1398,17 @@ static void do_makeDispListCurveTypes(Scene *scene, Object *ob, ListBase *dispba BKE_nurbList_duplicate(&nubase, BKE_curve_nurbs_get(cu)); } - if (!forOrco) - curve_calc_modifiers_pre(scene, ob, &nubase, forRender, renderResolution); + if (!for_orco) + curve_calc_modifiers_pre(scene, ob, &nubase, for_render, use_render_resolution); - BKE_curve_bevelList_make(ob, &nubase, forRender != FALSE); + BKE_curve_bevelList_make(ob, &nubase, for_render != FALSE); /* If curve has no bevel will return nothing */ - BKE_curve_bevel_make(scene, ob, &dlbev, forRender, renderResolution); + BKE_curve_bevel_make(scene, ob, &dlbev, for_render, use_render_resolution); /* no bevel or extrude, and no width correction? */ if (!dlbev.first && cu->width == 1.0f) { - curve_to_displist(cu, &nubase, dispbase, forRender, renderResolution); + curve_to_displist(cu, &nubase, dispbase, for_render, use_render_resolution); } else { float widfac = cu->width - 1.0f; @@ -1578,7 +1583,7 @@ static void do_makeDispListCurveTypes(Scene *scene, Object *ob, ListBase *dispba curve_to_filledpoly(cu, &nubase, dispbase); } - if (!forOrco) { + if (!for_orco) { if ((cu->flag & CU_PATH) || DAG_get_eval_flags_for_object(scene, ob) & DAG_EVAL_NEED_CURVE_PATH) { @@ -1586,8 +1591,8 @@ static void do_makeDispListCurveTypes(Scene *scene, Object *ob, ListBase *dispba } } - if (!forOrco) - curve_calc_modifiers_post(scene, ob, &nubase, dispbase, derivedFinal, forRender, renderResolution); + if (!for_orco) + curve_calc_modifiers_post(scene, ob, &nubase, dispbase, r_dm_final, for_render, use_render_resolution); if (cu->flag & CU_DEFORM_FILL && !ob->derivedFinal) { curve_to_filledpoly(cu, &nubase, dispbase); @@ -1597,7 +1602,7 @@ static void do_makeDispListCurveTypes(Scene *scene, Object *ob, ListBase *dispba } } -void BKE_displist_make_curveTypes(Scene *scene, Object *ob, int forOrco) +void BKE_displist_make_curveTypes(Scene *scene, Object *ob, bool for_orco) { ListBase *dispbase; @@ -1615,19 +1620,19 @@ void BKE_displist_make_curveTypes(Scene *scene, Object *ob, int forOrco) dispbase = &(ob->curve_cache->disp); - do_makeDispListCurveTypes(scene, ob, dispbase, &ob->derivedFinal, 0, forOrco, 0); + do_makeDispListCurveTypes(scene, ob, dispbase, &ob->derivedFinal, 0, for_orco, 0); boundbox_displist_object(ob); } void BKE_displist_make_curveTypes_forRender(Scene *scene, Object *ob, ListBase *dispbase, - DerivedMesh **derivedFinal, int forOrco, int renderResolution) + DerivedMesh **r_dm_final, const bool for_orco, const bool use_render_resolution) { if (ob->curve_cache == NULL) { ob->curve_cache = MEM_callocN(sizeof(CurveCache), "CurveCache for MBall"); } - do_makeDispListCurveTypes(scene, ob, dispbase, derivedFinal, 1, forOrco, renderResolution); + do_makeDispListCurveTypes(scene, ob, dispbase, r_dm_final, true, for_orco, use_render_resolution); } void BKE_displist_make_curveTypes_forOrco(struct Scene *scene, struct Object *ob, struct ListBase *dispbase) @@ -1640,18 +1645,20 @@ void BKE_displist_make_curveTypes_forOrco(struct Scene *scene, struct Object *ob } /* add Orco layer to the displist object which has got derived mesh and return orco */ -float *BKE_displist_make_orco(Scene *scene, Object *ob, DerivedMesh *derivedFinal, int forRender, int renderResolution) +float *BKE_displist_make_orco(Scene *scene, Object *ob, DerivedMesh *dm_final, + const bool for_render, + const bool use_render_resolution) { float *orco; - if (derivedFinal == NULL) - derivedFinal = ob->derivedFinal; + if (dm_final == NULL) + dm_final = ob->derivedFinal; - if (!derivedFinal->getVertDataArray(derivedFinal, CD_ORCO)) { - curve_calc_orcodm(scene, ob, derivedFinal, forRender, renderResolution); + if (!dm_final->getVertDataArray(dm_final, CD_ORCO)) { + curve_calc_orcodm(scene, ob, dm_final, for_render, use_render_resolution); } - orco = derivedFinal->getVertDataArray(derivedFinal, CD_ORCO); + orco = dm_final->getVertDataArray(dm_final, CD_ORCO); if (orco) { orco = MEM_dupallocN(orco); |