Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source/blender/alembic/intern/alembic_capi.cc1
-rw-r--r--source/blender/blenkernel/BKE_anim.h14
-rw-r--r--source/blender/blenkernel/BKE_screen.h8
-rw-r--r--source/blender/blenkernel/intern/object_dupli.c56
-rw-r--r--source/blender/blenkernel/intern/scene.c2
-rw-r--r--source/blender/blenkernel/intern/screen.c76
-rw-r--r--source/blender/blenkernel/intern/sequencer.c2
-rw-r--r--source/blender/blenkernel/intern/softbody.c24
-rw-r--r--source/blender/editors/curve/editcurve_add.c7
-rw-r--r--source/blender/editors/gpencil/gpencil_utils.c4
-rw-r--r--source/blender/editors/include/ED_object.h4
-rw-r--r--source/blender/editors/mesh/editmesh_add.c49
-rw-r--r--source/blender/editors/object/object_add.c114
-rw-r--r--source/blender/editors/object/object_constraint.c7
-rw-r--r--source/blender/editors/object/object_hook.c4
-rw-r--r--source/blender/editors/render/render_internal.c21
-rw-r--r--source/blender/editors/space_outliner/outliner_collections.c2
-rw-r--r--source/blender/editors/space_view3d/space_view3d.c24
-rw-r--r--source/blender/editors/space_view3d/view3d_draw.c1
-rw-r--r--source/blender/editors/space_view3d/view3d_header.c154
-rw-r--r--source/blender/editors/space_view3d/view3d_ops.c1
-rw-r--r--source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp1
-rw-r--r--source/blender/makesdna/DNA_layer_types.h2
-rw-r--r--source/blender/makesdna/DNA_object_types.h2
-rw-r--r--source/blender/makesdna/DNA_scene_types.h4
-rw-r--r--source/blender/makesdna/DNA_view3d_types.h8
-rw-r--r--source/blender/makesrna/intern/rna_object.c6
-rw-r--r--source/blender/makesrna/intern/rna_scene.c41
-rw-r--r--source/blender/makesrna/intern/rna_space.c49
-rw-r--r--source/blender/render/extern/include/RE_pipeline.h6
-rw-r--r--source/blender/render/intern/include/render_types.h1
-rw-r--r--source/blender/render/intern/source/external_engine.c1
-rw-r--r--source/blender/render/intern/source/pipeline.c19
-rw-r--r--source/creator/creator_args.c4
34 files changed, 103 insertions, 616 deletions
diff --git a/source/blender/alembic/intern/alembic_capi.cc b/source/blender/alembic/intern/alembic_capi.cc
index bd470f1a794..e295b85afd2 100644
--- a/source/blender/alembic/intern/alembic_capi.cc
+++ b/source/blender/alembic/intern/alembic_capi.cc
@@ -845,7 +845,6 @@ static void import_endjob(void *user_data)
for (iter = data->readers.begin(); iter != data->readers.end(); ++iter) {
Object *ob = (*iter)->object();
- ob->lay = data->scene->lay;
BKE_collection_object_add(data->bmain, lc->collection, ob);
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;
diff --git a/source/blender/editors/curve/editcurve_add.c b/source/blender/editors/curve/editcurve_add.c
index 7f788b447f6..71b4091bccc 100644
--- a/source/blender/editors/curve/editcurve_add.c
+++ b/source/blender/editors/curve/editcurve_add.c
@@ -478,14 +478,13 @@ static int curvesurf_prim_add(bContext *C, wmOperator *op, int type, int isSurf)
Nurb *nu;
bool newob = false;
bool enter_editmode;
- unsigned int layer;
float dia;
float loc[3], rot[3];
float mat[4][4];
WM_operator_view3d_unit_defaults(C, op);
- if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL))
+ if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, NULL))
return OPERATOR_CANCELLED;
if (!isSurf) { /* adding curve */
@@ -493,7 +492,7 @@ static int curvesurf_prim_add(bContext *C, wmOperator *op, int type, int isSurf)
const char *name = get_curve_defname(type);
Curve *cu;
- obedit = ED_object_add_type(C, OB_CURVE, name, loc, rot, true, layer);
+ obedit = ED_object_add_type(C, OB_CURVE, name, loc, rot, true);
newob = true;
cu = (Curve *)obedit->data;
@@ -509,7 +508,7 @@ static int curvesurf_prim_add(bContext *C, wmOperator *op, int type, int isSurf)
else { /* adding surface */
if (obedit == NULL || obedit->type != OB_SURF) {
const char *name = get_surf_defname(type);
- obedit = ED_object_add_type(C, OB_SURF, name, loc, rot, true, layer);
+ obedit = ED_object_add_type(C, OB_SURF, name, loc, rot, true);
newob = true;
}
else {
diff --git a/source/blender/editors/gpencil/gpencil_utils.c b/source/blender/editors/gpencil/gpencil_utils.c
index 1db4777ad98..b78c292236a 100644
--- a/source/blender/editors/gpencil/gpencil_utils.c
+++ b/source/blender/editors/gpencil/gpencil_utils.c
@@ -1165,11 +1165,11 @@ void ED_gpencil_reset_layers_parent(Depsgraph *depsgraph, Object *obact, bGPdata
/* GP Object Stuff */
/* Helper function to create new OB_GPENCIL Object */
-Object *ED_add_gpencil_object(bContext *C, Scene *scene, const float loc[3])
+Object *ED_add_gpencil_object(bContext *C, Scene *UNUSED(scene), const float loc[3])
{
float rot[3] = {0.0f};
- Object *ob = ED_object_add_type(C, OB_GPENCIL, NULL, loc, rot, false, scene->lay);
+ Object *ob = ED_object_add_type(C, OB_GPENCIL, NULL, loc, rot, false);
/* define size */
BKE_object_obdata_size_init(ob, GP_OBGPENCIL_DEFAULT_SIZE);
diff --git a/source/blender/editors/include/ED_object.h b/source/blender/editors/include/ED_object.h
index a39523983ba..3fd520810ea 100644
--- a/source/blender/editors/include/ED_object.h
+++ b/source/blender/editors/include/ED_object.h
@@ -183,12 +183,12 @@ void ED_object_add_generic_props(struct wmOperatorType *ot, bool do_editmode);
void ED_object_add_mesh_props(struct wmOperatorType *ot);
bool ED_object_add_generic_get_opts(struct bContext *C, struct wmOperator *op, const char view_align_axis,
float loc[3], float rot[3],
- bool *enter_editmode, unsigned int *layer, bool *is_view_aligned);
+ bool *enter_editmode, bool *is_view_aligned);
struct Object *ED_object_add_type(
struct bContext *C,
int type, const char *name, const float loc[3], const float rot[3],
- bool enter_editmode, unsigned int layer)
+ bool enter_editmode)
ATTR_NONNULL(1) ATTR_RETURNS_NONNULL;
void ED_object_single_users(struct Main *bmain, struct Scene *scene, const bool full, const bool copy_groups);
diff --git a/source/blender/editors/mesh/editmesh_add.c b/source/blender/editors/mesh/editmesh_add.c
index 66ad057e3ec..b2f0ecc55c6 100644
--- a/source/blender/editors/mesh/editmesh_add.c
+++ b/source/blender/editors/mesh/editmesh_add.c
@@ -67,14 +67,14 @@ typedef struct MakePrimitiveData {
static Object *make_prim_init(
bContext *C, const char *idname,
- const float loc[3], const float rot[3], const unsigned int layer,
+ const float loc[3], const float rot[3],
MakePrimitiveData *r_creation_data)
{
Object *obedit = CTX_data_edit_object(C);
r_creation_data->was_editmode = false;
if (obedit == NULL || obedit->type != OB_MESH) {
- obedit = ED_object_add_type(C, OB_MESH, idname, loc, rot, false, layer);
+ obedit = ED_object_add_type(C, OB_MESH, idname, loc, rot, false);
/* create editmode */
ED_object_editmode_enter(C, EM_IGNORE_LAYER); /* rare cases the active layer is messed up */
@@ -112,12 +112,11 @@ static int add_primitive_plane_exec(bContext *C, wmOperator *op)
BMEditMesh *em;
float loc[3], rot[3];
bool enter_editmode;
- unsigned int layer;
const bool calc_uvs = RNA_boolean_get(op->ptr, "calc_uvs");
WM_operator_view3d_unit_defaults(C, op);
- ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL);
- obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Plane"), loc, rot, layer, &creation_data);
+ ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, NULL);
+ obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Plane"), loc, rot, &creation_data);
em = BKE_editmesh_from_object(obedit);
if (calc_uvs) {
@@ -163,12 +162,11 @@ static int add_primitive_cube_exec(bContext *C, wmOperator *op)
BMEditMesh *em;
float loc[3], rot[3];
bool enter_editmode;
- unsigned int layer;
const bool calc_uvs = RNA_boolean_get(op->ptr, "calc_uvs");
WM_operator_view3d_unit_defaults(C, op);
- ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL);
- obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Cube"), loc, rot, layer, &creation_data);
+ ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, NULL);
+ obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Cube"), loc, rot, &creation_data);
em = BKE_editmesh_from_object(obedit);
if (calc_uvs) {
@@ -222,15 +220,14 @@ static int add_primitive_circle_exec(bContext *C, wmOperator *op)
float loc[3], rot[3];
bool enter_editmode;
int cap_end, cap_tri;
- unsigned int layer;
const bool calc_uvs = RNA_boolean_get(op->ptr, "calc_uvs");
cap_end = RNA_enum_get(op->ptr, "fill_type");
cap_tri = (cap_end == 2);
WM_operator_view3d_unit_defaults(C, op);
- ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL);
- obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Circle"), loc, rot, layer, &creation_data);
+ ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, NULL);
+ obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Circle"), loc, rot, &creation_data);
em = BKE_editmesh_from_object(obedit);
if (calc_uvs) {
@@ -281,15 +278,14 @@ static int add_primitive_cylinder_exec(bContext *C, wmOperator *op)
BMEditMesh *em;
float loc[3], rot[3];
bool enter_editmode;
- unsigned int layer;
const int end_fill_type = RNA_enum_get(op->ptr, "end_fill_type");
const bool cap_end = (end_fill_type != 0);
const bool cap_tri = (end_fill_type == 2);
const bool calc_uvs = RNA_boolean_get(op->ptr, "calc_uvs");
WM_operator_view3d_unit_defaults(C, op);
- ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL);
- obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Cylinder"), loc, rot, layer, &creation_data);
+ ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, NULL);
+ obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Cylinder"), loc, rot, &creation_data);
em = BKE_editmesh_from_object(obedit);
if (calc_uvs) {
@@ -344,15 +340,14 @@ static int add_primitive_cone_exec(bContext *C, wmOperator *op)
BMEditMesh *em;
float loc[3], rot[3];
bool enter_editmode;
- unsigned int layer;
const int end_fill_type = RNA_enum_get(op->ptr, "end_fill_type");
const bool cap_end = (end_fill_type != 0);
const bool cap_tri = (end_fill_type == 2);
const bool calc_uvs = RNA_boolean_get(op->ptr, "calc_uvs");
WM_operator_view3d_unit_defaults(C, op);
- ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL);
- obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Cone"), loc, rot, layer, &creation_data);
+ ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, NULL);
+ obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Cone"), loc, rot, &creation_data);
em = BKE_editmesh_from_object(obedit);
if (calc_uvs) {
@@ -406,12 +401,11 @@ static int add_primitive_grid_exec(bContext *C, wmOperator *op)
BMEditMesh *em;
float loc[3], rot[3];
bool enter_editmode;
- unsigned int layer;
const bool calc_uvs = RNA_boolean_get(op->ptr, "calc_uvs");
WM_operator_view3d_unit_defaults(C, op);
- ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL);
- obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Grid"), loc, rot, layer, &creation_data);
+ ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, NULL);
+ obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Grid"), loc, rot, &creation_data);
em = BKE_editmesh_from_object(obedit);
if (calc_uvs) {
@@ -466,13 +460,12 @@ static int add_primitive_monkey_exec(bContext *C, wmOperator *op)
float loc[3], rot[3];
float dia;
bool enter_editmode;
- unsigned int layer;
const bool calc_uvs = RNA_boolean_get(op->ptr, "calc_uvs");
WM_operator_view3d_unit_defaults(C, op);
- ED_object_add_generic_get_opts(C, op, 'Y', loc, rot, &enter_editmode, &layer, NULL);
+ ED_object_add_generic_get_opts(C, op, 'Y', loc, rot, &enter_editmode, NULL);
- obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Suzanne"), loc, rot, layer, &creation_data);
+ obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Suzanne"), loc, rot, &creation_data);
dia = RNA_float_get(op->ptr, "radius");
mul_mat3_m4_fl(creation_data.mat, dia);
@@ -521,12 +514,11 @@ static int add_primitive_uvsphere_exec(bContext *C, wmOperator *op)
BMEditMesh *em;
float loc[3], rot[3];
bool enter_editmode;
- unsigned int layer;
const bool calc_uvs = RNA_boolean_get(op->ptr, "calc_uvs");
WM_operator_view3d_unit_defaults(C, op);
- ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL);
- obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Sphere"), loc, rot, layer, &creation_data);
+ ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, NULL);
+ obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Sphere"), loc, rot, &creation_data);
em = BKE_editmesh_from_object(obedit);
if (calc_uvs) {
@@ -577,12 +569,11 @@ static int add_primitive_icosphere_exec(bContext *C, wmOperator *op)
BMEditMesh *em;
float loc[3], rot[3];
bool enter_editmode;
- unsigned int layer;
const bool calc_uvs = RNA_boolean_get(op->ptr, "calc_uvs");
WM_operator_view3d_unit_defaults(C, op);
- ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL);
- obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Icosphere"), loc, rot, layer, &creation_data);
+ ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, NULL);
+ obedit = make_prim_init(C, CTX_DATA_(BLT_I18NCONTEXT_ID_MESH, "Icosphere"), loc, rot, &creation_data);
em = BKE_editmesh_from_object(obedit);
if (calc_uvs) {
diff --git a/source/blender/editors/object/object_add.c b/source/blender/editors/object/object_add.c
index 80ce7f26905..db22f719cab 100644
--- a/source/blender/editors/object/object_add.c
+++ b/source/blender/editors/object/object_add.c
@@ -301,9 +301,6 @@ void ED_object_add_generic_props(wmOperatorType *ot, bool do_editmode)
"Rotation", "Rotation for the newly added object",
DEG2RADF(-360.0f), DEG2RADF(360.0f));
RNA_def_property_flag(prop, PROP_SKIP_SAVE);
-
- prop = RNA_def_boolean_layer_member(ot->srna, "layers", 20, NULL, "Layer", "");
- RNA_def_property_flag(prop, PROP_HIDDEN | PROP_SKIP_SAVE);
}
void ED_object_add_mesh_props(wmOperatorType *ot)
@@ -313,10 +310,8 @@ void ED_object_add_mesh_props(wmOperatorType *ot)
bool ED_object_add_generic_get_opts(bContext *C, wmOperator *op, const char view_align_axis,
float loc[3], float rot[3],
- bool *enter_editmode, unsigned int *layer, bool *is_view_aligned)
+ bool *enter_editmode, bool *is_view_aligned)
{
- View3D *v3d = CTX_wm_view3d(C);
- unsigned int _layer;
PropertyRNA *prop;
/* Switch to Edit mode? optional prop */
@@ -333,37 +328,6 @@ bool ED_object_add_generic_get_opts(bContext *C, wmOperator *op, const char view
}
}
- /* Get layers! */
- {
- int a;
- bool layer_values[20];
- if (!layer)
- layer = &_layer;
-
- prop = RNA_struct_find_property(op->ptr, "layers");
- if (RNA_property_is_set(op->ptr, prop)) {
- RNA_property_boolean_get_array(op->ptr, prop, layer_values);
- *layer = 0;
- for (a = 0; a < 20; a++) {
- if (layer_values[a])
- *layer |= (1 << a);
- }
- }
- else {
- Scene *scene = CTX_data_scene(C);
- *layer = BKE_screen_view3d_layer_active_ex(v3d, scene, false);
- for (a = 0; a < 20; a++) {
- layer_values[a] = (*layer & (1 << a)) != 0;
- }
- RNA_property_boolean_set_array(op->ptr, prop, layer_values);
- }
-
- /* in local view we additionally add local view layers,
- * not part of operator properties */
- if (v3d && v3d->localvd)
- *layer |= v3d->lay;
- }
-
/* Location! */
{
float _loc[3];
@@ -405,11 +369,6 @@ bool ED_object_add_generic_get_opts(bContext *C, wmOperator *op, const char view
RNA_float_get_array(op->ptr, "rotation", rot);
}
- if (layer && *layer == 0) {
- BKE_report(op->reports, RPT_ERROR, "Property 'layer' has no values set");
- return false;
- }
-
return true;
}
@@ -419,7 +378,7 @@ Object *ED_object_add_type(
bContext *C,
int type, const char *name,
const float loc[3], const float rot[3],
- bool enter_editmode, unsigned int UNUSED(layer))
+ bool enter_editmode)
{
Main *bmain = CTX_data_main(C);
Scene *scene = CTX_data_scene(C);
@@ -431,7 +390,7 @@ Object *ED_object_add_type(
ED_object_editmode_exit(C, EM_FREEDATA | EM_WAITCURSOR);
}
- /* deselects all, sets scene->basact */
+ /* deselects all, sets active object */
ob = BKE_object_add(bmain, scene, view_layer, type, name);
/* editor level activate, notifiers */
ED_object_base_activate(C, view_layer->basact);
@@ -464,15 +423,14 @@ static int object_add_exec(bContext *C, wmOperator *op)
{
Object *ob;
bool enter_editmode;
- unsigned int layer;
float loc[3], rot[3], radius;
WM_operator_view3d_unit_defaults(C, op);
- if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL))
+ if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, NULL))
return OPERATOR_CANCELLED;
radius = RNA_float_get(op->ptr, "radius");
- ob = ED_object_add_type(C, RNA_enum_get(op->ptr, "type"), NULL, loc, rot, enter_editmode, layer);
+ ob = ED_object_add_type(C, RNA_enum_get(op->ptr, "type"), NULL, loc, rot, enter_editmode);
if (ob->type == OB_LATTICE) {
/* lattice is a special case!
@@ -516,19 +474,18 @@ static int lightprobe_add_exec(bContext *C, wmOperator *op)
LightProbe *probe;
int type;
bool enter_editmode;
- unsigned int layer;
float loc[3], rot[3];
float radius;
WM_operator_view3d_unit_defaults(C, op);
- if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL))
+ if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, NULL))
return OPERATOR_CANCELLED;
type = RNA_enum_get(op->ptr, "type");
radius = RNA_float_get(op->ptr, "radius");
const char *name = CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "Light Probe");
- ob = ED_object_add_type(C, OB_LIGHTPROBE, name, loc, rot, false, layer);
+ ob = ED_object_add_type(C, OB_LIGHTPROBE, name, loc, rot, false);
BKE_object_obdata_size_init(ob, radius);
probe = (LightProbe *)ob->data;
@@ -588,13 +545,12 @@ static int effector_add_exec(bContext *C, wmOperator *op)
Object *ob;
int type;
bool enter_editmode;
- unsigned int layer;
float loc[3], rot[3];
float mat[4][4];
float dia;
WM_operator_view3d_unit_defaults(C, op);
- if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL))
+ if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, NULL))
return OPERATOR_CANCELLED;
type = RNA_enum_get(op->ptr, "type");
@@ -603,7 +559,7 @@ static int effector_add_exec(bContext *C, wmOperator *op)
if (type == PFIELD_GUIDE) {
Curve *cu;
const char *name = CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "CurveGuide");
- ob = ED_object_add_type(C, OB_CURVE, name, loc, rot, false, layer);
+ ob = ED_object_add_type(C, OB_CURVE, name, loc, rot, false);
cu = ob->data;
cu->flag |= CU_PATH | CU_3D;
@@ -615,7 +571,7 @@ static int effector_add_exec(bContext *C, wmOperator *op)
}
else {
const char *name = CTX_DATA_(BLT_I18NCONTEXT_ID_OBJECT, "Field");
- ob = ED_object_add_type(C, OB_EMPTY, name, loc, rot, false, layer);
+ ob = ED_object_add_type(C, OB_EMPTY, name, loc, rot, false);
BKE_object_obdata_size_init(ob, dia);
if (ELEM(type, PFIELD_WIND, PFIELD_VORTEX))
ob->empty_drawtype = OB_SINGLE_ARROW;
@@ -658,16 +614,15 @@ static int object_camera_add_exec(bContext *C, wmOperator *op)
Object *ob;
Camera *cam;
bool enter_editmode;
- unsigned int layer;
float loc[3], rot[3];
/* force view align for cameras */
RNA_boolean_set(op->ptr, "view_align", true);
- if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL))
+ if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, NULL))
return OPERATOR_CANCELLED;
- ob = ED_object_add_type(C, OB_CAMERA, NULL, loc, rot, false, layer);
+ ob = ED_object_add_type(C, OB_CAMERA, NULL, loc, rot, false);
if (v3d) {
if (v3d->camera == NULL)
@@ -714,17 +669,16 @@ static int object_metaball_add_exec(bContext *C, wmOperator *op)
Object *obedit = CTX_data_edit_object(C);
bool newob = false;
bool enter_editmode;
- unsigned int layer;
float loc[3], rot[3];
float mat[4][4];
float dia;
WM_operator_view3d_unit_defaults(C, op);
- if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL))
+ if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, NULL))
return OPERATOR_CANCELLED;
if (obedit == NULL || obedit->type != OB_MBALL) {
- obedit = ED_object_add_type(C, OB_MBALL, NULL, loc, rot, true, layer);
+ obedit = ED_object_add_type(C, OB_MBALL, NULL, loc, rot, true);
newob = true;
}
else {
@@ -773,17 +727,16 @@ static int object_add_text_exec(bContext *C, wmOperator *op)
{
Object *obedit = CTX_data_edit_object(C);
bool enter_editmode;
- unsigned int layer;
float loc[3], rot[3];
WM_operator_view3d_unit_defaults(C, op);
- if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL))
+ if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, NULL))
return OPERATOR_CANCELLED;
if (obedit && obedit->type == OB_FONT)
return OPERATOR_CANCELLED;
- obedit = ED_object_add_type(C, OB_FONT, NULL, loc, rot, enter_editmode, layer);
+ obedit = ED_object_add_type(C, OB_FONT, NULL, loc, rot, enter_editmode);
BKE_object_obdata_size_init(obedit, RNA_float_get(op->ptr, "radius"));
WM_event_add_notifier(C, NC_OBJECT | ND_DRAW, obedit);
@@ -818,16 +771,15 @@ static int object_armature_add_exec(bContext *C, wmOperator *op)
RegionView3D *rv3d = CTX_wm_region_view3d(C);
bool newob = false;
bool enter_editmode;
- unsigned int layer;
float loc[3], rot[3], dia;
bool view_aligned = rv3d && (U.flag & USER_ADD_VIEWALIGNED);
WM_operator_view3d_unit_defaults(C, op);
- if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, &layer, NULL))
+ if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, &enter_editmode, NULL))
return OPERATOR_CANCELLED;
if ((obedit == NULL) || (obedit->type != OB_ARMATURE)) {
- obedit = ED_object_add_type(C, OB_ARMATURE, NULL, loc, rot, true, layer);
+ obedit = ED_object_add_type(C, OB_ARMATURE, NULL, loc, rot, true);
ED_object_editmode_enter(C, 0);
newob = true;
}
@@ -877,14 +829,13 @@ static int object_empty_add_exec(bContext *C, wmOperator *op)
{
Object *ob;
int type = RNA_enum_get(op->ptr, "type");
- unsigned int layer;
float loc[3], rot[3];
WM_operator_view3d_unit_defaults(C, op);
- if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, NULL, &layer, NULL))
+ if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, NULL, NULL))
return OPERATOR_CANCELLED;
- ob = ED_object_add_type(C, OB_EMPTY, NULL, loc, rot, false, layer);
+ ob = ED_object_add_type(C, OB_EMPTY, NULL, loc, rot, false);
BKE_object_empty_draw_type_set(ob, type);
BKE_object_obdata_size_init(ob, RNA_float_get(op->ptr, "radius"));
@@ -939,13 +890,12 @@ static int empty_drop_named_image_invoke(bContext *C, wmOperator *op, const wmEv
}
else {
/* add new empty */
- unsigned int layer;
float rot[3];
- if (!ED_object_add_generic_get_opts(C, op, 'Z', NULL, rot, NULL, &layer, NULL))
+ if (!ED_object_add_generic_get_opts(C, op, 'Z', NULL, rot, NULL, NULL))
return OPERATOR_CANCELLED;
- ob = ED_object_add_type(C, OB_EMPTY, NULL, NULL, rot, false, layer);
+ ob = ED_object_add_type(C, OB_EMPTY, NULL, NULL, rot, false);
/* add under the mouse */
ED_object_location_from_view(C, ob->loc);
@@ -997,7 +947,6 @@ static int object_gpencil_add_exec(bContext *C, wmOperator *op)
const int type = RNA_enum_get(op->ptr, "type");
float loc[3], rot[3];
- unsigned int layer;
bool newob = false;
/* Hack: Force view-align to be on by default
@@ -1012,7 +961,7 @@ static int object_gpencil_add_exec(bContext *C, wmOperator *op)
/* Note: We use 'Y' here (not 'Z'), as */
WM_operator_view3d_unit_defaults(C, op);
- if (!ED_object_add_generic_get_opts(C, op, 'Y', loc, rot, NULL, &layer, NULL))
+ if (!ED_object_add_generic_get_opts(C, op, 'Y', loc, rot, NULL, NULL))
return OPERATOR_CANCELLED;
/* add new object if not currently editing a GP object,
@@ -1022,7 +971,7 @@ static int object_gpencil_add_exec(bContext *C, wmOperator *op)
const char *ob_name = (type == GP_MONKEY) ? "Suzanne" : NULL;
float radius = RNA_float_get(op->ptr, "radius");
- ob = ED_object_add_type(C, OB_GPENCIL, ob_name, loc, rot, true, layer);
+ ob = ED_object_add_type(C, OB_GPENCIL, ob_name, loc, rot, true);
gpd = ob->data;
newob = true;
@@ -1121,14 +1070,13 @@ static int object_light_add_exec(bContext *C, wmOperator *op)
Object *ob;
Lamp *la;
int type = RNA_enum_get(op->ptr, "type");
- unsigned int layer;
float loc[3], rot[3];
WM_operator_view3d_unit_defaults(C, op);
- if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, NULL, &layer, NULL))
+ if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, NULL, NULL))
return OPERATOR_CANCELLED;
- ob = ED_object_add_type(C, OB_LAMP, get_light_defname(type), loc, rot, false, layer);
+ ob = ED_object_add_type(C, OB_LAMP, get_light_defname(type), loc, rot, false);
float size = RNA_float_get(op->ptr, "radius");
/* Better defaults for light size. */
@@ -1185,7 +1133,6 @@ static int collection_instance_add_exec(bContext *C, wmOperator *op)
{
Main *bmain = CTX_data_main(C);
Collection *collection;
- unsigned int layer;
float loc[3], rot[3];
if (RNA_struct_property_is_set(op->ptr, "name")) {
@@ -1207,7 +1154,7 @@ static int collection_instance_add_exec(bContext *C, wmOperator *op)
else
collection = BLI_findlink(&CTX_data_main(C)->collection, RNA_enum_get(op->ptr, "collection"));
- if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, NULL, &layer, NULL))
+ if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, NULL, NULL))
return OPERATOR_CANCELLED;
if (collection) {
@@ -1220,7 +1167,7 @@ static int collection_instance_add_exec(bContext *C, wmOperator *op)
active_lc = BKE_layer_collection_activate_parent(view_layer, active_lc);
}
- Object *ob = ED_object_add_type(C, OB_EMPTY, collection->id.name + 2, loc, rot, false, layer);
+ Object *ob = ED_object_add_type(C, OB_EMPTY, collection->id.name + 2, loc, rot, false);
ob->dup_group = collection;
ob->transflag |= OB_DUPLICOLLECTION;
id_us_plus(&collection->id);
@@ -1268,14 +1215,13 @@ void OBJECT_OT_collection_instance_add(wmOperatorType *ot)
static int object_speaker_add_exec(bContext *C, wmOperator *op)
{
Object *ob;
- unsigned int layer;
float loc[3], rot[3];
Scene *scene = CTX_data_scene(C);
- if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, NULL, &layer, NULL))
+ if (!ED_object_add_generic_get_opts(C, op, 'Z', loc, rot, NULL, NULL))
return OPERATOR_CANCELLED;
- ob = ED_object_add_type(C, OB_SPEAKER, NULL, loc, rot, false, layer);
+ ob = ED_object_add_type(C, OB_SPEAKER, NULL, loc, rot, false);
/* to make it easier to start using this immediately in NLA, a default sound clip is created
* ready to be moved around to retime the sound and/or make new sound clips
diff --git a/source/blender/editors/object/object_constraint.c b/source/blender/editors/object/object_constraint.c
index ef81d0c5a0f..d2a85de8fe1 100644
--- a/source/blender/editors/object/object_constraint.c
+++ b/source/blender/editors/object/object_constraint.c
@@ -1699,17 +1699,12 @@ static bool get_new_constraint_target(bContext *C, int con_type, Object **tar_ob
Main *bmain = CTX_data_main(C);
Scene *scene = CTX_data_scene(C);
ViewLayer *view_layer = CTX_data_view_layer(C);
- Base *base = BASACT(view_layer), *newbase = NULL;
+ Base *base = BASACT(view_layer);
Object *obt;
/* add new target object */
obt = BKE_object_add(bmain, scene, view_layer, OB_EMPTY, NULL);
- /* set layers OK */
- newbase = BASACT(view_layer);
- newbase->lay = base->lay;
- obt->lay = newbase->lay;
-
/* transform cent to global coords for loc */
if (pchanact) {
/* since by default, IK targets the tip of the last bone, use the tip of the active PoseChannel
diff --git a/source/blender/editors/object/object_hook.c b/source/blender/editors/object/object_hook.c
index 392fde4ceec..ff9cc65180b 100644
--- a/source/blender/editors/object/object_hook.c
+++ b/source/blender/editors/object/object_hook.c
@@ -450,14 +450,12 @@ static bool hook_op_edit_poll(bContext *C)
static Object *add_hook_object_new(Main *bmain, Scene *scene, ViewLayer *view_layer, Object *obedit)
{
- Base *base, *basedit;
+ Base *basedit;
Object *ob;
ob = BKE_object_add(bmain, scene, view_layer, OB_EMPTY, NULL);
basedit = BKE_view_layer_base_find(view_layer, obedit);
- base = view_layer->basact;
- base->lay = ob->lay = obedit->lay;
BLI_assert(view_layer->basact->object == ob);
/* icky, BKE_object_add sets new base as active.
diff --git a/source/blender/editors/render/render_internal.c b/source/blender/editors/render/render_internal.c
index 9632eec5420..f3072163f1f 100644
--- a/source/blender/editors/render/render_internal.c
+++ b/source/blender/editors/render/render_internal.c
@@ -111,7 +111,6 @@ typedef struct RenderJob {
Depsgraph *depsgraph;
Render *re;
struct Object *camera_override;
- int lay_override;
bool v3d_override;
bool anim, write_still;
Image *image;
@@ -307,7 +306,6 @@ static int screen_render_exec(bContext *C, wmOperator *op)
Image *ima;
View3D *v3d = CTX_wm_view3d(C);
Main *mainp = CTX_data_main(C);
- unsigned int lay_override;
const bool is_animation = RNA_boolean_get(op->ptr, "animation");
const bool is_write_still = RNA_boolean_get(op->ptr, "write_still");
struct Object *camera_override = v3d ? V3D_CAMERA_LOCAL(v3d) : NULL;
@@ -326,7 +324,6 @@ static int screen_render_exec(bContext *C, wmOperator *op)
}
re = RE_NewSceneRender(scene);
- lay_override = (v3d && v3d->lay != scene->lay) ? v3d->lay : 0;
G.is_break = false;
RE_test_break_cb(re, NULL, render_break);
@@ -345,9 +342,9 @@ static int screen_render_exec(bContext *C, wmOperator *op)
BLI_threaded_malloc_begin();
if (is_animation)
- RE_BlenderAnim(re, mainp, scene, camera_override, lay_override, scene->r.sfra, scene->r.efra, scene->r.frame_step);
+ RE_BlenderAnim(re, mainp, scene, camera_override, scene->r.sfra, scene->r.efra, scene->r.frame_step);
else
- RE_BlenderFrame(re, mainp, scene, single_layer, camera_override, lay_override, scene->r.cfra, is_write_still);
+ RE_BlenderFrame(re, mainp, scene, single_layer, camera_override, scene->r.cfra, is_write_still);
BLI_threaded_malloc_end();
RE_SetReports(re, NULL);
@@ -620,9 +617,9 @@ static void render_startjob(void *rjv, short *stop, short *do_update, float *pro
RE_SetReports(rj->re, rj->reports);
if (rj->anim)
- RE_BlenderAnim(rj->re, rj->main, rj->scene, rj->camera_override, rj->lay_override, rj->scene->r.sfra, rj->scene->r.efra, rj->scene->r.frame_step);
+ RE_BlenderAnim(rj->re, rj->main, rj->scene, rj->camera_override, rj->scene->r.sfra, rj->scene->r.efra, rj->scene->r.frame_step);
else
- RE_BlenderFrame(rj->re, rj->main, rj->scene, rj->single_layer, rj->camera_override, rj->lay_override, rj->scene->r.cfra, rj->write_still);
+ RE_BlenderFrame(rj->re, rj->main, rj->scene, rj->single_layer, rj->camera_override, rj->scene->r.cfra, rj->write_still);
RE_SetReports(rj->re, NULL);
}
@@ -928,7 +925,6 @@ static int screen_render_invoke(bContext *C, wmOperator *op, const wmEvent *even
/* TODO(sergey): Render engine should be using own depsgraph. */
rj->depsgraph = CTX_data_depsgraph(C);
rj->camera_override = camera_override;
- rj->lay_override = 0;
rj->anim = is_animation;
rj->write_still = is_write_still && !is_animation;
rj->iuser.scene = scene;
@@ -948,15 +944,8 @@ static int screen_render_invoke(bContext *C, wmOperator *op, const wmEvent *even
}
if (v3d) {
- if (scene->lay != v3d->lay) {
- rj->lay_override = v3d->lay;
+ if (camera_override && camera_override != scene->camera)
rj->v3d_override = true;
- }
- else if (camera_override && camera_override != scene->camera)
- rj->v3d_override = true;
-
- if (v3d->localvd)
- rj->lay_override |= v3d->localvd->lay;
}
/* Lock the user interface depending on render settings. */
diff --git a/source/blender/editors/space_outliner/outliner_collections.c b/source/blender/editors/space_outliner/outliner_collections.c
index 34128942382..f0feb7515ba 100644
--- a/source/blender/editors/space_outliner/outliner_collections.c
+++ b/source/blender/editors/space_outliner/outliner_collections.c
@@ -557,7 +557,7 @@ static int collection_instance_exec(bContext *C, wmOperator *UNUSED(op))
/* Effectively instance the collections. */
GSET_ITER(collections_to_edit_iter, data.collections_to_edit) {
Collection *collection = BLI_gsetIterator_getKey(&collections_to_edit_iter);
- Object *ob = ED_object_add_type(C, OB_EMPTY, collection->id.name + 2, scene->cursor.location, NULL, false, scene->layact);
+ Object *ob = ED_object_add_type(C, OB_EMPTY, collection->id.name + 2, scene->cursor.location, NULL, false);
ob->dup_group = collection;
ob->transflag |= OB_DUPLICOLLECTION;
id_lib_extern(&collection->id);
diff --git a/source/blender/editors/space_view3d/space_view3d.c b/source/blender/editors/space_view3d/space_view3d.c
index 674f4e1f778..a8e530540a1 100644
--- a/source/blender/editors/space_view3d/space_view3d.c
+++ b/source/blender/editors/space_view3d/space_view3d.c
@@ -316,9 +316,7 @@ static SpaceLink *view3d_new(const ScrArea *UNUSED(sa), const Scene *scene)
v3d = MEM_callocN(sizeof(View3D), "initview3d");
v3d->spacetype = SPACE_VIEW3D;
- v3d->lay = v3d->layact = 1;
if (scene) {
- v3d->lay = v3d->layact = scene->lay;
v3d->camera = scene->camera;
}
v3d->scenelock = true;
@@ -432,7 +430,6 @@ static SpaceLink *view3d_duplicate(SpaceLink *sl)
if (v3dn->localvd) {
v3dn->localvd = NULL;
v3dn->properties_storage = NULL;
- v3dn->lay = v3do->localvd->lay & 0xFFFFFF;
}
if (v3dn->shading.type == OB_RENDER)
@@ -766,25 +763,6 @@ static void *view3d_main_region_duplicate(void *poin)
return NULL;
}
-static void view3d_recalc_used_layers(ARegion *ar, wmNotifier *wmn, const Scene *UNUSED(scene))
-{
- wmWindow *win = wmn->wm->winactive;
- unsigned int lay_used = 0;
-
- if (!win) return;
-
- const bScreen *screen = WM_window_get_active_screen(win);
- for (ScrArea *sa = screen->areabase.first; sa; sa = sa->next) {
- if (sa->spacetype == SPACE_VIEW3D) {
- if (BLI_findindex(&sa->regionbase, ar) != -1) {
- View3D *v3d = sa->spacedata.first;
- v3d->lay_used = lay_used;
- break;
- }
- }
- }
-}
-
static void view3d_main_region_listener(
wmWindow *UNUSED(win), ScrArea *sa, ARegion *ar,
wmNotifier *wmn, const Scene *scene)
@@ -821,8 +799,6 @@ static void view3d_main_region_listener(
switch (wmn->data) {
case ND_SCENEBROWSE:
case ND_LAYER_CONTENT:
- if (wmn->reference)
- view3d_recalc_used_layers(ar, wmn, wmn->reference);
ED_region_tag_redraw(ar);
WM_gizmomap_tag_refresh(gzmap);
break;
diff --git a/source/blender/editors/space_view3d/view3d_draw.c b/source/blender/editors/space_view3d/view3d_draw.c
index fe1877f62fa..1091b7a7f63 100644
--- a/source/blender/editors/space_view3d/view3d_draw.c
+++ b/source/blender/editors/space_view3d/view3d_draw.c
@@ -1598,7 +1598,6 @@ ImBuf *ED_view3d_draw_offscreen_imbuf_simple(
ar.regiontype = RGN_TYPE_WINDOW;
v3d.camera = camera;
- v3d.lay = scene->lay;
v3d.shading.type = drawtype;
v3d.flag2 = V3D_RENDER_OVERRIDE;
diff --git a/source/blender/editors/space_view3d/view3d_header.c b/source/blender/editors/space_view3d/view3d_header.c
index 83cabd2a60e..854bf01b158 100644
--- a/source/blender/editors/space_view3d/view3d_header.c
+++ b/source/blender/editors/space_view3d/view3d_header.c
@@ -69,160 +69,6 @@ static void do_view3d_header_buttons(bContext *C, void *arg, int event);
#define B_SEL_EDGE 111
#define B_SEL_FACE 112
-/* XXX quickly ported across */
-static void handle_view3d_lock(bContext *C)
-{
- Scene *scene = CTX_data_scene(C);
- ScrArea *sa = CTX_wm_area(C);
- View3D *v3d = CTX_wm_view3d(C);
-
- if (v3d != NULL && sa != NULL) {
- if (v3d->localvd == NULL && v3d->scenelock && sa->spacetype == SPACE_VIEW3D) {
- /* copy to scene */
- scene->lay = v3d->lay;
- scene->layact = v3d->layact;
- scene->camera = v3d->camera;
-
- /* notifiers for scene update */
- WM_event_add_notifier(C, NC_SCENE | ND_LAYER, scene);
- }
- }
-}
-
-/**
- * layer code is on three levels actually:
- * - here for operator
- * - uiTemplateLayers in interface/ code for buttons
- * - ED_view3d_view_layer_set for RNA
- */
-static void view3d_layers_editmode_ensure(View3D *v3d, Object *obedit)
-{
- /* sanity check - when in editmode disallow switching the editmode layer off since its confusing
- * an alternative would be to always draw the editmode object. */
- if (obedit && (obedit->lay & v3d->lay) == 0) {
- int bit;
- for (bit = 0; bit < 32; bit++) {
- if (obedit->lay & (1u << bit)) {
- v3d->lay |= (1u << bit);
- break;
- }
- }
- }
-}
-
-static int view3d_layers_exec(bContext *C, wmOperator *op)
-{
- ScrArea *sa = CTX_wm_area(C);
- View3D *v3d = sa->spacedata.first;
- Object *obedit = CTX_data_edit_object(C);
- int nr = RNA_int_get(op->ptr, "nr");
- const bool toggle = RNA_boolean_get(op->ptr, "toggle");
-
- if (nr < 0)
- return OPERATOR_CANCELLED;
-
- if (nr == 0) {
- /* all layers */
- if (!v3d->lay_prev)
- v3d->lay_prev = 1;
-
- if (toggle && v3d->lay == ((1 << 20) - 1)) {
- /* return to active layer only */
- v3d->lay = v3d->lay_prev;
-
- view3d_layers_editmode_ensure(v3d, obedit);
- }
- else {
- v3d->lay_prev = v3d->lay;
- v3d->lay |= (1 << 20) - 1;
- }
- }
- else {
- int bit;
- nr--;
-
- if (RNA_boolean_get(op->ptr, "extend")) {
- if (toggle && v3d->lay & (1 << nr) && (v3d->lay & ~(1 << nr)))
- v3d->lay &= ~(1 << nr);
- else
- v3d->lay |= (1 << nr);
- }
- else {
- v3d->lay = (1 << nr);
- }
-
- view3d_layers_editmode_ensure(v3d, obedit);
-
- /* set active layer, ensure to always have one */
- if (v3d->lay & (1 << nr))
- v3d->layact = 1 << nr;
- else if ((v3d->lay & v3d->layact) == 0) {
- for (bit = 0; bit < 32; bit++) {
- if (v3d->lay & (1u << bit)) {
- v3d->layact = (1u << bit);
- break;
- }
- }
- }
- }
-
- if (v3d->scenelock) handle_view3d_lock(C);
-
- DEG_on_visible_update(CTX_data_main(C), false);
-
- ED_area_tag_redraw(sa);
-
- return OPERATOR_FINISHED;
-}
-
-/* applies shift and alt, lazy coding or ok? :) */
-/* the local per-keymap-entry keymap will solve it */
-static int view3d_layers_invoke(bContext *C, wmOperator *op, const wmEvent *event)
-{
- if (event->ctrl || event->oskey)
- return OPERATOR_PASS_THROUGH;
-
- if (event->shift)
- RNA_boolean_set(op->ptr, "extend", true);
- else
- RNA_boolean_set(op->ptr, "extend", false);
-
- if (event->alt) {
- const int nr = RNA_int_get(op->ptr, "nr") + 10;
- RNA_int_set(op->ptr, "nr", nr);
- }
- view3d_layers_exec(C, op);
-
- return OPERATOR_FINISHED;
-}
-
-static bool view3d_layers_poll(bContext *C)
-{
- return (ED_operator_view3d_active(C) && CTX_wm_view3d(C)->localvd == NULL);
-}
-
-void VIEW3D_OT_layers(wmOperatorType *ot)
-{
- /* identifiers */
- ot->name = "Layers";
- ot->description = "Toggle layer(s) visibility";
- ot->idname = "VIEW3D_OT_layers";
-
- /* api callbacks */
- ot->invoke = view3d_layers_invoke;
- ot->exec = view3d_layers_exec;
- ot->poll = view3d_layers_poll;
-
- /* flags */
- ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
-
- RNA_def_int(ot->srna, "nr", 1, 0, 20, "Number", "The layer number to set, zero for all layers", 0, 20);
- RNA_def_boolean(ot->srna, "extend", 0, "Extend", "Add this layer to the current view layers");
- RNA_def_boolean(ot->srna, "toggle", 1, "Toggle", "Toggle the layer");
-}
-
-/** \} */
-
/* -------------------------------------------------------------------- */
/** \name Toggle Matcap Flip Operator
* \{ */
diff --git a/source/blender/editors/space_view3d/view3d_ops.c b/source/blender/editors/space_view3d/view3d_ops.c
index c53382a60ad..bda3c337d04 100644
--- a/source/blender/editors/space_view3d/view3d_ops.c
+++ b/source/blender/editors/space_view3d/view3d_ops.c
@@ -208,7 +208,6 @@ void view3d_operatortypes(void)
WM_operatortype_append(VIEW3D_OT_walk);
WM_operatortype_append(VIEW3D_OT_navigate);
WM_operatortype_append(VIEW3D_OT_ruler);
- WM_operatortype_append(VIEW3D_OT_layers);
WM_operatortype_append(VIEW3D_OT_copybuffer);
WM_operatortype_append(VIEW3D_OT_pastebuffer);
diff --git a/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp b/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp
index 07776bfc1b7..610b81c97a5 100644
--- a/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp
+++ b/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp
@@ -860,7 +860,6 @@ Object *BlenderStrokeRenderer::NewMesh() const
ob = BKE_object_add_only_object(freestyle_bmain, OB_MESH, name);
BLI_snprintf(name, MAX_ID_NAME, "0%08xME", mesh_id);
ob->data = BKE_mesh_add(freestyle_bmain, name);
- ob->lay = 1;
Collection *collection_master = BKE_collection_master(freestyle_scene);
BKE_collection_object_add(freestyle_bmain, collection_master, ob);
diff --git a/source/blender/makesdna/DNA_layer_types.h b/source/blender/makesdna/DNA_layer_types.h
index e6b1bda7cf5..3dcd31fbd7b 100644
--- a/source/blender/makesdna/DNA_layer_types.h
+++ b/source/blender/makesdna/DNA_layer_types.h
@@ -40,7 +40,7 @@ typedef struct Base {
short pad;
short sx, sy;
struct Object *object;
- unsigned int lay;
+ unsigned int lay DNA_DEPRECATED;
int flag_legacy;
} Base;
diff --git a/source/blender/makesdna/DNA_object_types.h b/source/blender/makesdna/DNA_object_types.h
index 1f6f7cd9bf2..a000a083ff6 100644
--- a/source/blender/makesdna/DNA_object_types.h
+++ b/source/blender/makesdna/DNA_object_types.h
@@ -216,7 +216,7 @@ typedef struct Object {
*/
float imat_ren[4][4];
- unsigned int lay; /* copy of Base's layer in the scene */
+ unsigned int lay DNA_DEPRECATED; /* copy of Base's layer in the scene */
short flag; /* copy of Base */
short colbits DNA_DEPRECATED; /* deprecated, use 'matbits' */
diff --git a/source/blender/makesdna/DNA_scene_types.h b/source/blender/makesdna/DNA_scene_types.h
index 63a6a191b9e..eb1a17a044c 100644
--- a/source/blender/makesdna/DNA_scene_types.h
+++ b/source/blender/makesdna/DNA_scene_types.h
@@ -1488,8 +1488,8 @@ typedef struct Scene {
View3DCursor cursor; /* 3d cursor location */
- unsigned int lay; /* bitflags for layer visibility */
- int layact; /* active layer */
+ unsigned int lay DNA_DEPRECATED; /* bitflags for layer visibility */
+ int layact DNA_DEPRECATED; /* active layer */
unsigned int pad1;
short flag; /* various settings */
diff --git a/source/blender/makesdna/DNA_view3d_types.h b/source/blender/makesdna/DNA_view3d_types.h
index 65b6192b9c8..bf5a5cf846f 100644
--- a/source/blender/makesdna/DNA_view3d_types.h
+++ b/source/blender/makesdna/DNA_view3d_types.h
@@ -216,8 +216,8 @@ typedef struct View3D {
char bundle_drawtype; /* display style for bundle */
char pad[3];
- unsigned int lay_prev; /* for active layer toggle */
- unsigned int lay_used; /* used while drawing */
+ unsigned int lay_prev DNA_DEPRECATED; /* for active layer toggle */
+ unsigned int lay_used DNA_DEPRECATED; /* used while drawing */
int object_type_exclude_viewport;
int object_type_exclude_select;
@@ -232,8 +232,8 @@ typedef struct View3D {
char ob_centre_bone[64]; /* optional string for armature bone to define center, MAXBONENAME */
- unsigned int lay;
- int layact;
+ unsigned int lay DNA_DEPRECATED;
+ int layact DNA_DEPRECATED;
short ob_centre_cursor; /* optional bool for 3d cursor to define center */
short scenelock;
diff --git a/source/blender/makesrna/intern/rna_object.c b/source/blender/makesrna/intern/rna_object.c
index 6fbd7abaa39..086c914c6ae 100644
--- a/source/blender/makesrna/intern/rna_object.c
+++ b/source/blender/makesrna/intern/rna_object.c
@@ -2153,12 +2153,6 @@ static void rna_def_object(BlenderRNA *brna)
RNA_def_property_clear_flag(prop, PROP_EDITABLE);
RNA_def_property_ui_text(prop, "Mode", "Object interaction mode");
- prop = RNA_def_property(srna, "layers_local_view", PROP_BOOLEAN, PROP_LAYER_MEMBER);
- RNA_def_property_boolean_sdna(prop, NULL, "lay", 0x01000000);
- RNA_def_property_array(prop, 8);
- RNA_def_property_clear_flag(prop, PROP_EDITABLE);
- RNA_def_property_ui_text(prop, "Local View Layers", "3D local view layers the object is on");
-
/* for data access */
prop = RNA_def_property(srna, "bound_box", PROP_FLOAT, PROP_NONE);
RNA_def_property_multi_array(prop, 2, boundbox_dimsize);
diff --git a/source/blender/makesrna/intern/rna_scene.c b/source/blender/makesrna/intern/rna_scene.c
index 84910b6b1b3..7f2eeba9850 100644
--- a/source/blender/makesrna/intern/rna_scene.c
+++ b/source/blender/makesrna/intern/rna_scene.c
@@ -653,20 +653,6 @@ void rna_Scene_set_update(Main *bmain, Scene *UNUSED(scene), PointerRNA *ptr)
}
}
-static void rna_Scene_layer_set(PointerRNA *ptr, const bool *values)
-{
- Scene *scene = (Scene *)ptr->data;
-
- scene->lay = ED_view3d_view_layer_set(scene->lay, values, &scene->layact);
-}
-
-static int rna_Scene_active_layer_get(PointerRNA *ptr)
-{
- Scene *scene = (Scene *)ptr->data;
-
- return (int)(log(scene->layact) / M_LN2);
-}
-
static void rna_Scene_view3d_update(Main *bmain, Scene *UNUSED(scene_unused), PointerRNA *ptr)
{
wmWindowManager *wm = bmain->wm.first;
@@ -675,17 +661,6 @@ static void rna_Scene_view3d_update(Main *bmain, Scene *UNUSED(scene_unused), Po
WM_windows_scene_data_sync(&wm->windows, scene);
}
-static void rna_Scene_layer_update(Main *bmain, Scene *UNUSED(scene), PointerRNA *UNUSED(ptr))
-{
- /* XXX We would need do_time=true here, else we can have update issues like [#36289]...
- * However, this has too much drawbacks (like slower layer switch, undesired updates...).
- * That's TODO for future DAG updates.
- */
- DEG_on_visible_update(bmain, false);
-
- /* No need to sync scene data here (WM_windows_scene_data_sync), handled through notifier. */
-}
-
static void rna_Scene_fps_update(Main *UNUSED(bmain), Scene *scene, PointerRNA *UNUSED(ptr))
{
BKE_sound_update_fps(scene);
@@ -6013,22 +5988,6 @@ void RNA_def_scene(BlenderRNA *brna)
NULL, NULL, NULL, NULL);
rna_def_scene_objects(brna, prop);
- /* Layers */
- prop = RNA_def_property(srna, "layers", PROP_BOOLEAN, PROP_LAYER_MEMBER);
- /* this seems to be too much trouble with depsgraph updates/etc. currently (20110420) */
- RNA_def_property_clear_flag(prop, PROP_ANIMATABLE);
- RNA_def_property_boolean_sdna(prop, NULL, "lay", 1);
- RNA_def_property_array(prop, 20);
- RNA_def_property_boolean_funcs(prop, NULL, "rna_Scene_layer_set");
- RNA_def_property_ui_text(prop, "Layers", "Visible layers - Shift-Click/Drag to select multiple layers");
- RNA_def_property_update(prop, NC_SCENE | ND_LAYER, "rna_Scene_layer_update");
-
- /* active layer */
- prop = RNA_def_property(srna, "active_layer", PROP_INT, PROP_NONE);
- RNA_def_property_clear_flag(prop, PROP_ANIMATABLE | PROP_EDITABLE);
- RNA_def_property_int_funcs(prop, "rna_Scene_active_layer_get", NULL, NULL);
- RNA_def_property_ui_text(prop, "Active Layer", "Active scene layer index");
-
/* Frame Range Stuff */
prop = RNA_def_property(srna, "frame_current", PROP_INT, PROP_TIME);
RNA_def_property_clear_flag(prop, PROP_ANIMATABLE);
diff --git a/source/blender/makesrna/intern/rna_space.c b/source/blender/makesrna/intern/rna_space.c
index 2e50111b01b..9629b4a877b 100644
--- a/source/blender/makesrna/intern/rna_space.c
+++ b/source/blender/makesrna/intern/rna_space.c
@@ -516,9 +516,12 @@ static void rna_SpaceView3D_lock_camera_and_layers_set(PointerRNA *ptr, bool val
if (value) {
Scene *scene = ED_screen_scene_find(sc, G_MAIN->wm.first);
- int bit;
+ /* TODO: restore local view. */
+#if 0
+ int bit;
v3d->lay = scene->lay;
+
/* seek for layact */
bit = 0;
while (bit < 32) {
@@ -528,6 +531,7 @@ static void rna_SpaceView3D_lock_camera_and_layers_set(PointerRNA *ptr, bool val
}
bit++;
}
+#endif
v3d->camera = scene->camera;
}
}
@@ -582,25 +586,6 @@ static float rna_View3DOverlay_GridScaleUnit_get(PointerRNA *ptr)
return ED_view3d_grid_scale(scene, v3d, NULL);
}
-static void rna_SpaceView3D_layer_set(PointerRNA *ptr, const bool *values)
-{
- View3D *v3d = (View3D *)(ptr->data);
-
- v3d->lay = ED_view3d_view_layer_set(v3d->lay, values, &v3d->layact);
-}
-
-static int rna_SpaceView3D_active_layer_get(PointerRNA *ptr)
-{
- View3D *v3d = (View3D *)(ptr->data);
-
- return (int)(log(v3d->layact) / M_LN2);
-}
-
-static void rna_SpaceView3D_layer_update(Main *bmain, Scene *UNUSED(scene), PointerRNA *UNUSED(ptr))
-{
- DEG_on_visible_update(bmain, false);
-}
-
static PointerRNA rna_SpaceView3D_region_3d_get(PointerRNA *ptr)
{
View3D *v3d = (View3D *)(ptr->data);
@@ -3106,30 +3091,6 @@ static void rna_def_space_view3d(BlenderRNA *brna)
RNA_def_property_ui_icon(prop, ICON_LOCKVIEW_OFF, 1);
RNA_def_property_update(prop, NC_SPACE | ND_SPACE_VIEW3D, NULL);
- prop = RNA_def_property(srna, "layers", PROP_BOOLEAN, PROP_LAYER_MEMBER);
- RNA_def_property_boolean_sdna(prop, NULL, "lay", 1);
- RNA_def_property_array(prop, 20);
- RNA_def_property_boolean_funcs(prop, NULL, "rna_SpaceView3D_layer_set");
- RNA_def_property_ui_text(prop, "Visible Layers", "Layers visible in this 3D View");
- RNA_def_property_update(prop, NC_SPACE | ND_SPACE_VIEW3D, "rna_SpaceView3D_layer_update");
-
- prop = RNA_def_property(srna, "active_layer", PROP_INT, PROP_NONE);
- RNA_def_property_clear_flag(prop, PROP_ANIMATABLE | PROP_EDITABLE);
- RNA_def_property_int_funcs(prop, "rna_SpaceView3D_active_layer_get", NULL, NULL);
- RNA_def_property_ui_text(prop, "Active Layer", "Active 3D view layer index");
-
- prop = RNA_def_property(srna, "layers_local_view", PROP_BOOLEAN, PROP_LAYER_MEMBER);
- RNA_def_property_boolean_sdna(prop, NULL, "lay", 0x01000000);
- RNA_def_property_array(prop, 8);
- RNA_def_property_clear_flag(prop, PROP_EDITABLE);
- RNA_def_property_ui_text(prop, "Local View Layers", "Local view layers visible in this 3D View");
-
- prop = RNA_def_property(srna, "layers_used", PROP_BOOLEAN, PROP_LAYER_MEMBER);
- RNA_def_property_boolean_sdna(prop, NULL, "lay_used", 1);
- RNA_def_property_array(prop, 20);
- RNA_def_property_clear_flag(prop, PROP_EDITABLE);
- RNA_def_property_ui_text(prop, "Used Layers", "Layers that contain something");
-
prop = RNA_def_property(srna, "region_3d", PROP_POINTER, PROP_NONE);
RNA_def_property_struct_type(prop, "RegionView3D");
RNA_def_property_pointer_funcs(prop, "rna_SpaceView3D_region_3d_get", NULL, NULL, NULL);
diff --git a/source/blender/render/extern/include/RE_pipeline.h b/source/blender/render/extern/include/RE_pipeline.h
index df8953857ee..cf52bb11d59 100644
--- a/source/blender/render/extern/include/RE_pipeline.h
+++ b/source/blender/render/extern/include/RE_pipeline.h
@@ -263,7 +263,7 @@ void RE_GetViewPlane(struct Render *re, rctf *r_viewplane, rcti *r_disprect);
/* make or free the dbase */
void RE_Database_CameraOnly(
struct Render *re, struct Main *bmain, struct Scene *scene,
- unsigned int lay, int use_camera_view);
+ int use_camera_view);
/* set the render threads based on the commandline and autothreads setting */
void RE_init_threadcount(Render *re);
@@ -278,9 +278,9 @@ bool RE_WriteRenderViewsMovie(
/* only RE_NewRender() needed, main Blender render calls */
void RE_BlenderFrame(struct Render *re, struct Main *bmain, struct Scene *scene,
struct ViewLayer *single_layer, struct Object *camera_override,
- unsigned int lay_override, int frame, const bool write_still);
+ int frame, const bool write_still);
void RE_BlenderAnim(struct Render *re, struct Main *bmain, struct Scene *scene, struct Object *camera_override,
- unsigned int lay_override, int sfra, int efra, int tfra);
+ int sfra, int efra, int tfra);
#ifdef WITH_FREESTYLE
void RE_RenderFreestyleStrokes(struct Render *re, struct Main *bmain, struct Scene *scene, int render);
void RE_RenderFreestyleExternal(struct Render *re);
diff --git a/source/blender/render/intern/include/render_types.h b/source/blender/render/intern/include/render_types.h
index 5d5d12f028a..1467f8d9804 100644
--- a/source/blender/render/intern/include/render_types.h
+++ b/source/blender/render/intern/include/render_types.h
@@ -118,7 +118,6 @@ struct Render {
ListBase view_layers;
int active_view_layer;
struct Object *camera_override;
- unsigned int lay, layer_override;
ThreadRWMutex partsmutex;
ListBase parts;
diff --git a/source/blender/render/intern/source/external_engine.c b/source/blender/render/intern/source/external_engine.c
index 09ab3e39d5f..2623d2c2c0f 100644
--- a/source/blender/render/intern/source/external_engine.c
+++ b/source/blender/render/intern/source/external_engine.c
@@ -702,7 +702,6 @@ int RE_engine_render(Render *re, int do_all)
if (re->r.scemode & R_BUTS_PREVIEW)
engine->flag |= RE_ENGINE_PREVIEW;
engine->camera_override = re->camera_override;
- engine->layer_override = re->layer_override;
engine->resolution_x = re->winx;
engine->resolution_y = re->winy;
diff --git a/source/blender/render/intern/source/pipeline.c b/source/blender/render/intern/source/pipeline.c
index c6b372a53e5..b6fe518b906 100644
--- a/source/blender/render/intern/source/pipeline.c
+++ b/source/blender/render/intern/source/pipeline.c
@@ -1202,7 +1202,6 @@ static void render_scene(Render *re, Scene *sce, int cfra)
/* still unsure entity this... */
resc->main = re->main;
resc->scene = sce;
- resc->lay = sce->lay;
/* ensure scene has depsgraph, base flags etc OK */
BKE_scene_set_background(re->main, sce);
@@ -1911,7 +1910,7 @@ const char *RE_GetActiveRenderView(Render *re)
/* evaluating scene options for general Blender render */
static int render_initialize_from_main(Render *re, RenderData *rd, Main *bmain, Scene *scene,
- ViewLayer *single_layer, Object *camera_override, unsigned int lay_override,
+ ViewLayer *single_layer, Object *camera_override,
int anim, int anim_init)
{
int winx, winy;
@@ -1941,9 +1940,6 @@ static int render_initialize_from_main(Render *re, RenderData *rd, Main *bmain,
re->main = bmain;
re->scene = scene;
re->camera_override = camera_override;
- re->lay = lay_override ? lay_override : scene->lay;
- re->layer_override = lay_override;
- re->i.localview = (re->lay & 0xFF000000) != 0;
re->viewname[0] = '\0';
/* not too nice, but it survives anim-border render */
@@ -1992,7 +1988,7 @@ void RE_SetReports(Render *re, ReportList *reports)
/* general Blender frame render call */
void RE_BlenderFrame(Render *re, Main *bmain, Scene *scene, ViewLayer *single_layer, Object *camera_override,
- unsigned int lay_override, int frame, const bool write_still)
+ int frame, const bool write_still)
{
BLI_callback_exec(re->main, (ID *)scene, BLI_CB_EVT_RENDER_INIT);
@@ -2002,7 +1998,7 @@ void RE_BlenderFrame(Render *re, Main *bmain, Scene *scene, ViewLayer *single_la
scene->r.cfra = frame;
if (render_initialize_from_main(re, &scene->r, bmain, scene, single_layer,
- camera_override, lay_override, 0, 0))
+ camera_override, 0, 0))
{
MEM_reset_peak_memory();
@@ -2045,7 +2041,7 @@ void RE_BlenderFrame(Render *re, Main *bmain, Scene *scene, ViewLayer *single_la
void RE_RenderFreestyleStrokes(Render *re, Main *bmain, Scene *scene, int render)
{
re->result_ok= 0;
- if (render_initialize_from_main(re, &scene->r, bmain, scene, NULL, NULL, scene->lay, 0, 0)) {
+ if (render_initialize_from_main(re, &scene->r, bmain, scene, NULL, NULL, 0, 0)) {
if (render)
do_render_3d(re);
}
@@ -2347,7 +2343,7 @@ static void re_movie_free_all(Render *re, bMovieHandle *mh, int totvideos)
/* saves images to disk */
void RE_BlenderAnim(Render *re, Main *bmain, Scene *scene, Object *camera_override,
- unsigned int lay_override, int sfra, int efra, int tfra)
+ int sfra, int efra, int tfra)
{
RenderData rd = scene->r;
bMovieHandle *mh = NULL;
@@ -2361,7 +2357,7 @@ void RE_BlenderAnim(Render *re, Main *bmain, Scene *scene, Object *camera_overri
BLI_callback_exec(re->main, (ID *)scene, BLI_CB_EVT_RENDER_INIT);
/* do not fully call for each frame, it initializes & pops output window */
- if (!render_initialize_from_main(re, &rd, bmain, scene, NULL, camera_override, lay_override, 0, 1))
+ if (!render_initialize_from_main(re, &rd, bmain, scene, NULL, camera_override, 0, 1))
return;
if (is_movie) {
@@ -2448,7 +2444,7 @@ void RE_BlenderAnim(Render *re, Main *bmain, Scene *scene, Object *camera_overri
/* only border now, todo: camera lens. (ton) */
render_initialize_from_main(re, &rd, bmain, scene,
- NULL, camera_override, lay_override, 1, 0);
+ NULL, camera_override, 1, 0);
if (nfra != scene->r.cfra) {
/* Skip this frame, but could update for physics and particles system. */
@@ -2612,7 +2608,6 @@ void RE_PreviewRender(Render *re, Main *bmain, Scene *sce)
re->main = bmain;
re->scene = sce;
- re->lay = sce->lay;
camera = RE_GetCamera(re);
RE_SetCamera(re, camera);
diff --git a/source/creator/creator_args.c b/source/creator/creator_args.c
index 5e9cec660e1..d2f45071496 100644
--- a/source/creator/creator_args.c
+++ b/source/creator/creator_args.c
@@ -1409,7 +1409,7 @@ static int arg_handle_render_frame(int argc, const char **argv, void *data)
}
for (int frame = frame_range_arr[i][0]; frame <= frame_range_arr[i][1]; frame++) {
- RE_BlenderAnim(re, bmain, scene, NULL, scene->lay, frame, frame, scene->r.frame_step);
+ RE_BlenderAnim(re, bmain, scene, NULL, frame, frame, scene->r.frame_step);
}
}
RE_SetReports(re, NULL);
@@ -1443,7 +1443,7 @@ static int arg_handle_render_animation(int UNUSED(argc), const char **UNUSED(arg
BLI_threaded_malloc_begin();
BKE_reports_init(&reports, RPT_STORE);
RE_SetReports(re, &reports);
- RE_BlenderAnim(re, bmain, scene, NULL, scene->lay, scene->r.sfra, scene->r.efra, scene->r.frame_step);
+ RE_BlenderAnim(re, bmain, scene, NULL, scene->r.sfra, scene->r.efra, scene->r.frame_step);
RE_SetReports(re, NULL);
BKE_reports_clear(&reports);
BLI_threaded_malloc_end();