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:
Diffstat (limited to 'source/blender/blenloader/intern')
-rw-r--r--source/blender/blenloader/intern/readfile.c120
-rw-r--r--source/blender/blenloader/intern/versioning_280.c116
-rw-r--r--source/blender/blenloader/intern/versioning_defaults.c6
-rw-r--r--source/blender/blenloader/intern/versioning_legacy.c2
-rw-r--r--source/blender/blenloader/intern/writefile.c30
5 files changed, 134 insertions, 140 deletions
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index 5cc58ff5843..065e0871a3d 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -252,7 +252,7 @@ static void *read_struct(FileData *fd, BHead *bh, const char *blockname);
static void direct_link_modifiers(FileData *fd, ListBase *lb);
static BHead *find_bhead_from_code_name(FileData *fd, const short idcode, const char *name);
static BHead *find_bhead_from_idname(FileData *fd, const char *idname);
-static SceneCollection *get_scene_collection_active_or_create(struct Scene *scene, struct SceneLayer *scene_layer, const short flag);
+static SceneCollection *get_scene_collection_active_or_create(struct Scene *scene, struct ViewLayer *view_layer, const short flag);
/* this function ensures that reports are printed,
* in the case of libraray linking errors this is important!
@@ -2838,7 +2838,7 @@ static void direct_link_workspace(FileData *fd, WorkSpace *workspace, const Main
if (ID_IS_LINKED(&workspace->id)) {
/* Appending workspace so render layer is likely from a different scene. Unset
* now, when activating workspace later we set a valid one from current scene. */
- BKE_workspace_render_layer_set(workspace, NULL);
+ BKE_workspace_view_layer_set(workspace, NULL);
}
/* Same issue/fix as in direct_link_workspace_link_scene_data: Can't read workspace data
@@ -5932,20 +5932,20 @@ static void lib_link_scene(FileData *fd, Main *main)
lib_link_scene_collection(fd, sce->id.lib, sce->collection);
- for (SceneLayer *scene_layer = sce->render_layers.first; scene_layer; scene_layer = scene_layer->next) {
+ for (ViewLayer *view_layer = sce->view_layers.first; view_layer; view_layer = view_layer->next) {
/* tag scene layer to update for collection tree evaluation */
- scene_layer->flag |= SCENE_LAYER_ENGINE_DIRTY;
+ view_layer->flag |= VIEW_LAYER_ENGINE_DIRTY;
- for (FreestyleModuleConfig *fmc = scene_layer->freestyle_config.modules.first; fmc; fmc = fmc->next) {
+ for (FreestyleModuleConfig *fmc = view_layer->freestyle_config.modules.first; fmc; fmc = fmc->next) {
fmc->script = newlibadr(fd, sce->id.lib, fmc->script);
}
- for (FreestyleLineSet *fls = scene_layer->freestyle_config.linesets.first; fls; fls = fls->next) {
+ for (FreestyleLineSet *fls = view_layer->freestyle_config.linesets.first; fls; fls = fls->next) {
fls->linestyle = newlibadr_us(fd, sce->id.lib, fls->linestyle);
fls->group = newlibadr_us(fd, sce->id.lib, fls->group);
}
- for (Base *base = scene_layer->object_bases.first; base; base = base->next) {
+ for (Base *base = view_layer->object_bases.first; base; base = base->next) {
/* we only bump the use count for the collection objects */
base->object = newlibadr(fd, sce->id.lib, base->object);
base->flag |= BASE_DIRTY_ENGINE_SETTINGS;
@@ -6099,10 +6099,10 @@ static void direct_link_workspace_link_scene_data(
FileData *fd, const Scene *scene, const ListBase *workspaces)
{
for (WorkSpace *workspace = workspaces->first; workspace; workspace = workspace->id.next) {
- SceneLayer *layer = newdataadr(fd, BKE_workspace_render_layer_get(workspace));
+ ViewLayer *layer = newdataadr(fd, BKE_workspace_view_layer_get(workspace));
/* only set when layer is from the scene we read */
- if (layer && (BLI_findindex(&scene->render_layers, layer) != -1)) {
- BKE_workspace_render_layer_set(workspace, layer);
+ if (layer && (BLI_findindex(&scene->view_layers, layer) != -1)) {
+ BKE_workspace_view_layer_set(workspace, layer);
}
}
}
@@ -6113,7 +6113,7 @@ static void direct_link_scene(FileData *fd, Scene *sce, Main *bmain)
Sequence *seq;
MetaStack *ms;
RigidBodyWorld *rbw;
- SceneLayer *scene_layer;
+ ViewLayer *view_layer;
SceneRenderLayer *srl;
sce->depsgraph_hash = NULL;
@@ -6149,7 +6149,7 @@ static void direct_link_scene(FileData *fd, Scene *sce, Main *bmain)
sce->toolsettings->imapaint.paintcursor = NULL;
sce->toolsettings->particle.paintcursor = NULL;
sce->toolsettings->particle.scene = NULL;
- sce->toolsettings->particle.scene_layer = NULL;
+ sce->toolsettings->particle.view_layer = NULL;
sce->toolsettings->particle.object = NULL;
sce->toolsettings->gp_sculpt.paintcursor = NULL;
@@ -6361,29 +6361,29 @@ static void direct_link_scene(FileData *fd, Scene *sce, Main *bmain)
}
/* insert into global old-new map for reading without UI (link_global accesses it again) */
- link_glob_list(fd, &sce->render_layers);
- for (scene_layer = sce->render_layers.first; scene_layer; scene_layer = scene_layer->next) {
- scene_layer->stats = NULL;
- link_list(fd, &scene_layer->object_bases);
- scene_layer->basact = newdataadr(fd, scene_layer->basact);
- direct_link_layer_collections(fd, &scene_layer->layer_collections);
+ link_glob_list(fd, &sce->view_layers);
+ for (view_layer = sce->view_layers.first; view_layer; view_layer = view_layer->next) {
+ view_layer->stats = NULL;
+ link_list(fd, &view_layer->object_bases);
+ view_layer->basact = newdataadr(fd, view_layer->basact);
+ direct_link_layer_collections(fd, &view_layer->layer_collections);
- if (scene_layer->properties != NULL) {
- scene_layer->properties = newdataadr(fd, scene_layer->properties);
- BLI_assert(scene_layer->properties != NULL);
- IDP_DirectLinkGroup_OrFree(&scene_layer->properties, (fd->flags & FD_FLAGS_SWITCH_ENDIAN), fd);
- BKE_scene_layer_engine_settings_validate_layer(scene_layer);
+ if (view_layer->properties != NULL) {
+ view_layer->properties = newdataadr(fd, view_layer->properties);
+ BLI_assert(view_layer->properties != NULL);
+ IDP_DirectLinkGroup_OrFree(&view_layer->properties, (fd->flags & FD_FLAGS_SWITCH_ENDIAN), fd);
+ BKE_view_layer_engine_settings_validate_layer(view_layer);
}
- scene_layer->id_properties = newdataadr(fd, scene_layer->id_properties);
- IDP_DirectLinkGroup_OrFree(&scene_layer->id_properties, (fd->flags & FD_FLAGS_SWITCH_ENDIAN), fd);
+ view_layer->id_properties = newdataadr(fd, view_layer->id_properties);
+ IDP_DirectLinkGroup_OrFree(&view_layer->id_properties, (fd->flags & FD_FLAGS_SWITCH_ENDIAN), fd);
- link_list(fd, &(scene_layer->freestyle_config.modules));
- link_list(fd, &(scene_layer->freestyle_config.linesets));
+ link_list(fd, &(view_layer->freestyle_config.modules));
+ link_list(fd, &(view_layer->freestyle_config.linesets));
- scene_layer->properties_evaluated = NULL;
+ view_layer->properties_evaluated = NULL;
- BLI_listbase_clear(&scene_layer->drawdata);
+ BLI_listbase_clear(&view_layer->drawdata);
}
sce->collection_properties = newdataadr(fd, sce->collection_properties);
@@ -6393,7 +6393,7 @@ static void direct_link_scene(FileData *fd, Scene *sce, Main *bmain)
IDP_DirectLinkGroup_OrFree(&sce->layer_properties, (fd->flags & FD_FLAGS_SWITCH_ENDIAN), fd);
BKE_layer_collection_engine_settings_validate_scene(sce);
- BKE_scene_layer_engine_settings_validate_scene(sce);
+ BKE_view_layer_engine_settings_validate_scene(sce);
direct_link_workspace_link_scene_data(fd, sce, &bmain->workspaces);
}
@@ -7127,7 +7127,7 @@ static void lib_link_workspace_layout_restore(struct IDNameLib_Map *id_map, Main
* Used to link a file (without UI) to the current UI.
* Note that it assumes the old pointers in UI are still valid, so old Main is not freed.
*/
-void blo_lib_link_restore(Main *newmain, wmWindowManager *curwm, Scene *curscene, SceneLayer *cur_render_layer)
+void blo_lib_link_restore(Main *newmain, wmWindowManager *curwm, Scene *curscene, ViewLayer *cur_view_layer)
{
struct IDNameLib_Map *id_map = BKE_main_idmap_create(newmain);
@@ -7137,7 +7137,7 @@ void blo_lib_link_restore(Main *newmain, wmWindowManager *curwm, Scene *curscene
for (WorkSpaceLayout *layout = layouts->first; layout; layout = layout->next) {
lib_link_workspace_layout_restore(id_map, newmain, layout);
}
- BKE_workspace_render_layer_set(workspace, cur_render_layer);
+ BKE_workspace_view_layer_set(workspace, cur_view_layer);
}
for (wmWindow *win = curwm->windows.first; win; win = win->next) {
@@ -8587,7 +8587,7 @@ static BHead *read_global(BlendFileData *bfd, FileData *fd, BHead *bhead)
bfd->curscreen = fg->curscreen;
bfd->curscene = fg->curscene;
- bfd->cur_render_layer = fg->cur_render_layer;
+ bfd->cur_view_layer = fg->cur_view_layer;
MEM_freeN(fg);
@@ -8600,7 +8600,7 @@ static BHead *read_global(BlendFileData *bfd, FileData *fd, BHead *bhead)
/* note, this has to be kept for reading older files... */
static void link_global(FileData *fd, BlendFileData *bfd)
{
- bfd->cur_render_layer = newglobadr(fd, bfd->cur_render_layer);
+ bfd->cur_view_layer = newglobadr(fd, bfd->cur_view_layer);
bfd->curscreen = newlibadr(fd, NULL, bfd->curscreen);
bfd->curscene = newlibadr(fd, NULL, bfd->curscene);
// this happens in files older than 2.35
@@ -9823,14 +9823,14 @@ static void expand_scene(FileData *fd, Main *mainvar, Scene *sce)
}
}
- for (SceneLayer *scene_layer = sce->render_layers.first; scene_layer; scene_layer = scene_layer->next) {
- for (module = scene_layer->freestyle_config.modules.first; module; module = module->next) {
+ for (ViewLayer *view_layer = sce->view_layers.first; view_layer; view_layer = view_layer->next) {
+ for (module = view_layer->freestyle_config.modules.first; module; module = module->next) {
if (module->script) {
expand_doit(fd, mainvar, module->script);
}
}
- for (lineset = scene_layer->freestyle_config.linesets.first; lineset; lineset = lineset->next) {
+ for (lineset = view_layer->freestyle_config.linesets.first; lineset; lineset = lineset->next) {
if (lineset->group) {
expand_doit(fd, mainvar, lineset->group);
}
@@ -10142,7 +10142,7 @@ static bool object_in_any_scene(Main *mainvar, Object *ob)
}
static void give_base_to_objects(
- Main *mainvar, Scene *scene, SceneLayer *scene_layer, Library *lib, const short flag)
+ Main *mainvar, Scene *scene, ViewLayer *view_layer, Library *lib, const short flag)
{
Object *ob;
Base *base;
@@ -10169,11 +10169,11 @@ static void give_base_to_objects(
CLAMP_MIN(ob->id.us, 0);
if (scene_collection == NULL) {
- scene_collection = get_scene_collection_active_or_create(scene, scene_layer, FILE_ACTIVE_COLLECTION);
+ scene_collection = get_scene_collection_active_or_create(scene, view_layer, FILE_ACTIVE_COLLECTION);
}
BKE_collection_object_add(scene, scene_collection, ob);
- base = BKE_scene_layer_base_find(scene_layer, ob);
+ base = BKE_view_layer_base_find(view_layer, ob);
BKE_scene_object_base_flag_sync_from_base(base);
if (flag & FILE_AUTOSELECT) {
@@ -10194,7 +10194,7 @@ static void give_base_to_objects(
}
static void give_base_to_groups(
- Main *mainvar, Scene *scene, SceneLayer *scene_layer, Library *UNUSED(lib), const short UNUSED(flag))
+ Main *mainvar, Scene *scene, ViewLayer *view_layer, Library *UNUSED(lib), const short UNUSED(flag))
{
Group *group;
Base *base;
@@ -10202,7 +10202,7 @@ static void give_base_to_groups(
SceneCollection *scene_collection;
/* If the group is empty this function is not even called, so it's safe to ensure a collection at this point. */
- scene_collection = get_scene_collection_active_or_create(scene, scene_layer, FILE_ACTIVE_COLLECTION);
+ scene_collection = get_scene_collection_active_or_create(scene, view_layer, FILE_ACTIVE_COLLECTION);
/* Give all objects which are tagged a base. */
for (group = mainvar->group.first; group; group = group->id.next) {
@@ -10215,7 +10215,7 @@ static void give_base_to_groups(
ob->type = OB_EMPTY;
BKE_collection_object_add(scene, scene_collection, ob);
- base = BKE_scene_layer_base_find(scene_layer, ob);
+ base = BKE_view_layer_base_find(view_layer, ob);
if (base->flag & BASE_SELECTABLED) {
base->flag |= BASE_SELECTED;
@@ -10223,7 +10223,7 @@ static void give_base_to_groups(
BKE_scene_object_base_flag_sync_from_base(base);
DEG_id_tag_update(&ob->id, OB_RECALC_OB | OB_RECALC_DATA | OB_RECALC_TIME);
- scene_layer->basact = base;
+ view_layer->basact = base;
/* Assign the group. */
ob->dup_group = group;
@@ -10300,22 +10300,22 @@ static ID *link_named_part(
return id;
}
-static SceneCollection *get_scene_collection_active_or_create(struct Scene *scene, struct SceneLayer *scene_layer, const short flag)
+static SceneCollection *get_scene_collection_active_or_create(struct Scene *scene, struct ViewLayer *view_layer, const short flag)
{
LayerCollection *lc = NULL;
if (flag & FILE_ACTIVE_COLLECTION) {
- lc = BKE_layer_collection_get_active_ensure(scene, scene_layer);
+ lc = BKE_layer_collection_get_active_ensure(scene, view_layer);
}
else {
SceneCollection *sc = BKE_collection_add(scene, NULL, NULL);
- lc = BKE_collection_link(scene_layer, sc);
+ lc = BKE_collection_link(view_layer, sc);
}
return lc->scene_collection;
}
-static void link_object_postprocess(ID *id, Scene *scene, SceneLayer *scene_layer, const short flag)
+static void link_object_postprocess(ID *id, Scene *scene, ViewLayer *view_layer, const short flag)
{
if (scene) {
/* link to scene */
@@ -10326,9 +10326,9 @@ static void link_object_postprocess(ID *id, Scene *scene, SceneLayer *scene_laye
ob = (Object *)id;
ob->mode = OB_MODE_OBJECT;
- sc = get_scene_collection_active_or_create(scene, scene_layer, flag);
+ sc = get_scene_collection_active_or_create(scene, view_layer, flag);
BKE_collection_object_add(scene, sc, ob);
- base = BKE_scene_layer_base_find(scene_layer, ob);
+ base = BKE_view_layer_base_find(view_layer, ob);
BKE_scene_object_base_flag_sync_from_base(base);
if (flag & FILE_AUTOSELECT) {
@@ -10378,12 +10378,12 @@ void BLO_library_link_copypaste(Main *mainl, BlendHandle *bh)
static ID *link_named_part_ex(
Main *mainl, FileData *fd, const short idcode, const char *name, const short flag,
- Scene *scene, SceneLayer *scene_layer, const bool use_placeholders, const bool force_indirect)
+ Scene *scene, ViewLayer *view_layer, const bool use_placeholders, const bool force_indirect)
{
ID *id = link_named_part(mainl, fd, idcode, name, use_placeholders, force_indirect);
if (id && (GS(id->name) == ID_OB)) { /* loose object: give a base */
- link_object_postprocess(id, scene, scene_layer, flag);
+ link_object_postprocess(id, scene, view_layer, flag);
}
else if (id && (GS(id->name) == ID_GR)) {
/* tag as needing to be instantiated */
@@ -10427,11 +10427,11 @@ ID *BLO_library_link_named_part(Main *mainl, BlendHandle **bh, const short idcod
ID *BLO_library_link_named_part_ex(
Main *mainl, BlendHandle **bh,
const short idcode, const char *name, const short flag,
- Scene *scene, SceneLayer *scene_layer,
+ Scene *scene, ViewLayer *view_layer,
const bool use_placeholders, const bool force_indirect)
{
FileData *fd = (FileData*)(*bh);
- return link_named_part_ex(mainl, fd, idcode, name, flag, scene, scene_layer, use_placeholders, force_indirect);
+ return link_named_part_ex(mainl, fd, idcode, name, flag, scene, view_layer, use_placeholders, force_indirect);
}
static void link_id_part(ReportList *reports, FileData *fd, Main *mainvar, ID *id, ID **r_id)
@@ -10544,7 +10544,7 @@ static void split_main_newid(Main *mainptr, Main *main_newid)
}
/* scene and v3d may be NULL. */
-static void library_link_end(Main *mainl, FileData **fd, const short flag, Scene *scene, SceneLayer *scene_layer)
+static void library_link_end(Main *mainl, FileData **fd, const short flag, Scene *scene, ViewLayer *view_layer)
{
Main *mainvar;
Library *curlib;
@@ -10600,10 +10600,10 @@ static void library_link_end(Main *mainl, FileData **fd, const short flag, Scene
* Only directly linked objects & groups are instantiated by `BLO_library_link_named_part_ex()` & co,
* here we handle indirect ones and other possible edge-cases. */
if (scene) {
- give_base_to_objects(mainvar, scene, scene_layer, curlib, flag);
+ give_base_to_objects(mainvar, scene, view_layer, curlib, flag);
if (flag & FILE_GROUP_INSTANCE) {
- give_base_to_groups(mainvar, scene, scene_layer, curlib, flag);
+ give_base_to_groups(mainvar, scene, view_layer, curlib, flag);
}
}
else {
@@ -10629,12 +10629,12 @@ static void library_link_end(Main *mainl, FileData **fd, const short flag, Scene
* \param bh The blender file handle (WARNING! may be freed by this function!).
* \param flag Options for linking, used for instantiating.
* \param scene The scene in which to instantiate objects/groups (if NULL, no instantiation is done).
- * \param scene_layer The scene layer in which to instantiate objects/groups (if NULL, no instantiation is done).
+ * \param view_layer The scene layer in which to instantiate objects/groups (if NULL, no instantiation is done).
*/
-void BLO_library_link_end(Main *mainl, BlendHandle **bh, short flag, Scene *scene, SceneLayer *scene_layer)
+void BLO_library_link_end(Main *mainl, BlendHandle **bh, short flag, Scene *scene, ViewLayer *view_layer)
{
FileData *fd = (FileData*)(*bh);
- library_link_end(mainl, &fd, flag, scene, scene_layer);
+ library_link_end(mainl, &fd, flag, scene, view_layer);
*bh = (BlendHandle*)fd;
}
diff --git a/source/blender/blenloader/intern/versioning_280.c b/source/blender/blenloader/intern/versioning_280.c
index 3c63832c575..8da4fef7b21 100644
--- a/source/blender/blenloader/intern/versioning_280.c
+++ b/source/blender/blenloader/intern/versioning_280.c
@@ -87,7 +87,7 @@ static void do_version_workspaces_create_from_screens(Main *bmain)
for (bScreen *screen = bmain->screen.first; screen; screen = screen->id.next) {
const bScreen *screen_parent = screen_parent_find(screen);
WorkSpace *workspace;
- SceneLayer *layer = BKE_scene_layer_from_scene_get(screen->scene);
+ ViewLayer *layer = BKE_view_layer_from_scene_get(screen->scene);
ListBase *transform_orientations;
if (screen_parent) {
@@ -100,7 +100,7 @@ static void do_version_workspaces_create_from_screens(Main *bmain)
workspace = BKE_workspace_add(bmain, screen->id.name + 2);
}
BKE_workspace_layout_add(workspace, screen, screen->id.name + 2);
- BKE_workspace_render_layer_set(workspace, layer);
+ BKE_workspace_view_layer_set(workspace, layer);
#ifdef WITH_CLAY_ENGINE
BLI_strncpy(workspace->view_render.engine_id, RE_engine_id_BLENDER_CLAY,
@@ -169,7 +169,7 @@ void do_versions_after_linking_280(Main *main)
if (!MAIN_VERSION_ATLEAST(main, 280, 0)) {
for (Scene *scene = main->scene.first; scene; scene = scene->id.next) {
/* since we don't have access to FileData we check the (always valid) first render layer instead */
- if (scene->render_layers.first == NULL) {
+ if (scene->view_layers.first == NULL) {
SceneCollection *sc_master = BKE_collection_master(scene);
BLI_strncpy(sc_master->name, "Master Collection", sizeof(sc_master->name));
@@ -299,53 +299,53 @@ void do_versions_after_linking_280(Main *main)
}
BLI_assert(scene_collection_parent == NULL);
- scene->active_layer = 0;
+ scene->active_view_layer = 0;
/* Handle legacy render layers. */
if (!BKE_scene_uses_blender_game(scene)) {
for (SceneRenderLayer *srl = scene->r.layers.first; srl; srl = srl->next) {
- SceneLayer *scene_layer = BKE_scene_layer_add(scene, srl->name);
+ ViewLayer *view_layer = BKE_view_layer_add(scene, srl->name);
if (srl->samples != 0) {
/* It is up to the external engine to handle
* its own doversion in this case. */
- BKE_override_scene_layer_int_add(
- scene_layer,
+ BKE_override_view_layer_int_add(
+ view_layer,
ID_SCE,
"samples",
srl->samples);
}
if (srl->mat_override) {
- BKE_override_scene_layer_datablock_add(
- scene_layer,
+ BKE_override_view_layer_datablock_add(
+ view_layer,
ID_MA,
"self",
(ID *)srl->mat_override);
}
if (srl->layflag & SCE_LAY_DISABLE) {
- scene_layer->flag &= ~SCENE_LAYER_RENDER;
+ view_layer->flag &= ~VIEW_LAYER_RENDER;
}
if ((srl->layflag & SCE_LAY_FRS) == 0) {
- scene_layer->flag &= ~SCENE_LAYER_FREESTYLE;
+ view_layer->flag &= ~VIEW_LAYER_FREESTYLE;
}
/* XXX If we are to keep layflag it should be merged with flag (dfelinto). */
- scene_layer->layflag = srl->layflag;
+ view_layer->layflag = srl->layflag;
/* XXX Not sure if we should keep the passes (dfelinto). */
- scene_layer->passflag = srl->passflag;
- scene_layer->pass_xor = srl->pass_xor;
- scene_layer->pass_alpha_threshold = srl->pass_alpha_threshold;
+ view_layer->passflag = srl->passflag;
+ view_layer->pass_xor = srl->pass_xor;
+ view_layer->pass_alpha_threshold = srl->pass_alpha_threshold;
- BKE_freestyle_config_free(&scene_layer->freestyle_config);
- scene_layer->freestyle_config = srl->freestyleConfig;
- scene_layer->id_properties = srl->prop;
+ BKE_freestyle_config_free(&view_layer->freestyle_config);
+ view_layer->freestyle_config = srl->freestyleConfig;
+ view_layer->id_properties = srl->prop;
/* unlink master collection */
- BKE_collection_unlink(scene_layer, scene_layer->layer_collections.first);
+ BKE_collection_unlink(view_layer, view_layer->layer_collections.first);
/* Add new collection bases. */
for (int layer = 0; layer < 20; layer++) {
@@ -355,7 +355,7 @@ void do_versions_after_linking_280(Main *main)
if (collections[DO_VERSION_COLLECTION_VISIBLE].created & (1 << layer)) {
LayerCollection *layer_collection_parent;
- layer_collection_parent = BKE_collection_link(scene_layer,
+ layer_collection_parent = BKE_collection_link(view_layer,
collections[DO_VERSION_COLLECTION_VISIBLE].collections[layer]);
if (srl->lay_zmask & (1 << layer)) {
@@ -382,7 +382,7 @@ void do_versions_after_linking_280(Main *main)
layer_collection_child->flag = collections[j].flag_render & (~COLLECTION_DISABLED);
if (collections[j].flag_render & COLLECTION_DISABLED) {
- BKE_collection_disable(scene_layer, layer_collection_child);
+ BKE_collection_disable(view_layer, layer_collection_child);
}
layer_collection_child = layer_collection_child->next;
@@ -395,18 +395,18 @@ void do_versions_after_linking_280(Main *main)
/* for convenience set the same active object in all the layers */
if (scene->basact) {
- scene_layer->basact = BKE_scene_layer_base_find(scene_layer, scene->basact->object);
+ view_layer->basact = BKE_view_layer_base_find(view_layer, scene->basact->object);
}
- for (Base *base = scene_layer->object_bases.first; base; base = base->next) {
+ for (Base *base = view_layer->object_bases.first; base; base = base->next) {
if ((base->flag & BASE_SELECTABLED) && (base->object->flag & SELECT)) {
base->flag |= BASE_SELECTED;
}
}
}
- if (BLI_findlink(&scene->render_layers, scene->r.actlay)) {
- scene->active_layer = scene->r.actlay;
+ if (BLI_findlink(&scene->view_layers, scene->r.actlay)) {
+ scene->active_view_layer = scene->r.actlay;
}
}
else {
@@ -420,15 +420,15 @@ void do_versions_after_linking_280(Main *main)
}
BLI_freelistN(&scene->r.layers);
- SceneLayer *scene_layer = BKE_scene_layer_add(scene, "Viewport");
+ ViewLayer *view_layer = BKE_view_layer_add(scene, "Viewport");
/* If we ported all the original render layers, we don't need to make the viewport layer renderable. */
- if (!BLI_listbase_is_single(&scene->render_layers)) {
- scene_layer->flag &= ~SCENE_LAYER_RENDER;
+ if (!BLI_listbase_is_single(&scene->view_layers)) {
+ view_layer->flag &= ~VIEW_LAYER_RENDER;
}
/* If layer was not set, disable it. */
LayerCollection *layer_collection_parent;
- layer_collection_parent = ((LayerCollection *)scene_layer->layer_collections.first)->layer_collections.first;
+ layer_collection_parent = ((LayerCollection *)view_layer->layer_collections.first)->layer_collections.first;
for (int layer = 0; layer < 20; layer++) {
if (collections[DO_VERSION_COLLECTION_VISIBLE].created & (1 << layer)) {
@@ -436,7 +436,7 @@ void do_versions_after_linking_280(Main *main)
/* We only need to disable the parent collection. */
if (is_disabled) {
- BKE_collection_disable(scene_layer, layer_collection_parent);
+ BKE_collection_disable(view_layer, layer_collection_parent);
}
LayerCollection *layer_collection_child;
@@ -447,7 +447,7 @@ void do_versions_after_linking_280(Main *main)
layer_collection_child->flag = collections[j].flag_viewport & (~COLLECTION_DISABLED);
if (collections[j].flag_viewport & COLLECTION_DISABLED) {
- BKE_collection_disable(scene_layer, layer_collection_child);
+ BKE_collection_disable(view_layer, layer_collection_child);
}
layer_collection_child = layer_collection_child->next;
}
@@ -460,7 +460,7 @@ void do_versions_after_linking_280(Main *main)
/* convert active base */
if (scene->basact) {
- scene_layer->basact = BKE_scene_layer_base_find(scene_layer, scene->basact->object);
+ view_layer->basact = BKE_view_layer_base_find(view_layer, scene->basact->object);
}
/* convert selected bases */
@@ -491,13 +491,13 @@ void do_versions_after_linking_280(Main *main)
if (!MAIN_VERSION_ATLEAST(main, 280, 0)) {
for (bScreen *screen = main->screen.first; screen; screen = screen->id.next) {
/* same render-layer as do_version_workspaces_after_lib_link will activate,
- * so same layer as BKE_scene_layer_from_workspace_get would return */
- SceneLayer *layer = screen->scene->render_layers.first;
+ * so same layer as BKE_view_layer_from_workspace_get would return */
+ ViewLayer *layer = screen->scene->view_layers.first;
for (ScrArea *sa = screen->areabase.first; sa; sa = sa->next) {
- for (SpaceLink *scene_layer = sa->spacedata.first; scene_layer; scene_layer = scene_layer->next) {
- if (scene_layer->spacetype == SPACE_OUTLINER) {
- SpaceOops *soutliner = (SpaceOops *)scene_layer;
+ for (SpaceLink *view_layer = sa->spacedata.first; view_layer; view_layer = view_layer->next) {
+ if (view_layer->spacetype == SPACE_OUTLINER) {
+ SpaceOops *soutliner = (SpaceOops *)view_layer;
soutliner->outlinevis = SO_ACT_LAYER;
@@ -527,7 +527,7 @@ void do_versions_after_linking_280(Main *main)
do_version_workspaces_after_lib_link(main);
}
- {
+ if (!MAIN_VERSION_ATLEAST(main, 280, 2)) {
/* Cleanup any remaining SceneRenderLayer data for files that were created
* with Blender 2.8 before the SceneRenderLayer > RenderLayer refactor. */
for (Scene *scene = main->scene.first; scene; scene = scene->id.next) {
@@ -576,7 +576,7 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *main)
}
}
- if (!DNA_struct_elem_find(fd->filesdna, "Scene", "ListBase", "render_layers")) {
+ if (!DNA_struct_elem_find(fd->filesdna, "Scene", "ListBase", "view_layers")) {
for (Scene *scene = main->scene.first; scene; scene = scene->id.next) {
/* Master Collection */
scene->collection = MEM_callocN(sizeof(SceneCollection), "Master Collection");
@@ -588,8 +588,8 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *main)
!DNA_struct_elem_find(fd->filesdna, "LayerCollection", "IDProperty", "properties"))
{
for (Scene *scene = main->scene.first; scene; scene = scene->id.next) {
- for (SceneLayer *scene_layer = scene->render_layers.first; scene_layer; scene_layer = scene_layer->next) {
- do_version_layer_collections_idproperties(&scene_layer->layer_collections);
+ for (ViewLayer *view_layer = scene->view_layers.first; view_layer; view_layer = view_layer->next) {
+ do_version_layer_collections_idproperties(&view_layer->layer_collections);
}
}
}
@@ -608,12 +608,12 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *main)
}
}
- if (!DNA_struct_elem_find(fd->filesdna, "SceneLayer", "IDProperty", "*properties")) {
+ if (!DNA_struct_elem_find(fd->filesdna, "ViewLayer", "IDProperty", "*properties")) {
for (Scene *scene = main->scene.first; scene; scene = scene->id.next) {
- for (SceneLayer *scene_layer = scene->render_layers.first; scene_layer; scene_layer = scene_layer->next) {
+ for (ViewLayer *view_layer = scene->view_layers.first; view_layer; view_layer = view_layer->next) {
IDPropertyTemplate val = {0};
- scene_layer->properties = IDP_New(IDP_GROUP, &val, ROOT_PROP);
- BKE_scene_layer_engine_settings_create(scene_layer->properties);
+ view_layer->properties = IDP_New(IDP_GROUP, &val, ROOT_PROP);
+ BKE_view_layer_engine_settings_create(view_layer->properties);
}
}
}
@@ -632,7 +632,7 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *main)
}
}
- {
+ if (!MAIN_VERSION_ATLEAST(main, 280, 2)) {
if (!DNA_struct_elem_find(fd->filesdna, "View3D", "short", "custom_orientation_index")) {
for (bScreen *screen = main->screen.first; screen; screen = screen->id.next) {
for (ScrArea *area = screen->areabase.first; area; area = area->next) {
@@ -669,9 +669,7 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *main)
la->contact_thickness = 0.5f;
}
}
- }
- {
typedef enum eNTreeDoVersionErrors {
NTREE_DOVERSION_NO_ERROR = 0,
NTREE_DOVERSION_NEED_OUTPUT = (1 << 0),
@@ -728,9 +726,7 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *main)
BKE_report(fd->reports, RPT_ERROR, "Eevee material conversion problem. Error in console");
printf("You need to combine transparency and emission shaders to the converted Principled shader nodes.\n");
}
- }
- {
if (!DNA_struct_elem_find(fd->filesdna, "Scene", "ViewRender", "view_render")) {
for (Scene *scene = main->scene.first; scene; scene = scene->id.next) {
BLI_strncpy_utf8(scene->view_render.engine_id, scene->r.engine,
@@ -741,20 +737,18 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *main)
BKE_viewrender_init(&workspace->view_render);
}
}
- }
- {
- if ((DNA_struct_elem_find(fd->filesdna, "SceneLayer", "FreestyleConfig", "freestyle_config") == false) &&
- DNA_struct_elem_find(fd->filesdna, "Scene", "ListBase", "render_layers"))
+ if ((DNA_struct_elem_find(fd->filesdna, "ViewLayer", "FreestyleConfig", "freestyle_config") == false) &&
+ DNA_struct_elem_find(fd->filesdna, "Scene", "ListBase", "view_layers"))
{
for (Scene *scene = main->scene.first; scene; scene = scene->id.next) {
- SceneLayer *scene_layer;
- for (scene_layer = scene->render_layers.first; scene_layer; scene_layer = scene_layer->next) {
- scene_layer->flag |= SCENE_LAYER_FREESTYLE;
- scene_layer->layflag = 0x7FFF; /* solid ztra halo edge strand */
- scene_layer->passflag = SCE_PASS_COMBINED | SCE_PASS_Z;
- scene_layer->pass_alpha_threshold = 0.5f;
- BKE_freestyle_config_init(&scene_layer->freestyle_config);
+ ViewLayer *view_layer;
+ for (view_layer = scene->view_layers.first; view_layer; view_layer = view_layer->next) {
+ view_layer->flag |= VIEW_LAYER_FREESTYLE;
+ view_layer->layflag = 0x7FFF; /* solid ztra halo edge strand */
+ view_layer->passflag = SCE_PASS_COMBINED | SCE_PASS_Z;
+ view_layer->pass_alpha_threshold = 0.5f;
+ BKE_freestyle_config_init(&view_layer->freestyle_config);
}
}
}
diff --git a/source/blender/blenloader/intern/versioning_defaults.c b/source/blender/blenloader/intern/versioning_defaults.c
index 910a3c28286..e2d4b140311 100644
--- a/source/blender/blenloader/intern/versioning_defaults.c
+++ b/source/blender/blenloader/intern/versioning_defaults.c
@@ -127,9 +127,9 @@ void BLO_update_defaults_startup_blend(Main *bmain)
scene->r.im_format.planes = R_IMF_PLANES_RGBA;
scene->r.im_format.compress = 15;
- for (SceneLayer *scene_layer = scene->render_layers.first; scene_layer; scene_layer = scene_layer->next) {
- scene_layer->freestyle_config.sphere_radius = 0.1f;
- scene_layer->pass_alpha_threshold = 0.5f;
+ for (ViewLayer *view_layer = scene->view_layers.first; view_layer; view_layer = view_layer->next) {
+ view_layer->freestyle_config.sphere_radius = 0.1f;
+ view_layer->pass_alpha_threshold = 0.5f;
}
if (scene->toolsettings) {
diff --git a/source/blender/blenloader/intern/versioning_legacy.c b/source/blender/blenloader/intern/versioning_legacy.c
index 79ae203df09..36c524796ce 100644
--- a/source/blender/blenloader/intern/versioning_legacy.c
+++ b/source/blender/blenloader/intern/versioning_legacy.c
@@ -2146,7 +2146,7 @@ void blo_do_versions_pre250(FileData *fd, Library *lib, Main *main)
sce->r.yparts = 4;
/* We don't add default layer since blender2.8 because the layers
- * are now in Scene->render_layers and a default layer is created in
+ * are now in Scene->view_layers and a default layer is created in
* the doversion later on.
*/
SceneRenderLayer *srl;
diff --git a/source/blender/blenloader/intern/writefile.c b/source/blender/blenloader/intern/writefile.c
index 172c5384f15..6c39b0d486a 100644
--- a/source/blender/blenloader/intern/writefile.c
+++ b/source/blender/blenloader/intern/writefile.c
@@ -1086,7 +1086,7 @@ static void write_nodetree_nolib(WriteData *wd, bNodeTree *ntree)
*/
static void current_screen_compat(
Main *mainvar, bool use_active_win,
- bScreen **r_screen, Scene **r_scene, SceneLayer **r_render_layer)
+ bScreen **r_screen, Scene **r_scene, ViewLayer **r_render_layer)
{
wmWindowManager *wm;
wmWindow *window = NULL;
@@ -1118,7 +1118,7 @@ static void current_screen_compat(
*r_screen = (window) ? BKE_workspace_active_screen_get(window->workspace_hook) : NULL;
*r_scene = (window) ? window->scene : NULL;
- *r_render_layer = (window) ? BKE_workspace_render_layer_get(workspace) : NULL;
+ *r_render_layer = (window) ? BKE_workspace_view_layer_get(workspace) : NULL;
}
typedef struct RenderInfo {
@@ -1134,7 +1134,7 @@ static void write_renderinfo(WriteData *wd, Main *mainvar)
{
bScreen *curscreen;
Scene *sce, *curscene = NULL;
- SceneLayer *render_layer;
+ ViewLayer *render_layer;
RenderInfo data;
/* XXX in future, handle multiple windows with multiple screens? */
@@ -2771,27 +2771,27 @@ static void write_scene(WriteData *wd, Scene *sce)
write_curvemapping_curves(wd, &sce->r.mblur_shutter_curve);
write_scene_collection(wd, sce->collection);
- for (SceneLayer *scene_layer = sce->render_layers.first; scene_layer; scene_layer = scene_layer->next) {
- writestruct(wd, DATA, SceneLayer, 1, scene_layer);
- writelist(wd, DATA, Base, &scene_layer->object_bases);
+ for (ViewLayer *view_layer = sce->view_layers.first; view_layer; view_layer = view_layer->next) {
+ writestruct(wd, DATA, ViewLayer, 1, view_layer);
+ writelist(wd, DATA, Base, &view_layer->object_bases);
- if (scene_layer->properties) {
- IDP_WriteProperty(scene_layer->properties, wd);
+ if (view_layer->properties) {
+ IDP_WriteProperty(view_layer->properties, wd);
}
- if (scene_layer->id_properties) {
- IDP_WriteProperty(scene_layer->id_properties, wd);
+ if (view_layer->id_properties) {
+ IDP_WriteProperty(view_layer->id_properties, wd);
}
- for (FreestyleModuleConfig *fmc = scene_layer->freestyle_config.modules.first; fmc; fmc = fmc->next) {
+ for (FreestyleModuleConfig *fmc = view_layer->freestyle_config.modules.first; fmc; fmc = fmc->next) {
writestruct(wd, DATA, FreestyleModuleConfig, 1, fmc);
}
- for (FreestyleLineSet *fls = scene_layer->freestyle_config.linesets.first; fls; fls = fls->next) {
+ for (FreestyleLineSet *fls = view_layer->freestyle_config.linesets.first; fls; fls = fls->next) {
writestruct(wd, DATA, FreestyleLineSet, 1, fls);
}
- write_layer_collections(wd, &scene_layer->layer_collections);
+ write_layer_collections(wd, &view_layer->layer_collections);
}
if (sce->layer_properties) {
@@ -3828,7 +3828,7 @@ static void write_global(WriteData *wd, int fileflags, Main *mainvar)
FileGlobal fg;
bScreen *screen;
Scene *scene;
- SceneLayer *render_layer;
+ ViewLayer *render_layer;
char subvstr[8];
/* prevent mem checkers from complaining */
@@ -3841,7 +3841,7 @@ static void write_global(WriteData *wd, int fileflags, Main *mainvar)
/* XXX still remap G */
fg.curscreen = screen;
fg.curscene = scene;
- fg.cur_render_layer = render_layer;
+ fg.cur_view_layer = render_layer;
/* prevent to save this, is not good convention, and feature with concerns... */
fg.fileflags = (fileflags & ~G_FILE_FLAGS_RUNTIME);