diff options
author | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2018-09-04 16:08:57 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2018-09-04 17:11:27 +0300 |
commit | fc115e1ab23a9c458ea1496f160e14009e68cd54 (patch) | |
tree | f61d7a4d8c09d5ebf6839299ec00998976f31f3f /source/blender/blenkernel | |
parent | 0f50caf5560f9c2f9af393eefdf2b209210dbfba (diff) |
Cleanup: remove legacy layer and dupli code.
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r-- | source/blender/blenkernel/BKE_anim.h | 14 | ||||
-rw-r--r-- | source/blender/blenkernel/BKE_screen.h | 8 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/object_dupli.c | 56 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/scene.c | 2 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/screen.c | 76 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/sequencer.c | 2 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/softbody.c | 24 |
7 files changed, 13 insertions, 169 deletions
diff --git a/source/blender/blenkernel/BKE_anim.h b/source/blender/blenkernel/BKE_anim.h index 2f7d0eaba03..998f0dd09b8 100644 --- a/source/blender/blenkernel/BKE_anim.h +++ b/source/blender/blenkernel/BKE_anim.h @@ -73,16 +73,6 @@ struct ListBase *object_duplilist(struct Depsgraph *depsgraph, struct Scene *sce void free_object_duplilist(struct ListBase *lb); int count_duplilist(struct Object *ob); -typedef struct DupliExtraData { - float obmat[4][4]; - unsigned int lay; -} DupliExtraData; - -typedef struct DupliApplyData { - int num_objects; - DupliExtraData *extra; -} DupliApplyData; - typedef struct DupliObject { struct DupliObject *next, *prev; struct Object *ob; @@ -103,8 +93,4 @@ typedef struct DupliObject { unsigned int random_id; } DupliObject; -DupliApplyData *duplilist_apply(struct Depsgraph *depsgraph, struct Object *ob, struct Scene *scene, struct ListBase *duplilist); -void duplilist_restore(struct ListBase *duplilist, DupliApplyData *apply_data); -void duplilist_free_apply_data(DupliApplyData *apply_data); - #endif diff --git a/source/blender/blenkernel/BKE_screen.h b/source/blender/blenkernel/BKE_screen.h index acf175b5ced..aaaaf620afa 100644 --- a/source/blender/blenkernel/BKE_screen.h +++ b/source/blender/blenkernel/BKE_screen.h @@ -339,13 +339,6 @@ struct ScrArea *BKE_screen_find_big_area(struct bScreen *sc, const int spacetype struct ScrArea *BKE_screen_area_map_find_area_xy(const struct ScrAreaMap *areamap, const int spacetype, int x, int y); struct ScrArea *BKE_screen_find_area_xy(struct bScreen *sc, const int spacetype, int x, int y); -unsigned int BKE_screen_view3d_layer_active_ex( - const struct View3D *v3d, const struct Scene *scene, bool use_localvd) ATTR_NONNULL(2); -unsigned int BKE_screen_view3d_layer_active( - const struct View3D *v3d, const struct Scene *scene) ATTR_NONNULL(2); - -unsigned int BKE_screen_view3d_layer_all(const struct bScreen *sc) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1); - void BKE_screen_gizmo_tag_refresh(struct bScreen *sc); void BKE_screen_view3d_sync(struct View3D *v3d, struct Scene *scene); @@ -362,7 +355,6 @@ void BKE_screen_view3d_shading_init(struct View3DShading *shading); /* screen */ void BKE_screen_free(struct bScreen *sc); void BKE_screen_area_map_free(struct ScrAreaMap *area_map) ATTR_NONNULL(); -unsigned int BKE_screen_visible_layers(struct bScreen *screen, struct Scene *scene); struct ScrEdge *BKE_screen_find_edge(struct bScreen *sc, struct ScrVert *v1, struct ScrVert *v2); void BKE_screen_sort_scrvert(struct ScrVert **v1, struct ScrVert **v2); diff --git a/source/blender/blenkernel/intern/object_dupli.c b/source/blender/blenkernel/intern/object_dupli.c index 9f6cdcd5179..b5c2e7f3d96 100644 --- a/source/blender/blenkernel/intern/object_dupli.c +++ b/source/blender/blenkernel/intern/object_dupli.c @@ -1259,59 +1259,3 @@ int count_duplilist(Object *ob) } return 1; } - -DupliApplyData *duplilist_apply(Depsgraph *depsgraph, Object *ob, Scene *scene, ListBase *duplilist) -{ - DupliApplyData *apply_data = NULL; - int num_objects = BLI_listbase_count(duplilist); - - if (num_objects > 0) { - DupliObject *dob; - int i; - apply_data = MEM_mallocN(sizeof(DupliApplyData), "DupliObject apply data"); - apply_data->num_objects = num_objects; - apply_data->extra = MEM_mallocN(sizeof(DupliExtraData) * (size_t) num_objects, - "DupliObject apply extra data"); - - for (dob = duplilist->first, i = 0; dob; dob = dob->next, ++i) { - /* make sure derivedmesh is calculated once, before drawing */ - if (scene && !(dob->ob->transflag & OB_DUPLICALCDERIVED) && dob->ob->type == OB_MESH) { - mesh_get_derived_final(depsgraph, scene, dob->ob, scene->customdata_mask); - dob->ob->transflag |= OB_DUPLICALCDERIVED; - } - } - - for (dob = duplilist->first, i = 0; dob; dob = dob->next, ++i) { - /* copy obmat from duplis */ - copy_m4_m4(apply_data->extra[i].obmat, dob->ob->obmat); - copy_m4_m4(dob->ob->obmat, dob->mat); - - /* copy layers from the main duplicator object */ - apply_data->extra[i].lay = dob->ob->lay; - dob->ob->lay = ob->lay; - } - } - return apply_data; -} - -void duplilist_restore(ListBase *duplilist, DupliApplyData *apply_data) -{ - DupliObject *dob; - int i; - /* Restore object matrices. - * NOTE: this has to happen in reverse order, since nested - * dupli objects can repeatedly override the obmat. - */ - for (dob = duplilist->last, i = apply_data->num_objects - 1; dob; dob = dob->prev, --i) { - copy_m4_m4(dob->ob->obmat, apply_data->extra[i].obmat); - dob->ob->transflag &= ~OB_DUPLICALCDERIVED; - - dob->ob->lay = apply_data->extra[i].lay; - } -} - -void duplilist_free_apply_data(DupliApplyData *apply_data) -{ - MEM_freeN(apply_data->extra); - MEM_freeN(apply_data); -} diff --git a/source/blender/blenkernel/intern/scene.c b/source/blender/blenkernel/intern/scene.c index 5f72036c3a8..44253bb90c5 100644 --- a/source/blender/blenkernel/intern/scene.c +++ b/source/blender/blenkernel/intern/scene.c @@ -546,8 +546,6 @@ void BKE_scene_init(Scene *sce) BLI_assert(MEMCMP_STRUCT_OFS_IS_ZERO(sce, id)); - sce->lay = sce->layact = 1; - sce->r.mode = R_OSA; sce->r.cfra = 1; sce->r.sfra = 1; diff --git a/source/blender/blenkernel/intern/screen.c b/source/blender/blenkernel/intern/screen.c index 58a47dc2822..299c9290eae 100644 --- a/source/blender/blenkernel/intern/screen.c +++ b/source/blender/blenkernel/intern/screen.c @@ -475,26 +475,6 @@ void BKE_screen_free(bScreen *sc) MEM_SAFE_FREE(sc->tool_tip); } -/* for depsgraph */ -unsigned int BKE_screen_visible_layers(bScreen *screen, Scene *scene) -{ - ScrArea *sa; - unsigned int layer = 0; - - if (screen) { - /* get all used view3d layers */ - for (sa = screen->areabase.first; sa; sa = sa->next) - if (sa->spacetype == SPACE_VIEW3D) - layer |= ((View3D *)sa->spacedata.first)->lay; - } - - if (!layer) - return scene->lay; - - return layer; -} - - /* ***************** Screen edges & verts ***************** */ ScrEdge *BKE_screen_find_edge(bScreen *sc, ScrVert *v1, ScrVert *v2) @@ -767,56 +747,9 @@ ScrArea *BKE_screen_find_area_xy(bScreen *sc, const int spacetype, int x, int y) return BKE_screen_area_map_find_area_xy(AREAMAP_FROM_SCREEN(sc), spacetype, x, y); } - -/** - * Utility function to get the active layer to use when adding new objects. - */ -unsigned int BKE_screen_view3d_layer_active_ex(const View3D *v3d, const Scene *scene, bool use_localvd) -{ - unsigned int lay; - if ((v3d == NULL) || (v3d->scenelock && !v3d->localvd)) { - lay = scene->layact; - } - else { - lay = v3d->layact; - } - - if (use_localvd) { - if (v3d && v3d->localvd) { - lay |= v3d->lay; - } - } - - return lay; -} -unsigned int BKE_screen_view3d_layer_active(const struct View3D *v3d, const struct Scene *scene) -{ - return BKE_screen_view3d_layer_active_ex(v3d, scene, true); -} - -/** - * Accumulate all visible layers on this screen. - */ -unsigned int BKE_screen_view3d_layer_all(const bScreen *sc) -{ - const ScrArea *sa; - unsigned int lay = 0; - for (sa = sc->areabase.first; sa; sa = sa->next) { - if (sa->spacetype == SPACE_VIEW3D) { - View3D *v3d = sa->spacedata.first; - lay |= v3d->lay; - } - } - - return lay; -} - void BKE_screen_view3d_sync(View3D *v3d, struct Scene *scene) { - int bit; - if (v3d->scenelock && v3d->localvd == NULL) { - v3d->lay = scene->lay; v3d->camera = scene->camera; if (v3d->camera == NULL) { @@ -830,15 +763,6 @@ void BKE_screen_view3d_sync(View3D *v3d, struct Scene *scene) } } } - - if ((v3d->lay & v3d->layact) == 0) { - for (bit = 0; bit < 32; bit++) { - if (v3d->lay & (1u << bit)) { - v3d->layact = (1u << bit); - break; - } - } - } } } diff --git a/source/blender/blenkernel/intern/sequencer.c b/source/blender/blenkernel/intern/sequencer.c index 936f13fe382..116e5be7477 100644 --- a/source/blender/blenkernel/intern/sequencer.c +++ b/source/blender/blenkernel/intern/sequencer.c @@ -3367,7 +3367,7 @@ static ImBuf *seq_render_scene_strip(const SeqRenderData *context, Sequence *seq if (re == NULL) re = RE_NewSceneRender(scene); - RE_BlenderFrame(re, context->bmain, scene, view_layer, camera, scene->lay, frame, false); + RE_BlenderFrame(re, context->bmain, scene, view_layer, camera, frame, false); /* restore previous state after it was toggled on & off by RE_BlenderFrame */ G.is_rendering = is_rendering; diff --git a/source/blender/blenkernel/intern/softbody.c b/source/blender/blenkernel/intern/softbody.c index 1f5cefd47d7..6904cab81e1 100644 --- a/source/blender/blenkernel/intern/softbody.c +++ b/source/blender/blenkernel/intern/softbody.c @@ -964,7 +964,7 @@ static int query_external_colliders(Depsgraph *depsgraph, Collection *collection /* +++ the aabb "force" section*/ -static int sb_detect_aabb_collisionCached(float UNUSED(force[3]), unsigned int UNUSED(par_layer), struct Object *vertexowner, float UNUSED(time)) +static int sb_detect_aabb_collisionCached(float UNUSED(force[3]), struct Object *vertexowner, float UNUSED(time)) { Object *ob; SoftBody *sb=vertexowner->soft; @@ -1025,7 +1025,7 @@ static int sb_detect_aabb_collisionCached(float UNUSED(force[3]), unsigned int U /* +++ the face external section*/ static int sb_detect_face_pointCached(float face_v1[3], float face_v2[3], float face_v3[3], float *damp, - float force[3], unsigned int UNUSED(par_layer), struct Object *vertexowner, float time) + float force[3], struct Object *vertexowner, float time) { Object *ob; GHash *hash; @@ -1126,7 +1126,7 @@ static int sb_detect_face_pointCached(float face_v1[3], float face_v2[3], float static int sb_detect_face_collisionCached(float face_v1[3], float face_v2[3], float face_v3[3], float *damp, - float force[3], unsigned int UNUSED(par_layer), struct Object *vertexowner, float time) + float force[3], struct Object *vertexowner, float time) { Object *ob; GHash *hash; @@ -1263,7 +1263,7 @@ static void scan_for_ext_face_forces(Object *ob, float timenow) zero_v3(feedback); if (sb_detect_face_collisionCached( sb->bpoint[bf->v1].pos, sb->bpoint[bf->v2].pos, sb->bpoint[bf->v3].pos, - &damp, feedback, ob->lay, ob, timenow)) + &damp, feedback, ob, timenow)) { madd_v3_v3fl(sb->bpoint[bf->v1].force, feedback, tune); madd_v3_v3fl(sb->bpoint[bf->v2].force, feedback, tune); @@ -1281,7 +1281,7 @@ static void scan_for_ext_face_forces(Object *ob, float timenow) zero_v3(feedback); if (sb_detect_face_pointCached( sb->bpoint[bf->v1].pos, sb->bpoint[bf->v2].pos, sb->bpoint[bf->v3].pos, - &damp, feedback, ob->lay, ob, timenow)) + &damp, feedback, ob, timenow)) { madd_v3_v3fl(sb->bpoint[bf->v1].force, feedback, tune); madd_v3_v3fl(sb->bpoint[bf->v2].force, feedback, tune); @@ -1310,7 +1310,7 @@ static void scan_for_ext_face_forces(Object *ob, float timenow) /* +++ the spring external section*/ static int sb_detect_edge_collisionCached(float edge_v1[3], float edge_v2[3], float *damp, - float force[3], unsigned int UNUSED(par_layer), struct Object *vertexowner, float time) + float force[3], struct Object *vertexowner, float time) { Object *ob; GHash *hash; @@ -1447,7 +1447,7 @@ static void _scan_for_ext_spring_forces(Scene *scene, Object *ob, float timenow, /* +++ springs colliding */ if (ob->softflag & OB_SB_EDGECOLL) { if ( sb_detect_edge_collisionCached (sb->bpoint[bs->v1].pos, sb->bpoint[bs->v2].pos, - &damp, feedback, ob->lay, ob, timenow)) { + &damp, feedback, ob, timenow)) { add_v3_v3(bs->ext_force, feedback); bs->flag |= BSF_INTERSECT; //bs->cf=damp; @@ -1606,7 +1606,7 @@ static int choose_winner(float*w, float* pos, float*a, float*b, float*c, float*c static int sb_detect_vertex_collisionCached( float opco[3], float facenormal[3], float *damp, - float force[3], unsigned int UNUSED(par_layer), struct Object *vertexowner, + float force[3], struct Object *vertexowner, float time, float vel[3], float *intrusion) { Object *ob= NULL; @@ -1802,8 +1802,8 @@ static int sb_deflect_face(Object *ob, float *actpos, float *facenormal, float * float s_actpos[3]; int deflected; copy_v3_v3(s_actpos, actpos); - deflected= sb_detect_vertex_collisionCached(s_actpos, facenormal, cf, force, ob->lay, ob, time, vel, intrusion); - //deflected= sb_detect_vertex_collisionCachedEx(s_actpos, facenormal, cf, force, ob->lay, ob, time, vel, intrusion); + deflected= sb_detect_vertex_collisionCached(s_actpos, facenormal, cf, force, ob, time, vel, intrusion); + //deflected= sb_detect_vertex_collisionCachedEx(s_actpos, facenormal, cf, force, ob, time, vel, intrusion); return(deflected); } @@ -2217,7 +2217,7 @@ static void softbody_calc_forcesEx(struct Depsgraph *depsgraph, Scene *scene, Ob if (do_deflector) { float defforce[3]; - do_deflector = sb_detect_aabb_collisionCached(defforce, ob->lay, ob, timenow); + do_deflector = sb_detect_aabb_collisionCached(defforce, ob, timenow); } sb_cf_threads_run(scene, ob, forcetime, timenow, sb->totpoint, NULL, effectors, do_deflector, fieldfactor, windfactor); @@ -2278,7 +2278,7 @@ static void softbody_calc_forces(struct Depsgraph *depsgraph, Scene *scene, Obje if (do_deflector) { float defforce[3]; - do_deflector = sb_detect_aabb_collisionCached(defforce, ob->lay, ob, timenow); + do_deflector = sb_detect_aabb_collisionCached(defforce, ob, timenow); } bp = sb->bpoint; |