Commit: bdd3fd64e94460ad76c88e68d2c9c50778ef90b2
Author: Dalai Felinto
Date:   Wed Feb 15 14:40:41 2017 +0100
Branches: blender2.8
https://developer.blender.org/rBbdd3fd64e94460ad76c88e68d2c9c50778ef90b2

Bring rendering back (update all references to SETLOPPER)

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

M       source/blender/blenkernel/intern/collision.c
M       source/blender/blenkernel/intern/pointcache.c
M       source/blender/blenkernel/intern/sound.c
M       source/blender/editors/render/render_internal.c
M       source/blender/editors/space_view3d/view3d_draw_legacy.c
M       source/blender/gpu/intern/gpu_material.c
M       source/blender/render/intern/source/convertblender.c
M       source/blender/render/intern/source/pipeline.c
M       source/gameengine/Converter/BL_BlenderDataConversion.cpp

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

diff --git a/source/blender/blenkernel/intern/collision.c 
b/source/blender/blenkernel/intern/collision.c
index b5f76240c0..23cfee721a 100644
--- a/source/blender/blenkernel/intern/collision.c
+++ b/source/blender/blenkernel/intern/collision.c
@@ -512,9 +512,9 @@ static void add_collision_object(Object ***objs, unsigned 
int *numobj, unsigned
 
 // return all collision objects in scene
 // collision object will exclude self 
-Object **get_collisionobjects_ext(Scene *scene, Object *self, Group *group, 
int layer, unsigned int *numcollobj, unsigned int modifier_type, bool dupli)
+Object **get_collisionobjects_ext(Scene *scene, Object *self, Group *group, 
int UNUSED(layer), unsigned int *numcollobj, unsigned int modifier_type, bool 
dupli)
 {
-       BaseLegacy *base;
+       Base *base;
        Object **objs;
        GroupObject *go;
        unsigned int numobj= 0, maxobj= 100;
@@ -532,9 +532,9 @@ Object **get_collisionobjects_ext(Scene *scene, Object 
*self, Group *group, int
                Scene *sce_iter;
                /* add objects in same layer in scene */
                for (SETLOOPER(scene, sce_iter, base)) {
-                       if ( base->lay & layer )
+                       if ((base->flag & BASE_VISIBLED) != 0) {
                                add_collision_object(&objs, &numobj, &maxobj, 
base->object, self, level, modifier_type);
-
+                       }
                }
        }
 
@@ -596,11 +596,11 @@ ListBase *get_collider_cache(Scene *scene, Object *self, 
Group *group)
        }
        else {
                Scene *sce_iter;
-               BaseLegacy *base;
+               Base *base;
 
                /* add objects in same layer in scene */
                for (SETLOOPER(scene, sce_iter, base)) {
-                       if (!self || (base->lay & self->lay))
+                       if (!self || ((base->flag & BASE_VISIBLED) != 0))
                                add_collider_cache_object(&objs, base->object, 
self, 0);
 
                }
diff --git a/source/blender/blenkernel/intern/pointcache.c 
b/source/blender/blenkernel/intern/pointcache.c
index c3f2107c5a..30eb8dcb28 100644
--- a/source/blender/blenkernel/intern/pointcache.c
+++ b/source/blender/blenkernel/intern/pointcache.c
@@ -3541,7 +3541,7 @@ void BKE_ptcache_bake(PTCacheBaker *baker)
        Main *bmain = baker->main;
        Scene *scene = baker->scene;
        Scene *sce_iter; /* SETLOOPER macro only */
-       BaseLegacy *base;
+       Base *base;
        ListBase pidlist;
        PTCacheID *pid = &baker->pid;
        PointCache *cache = NULL;
diff --git a/source/blender/blenkernel/intern/sound.c 
b/source/blender/blenkernel/intern/sound.c
index fe4bcc738c..8469351c54 100644
--- a/source/blender/blenkernel/intern/sound.c
+++ b/source/blender/blenkernel/intern/sound.c
@@ -782,7 +782,7 @@ void BKE_sound_read_waveform(bSound *sound, short *stop)
 void BKE_sound_update_scene(Main *bmain, struct Scene *scene)
 {
        Object *ob;
-       BaseLegacy *base;
+       Base *base;
        NlaTrack *track;
        NlaStrip *strip;
        Speaker *speaker;
diff --git a/source/blender/editors/render/render_internal.c 
b/source/blender/editors/render/render_internal.c
index 07f4679a32..950214b895 100644
--- a/source/blender/editors/render/render_internal.c
+++ b/source/blender/editors/render/render_internal.c
@@ -780,18 +780,18 @@ static void screen_render_cancel(bContext *C, wmOperator 
*op)
        WM_jobs_kill_type(wm, scene, WM_JOB_TYPE_RENDER);
 }
 
-static void clean_viewport_memory(Main *bmain, Scene *scene, int renderlay)
+static void clean_viewport_memory(Main *bmain, Scene *scene)
 {
        Object *object;
        Scene *sce_iter;
-       BaseLegacy *base;
+       Base *base;
 
        for (object = bmain->object.first; object; object = object->id.next) {
                object->id.tag |= LIB_TAG_DOIT;
        }
 
        for (SETLOOPER(scene, sce_iter, base)) {
-               if ((base->lay & renderlay) == 0) {
+               if ((base->flag & BASE_VISIBLED) == 0) {
                        continue;
                }
                if (RE_allow_render_generic_object(base->object)) {
@@ -927,8 +927,6 @@ static int screen_render_invoke(bContext *C, wmOperator 
*op, const wmEvent *even
 
        /* Lock the user interface depending on render settings. */
        if (scene->r.use_lock_interface) {
-               int renderlay = rj->lay_override ? rj->lay_override : 
scene->lay;
-
                WM_set_locked_interface(CTX_wm_manager(C), true);
 
                /* Set flag interface need to be unlocked.
@@ -942,7 +940,7 @@ static int screen_render_invoke(bContext *C, wmOperator 
*op, const wmEvent *even
                rj->interface_locked = true;
 
                /* Clean memory used by viewport? */
-               clean_viewport_memory(rj->main, scene, renderlay);
+               clean_viewport_memory(rj->main, scene);
        }
 
        /* setup job */
diff --git a/source/blender/editors/space_view3d/view3d_draw_legacy.c 
b/source/blender/editors/space_view3d/view3d_draw_legacy.c
index 933dc7155c..d23b2ac23c 100644
--- a/source/blender/editors/space_view3d/view3d_draw_legacy.c
+++ b/source/blender/editors/space_view3d/view3d_draw_legacy.c
@@ -1293,7 +1293,7 @@ void ED_view3d_draw_depth(Scene *scene, ARegion *ar, 
View3D *v3d, bool alphaover
        if (scene->set) {
                Scene *sce_iter;
                for (SETLOOPER(scene->set, sce_iter, base)) {
-                       if (v3d->lay & base->lay) {
+                       if ((base->flag & BASE_VISIBLED) != 0) {
                                draw_object(scene, sl, ar, v3d, base, 0);
                                if (base->object->transflag & OB_DUPLI) {
                                        draw_dupli_objects_color(scene, sl, ar, 
v3d, base, dflag_depth, TH_UNDEFINED);
@@ -1414,7 +1414,7 @@ static void gpu_update_lamps_shadows_world(Scene *scene, 
View3D *v3d)
 {
        ListBase shadows;
        Scene *sce_iter;
-       BaseLegacy *base;
+       Base *base;
        World *world = scene->world;
        SceneRenderLayer *srl = v3d->scenelock ? BLI_findlink(&scene->r.layers, 
scene->r.actlay) : NULL;
        
@@ -1550,7 +1550,7 @@ static void view3d_draw_objects(
 {
        SceneLayer *sl = C ? CTX_data_scene_layer(C) : 
BKE_scene_layer_active(scene);
        RegionView3D *rv3d = ar->regiondata;
-       BaseLegacy *base;
+       Base *base;
        const bool do_camera_frame = !draw_offscreen;
        const bool draw_grids = !draw_offscreen && (v3d->flag2 & 
V3D_RENDER_OVERRIDE) == 0;
        const bool draw_floor = (rv3d->view == RV3D_VIEW_USER) || (rv3d->persp 
!= RV3D_ORTHO);
@@ -1608,7 +1608,7 @@ static void view3d_draw_objects(
                const short dflag = DRAW_CONSTCOLOR | DRAW_SCENESET;
                Scene *sce_iter;
                for (SETLOOPER(scene->set, sce_iter, base)) {
-                       if (v3d->lay & base->lay) {
+                       if ((base->flag & BASE_VISIBLED) != 0) {
                                UI_ThemeColorBlend(TH_WIRE, TH_BACK, 0.6f);
                                draw_object(scene, sl, ar, v3d, base, dflag);
 
@@ -2351,7 +2351,7 @@ static void view3d_stereo3d_setup_offscreen(Scene *scene, 
View3D *v3d, ARegion *
 static void update_lods(Scene *scene, float camera_pos[3])
 {
        Scene *sce_iter;
-       BaseLegacy *base;
+       Base *base;
 
        for (SETLOOPER(scene, sce_iter, base)) {
                Object *ob = base->object;
diff --git a/source/blender/gpu/intern/gpu_material.c 
b/source/blender/gpu/intern/gpu_material.c
index 9e08f629bc..28cf7bd1c7 100644
--- a/source/blender/gpu/intern/gpu_material.c
+++ b/source/blender/gpu/intern/gpu_material.c
@@ -1016,7 +1016,7 @@ static void shade_one_light(GPUShadeInput *shi, 
GPUShadeResult *shr, GPULamp *la
 
 static void material_lights(GPUShadeInput *shi, GPUShadeResult *shr)
 {
-       BaseLegacy *base;
+       Base *base;
        Scene *sce_iter;
        
        for (SETLOOPER(shi->gpumat->scene, sce_iter, base)) {
diff --git a/source/blender/render/intern/source/convertblender.c 
b/source/blender/render/intern/source/convertblender.c
index 094e62e6ce..1ea99f406b 100644
--- a/source/blender/render/intern/source/convertblender.c
+++ b/source/blender/render/intern/source/convertblender.c
@@ -4975,14 +4975,13 @@ static void add_group_render_dupli_obs(Render *re, 
Group *group, int nolamps, in
        }
 }
 
-static void database_init_objects(Render *re, unsigned int renderlay, int 
nolamps, int onlyselected, Object *actob, int timeoffset)
+static void database_init_objects(Render *re, unsigned int UNUSED(renderlay), 
int nolamps, int onlyselected, Object *actob, int timeoffset)
 {
-       BaseLegacy *base;
+       Base *base;
        Object *ob;
        Group *group;
        ObjectInstanceRen *obi;
        Scene *sce_iter;
-       int lay, vectorlay;
 
        /* for duplis we need the Object texture mapping to work as if
         * untransformed, set_dupli_tex_mat sets the matrix to allow that
@@ -5010,14 +5009,18 @@ static void database_init_objects(Render *re, unsigned 
int renderlay, int nolamp
        for (SETLOOPER(re->scene, sce_iter, base)) {
                ob= base->object;
 
+#if 0
+               TODO_LAYER; /* investigate if this is an issue*/
                /* in the prev/next pass for making speed vectors, avoid 
creating
                 * objects that are not on a renderlayer with a vector pass, can
                 * save a lot of time in complex scenes */
                vectorlay= get_vector_renderlayers(re->scene);
-               lay= (timeoffset)? renderlay & vectorlay: renderlay;
+#endif
 
-               /* if the object has been restricted from rendering in the 
outliner, ignore it */
-               if (is_object_restricted(re, ob)) continue;
+               /* if the object is not visible, ignore it */
+               if ((base->flag & BASE_VISIBLED) == 0) {
+                       continue;
+               }
 
                /* OB_DONE means the object itself got duplicated, so was 
already converted */
                if (ob->flag & OB_DONE) {
@@ -5030,7 +5033,7 @@ static void database_init_objects(Render *re, unsigned 
int renderlay, int nolamp
                                }
                        }
                }
-               else if ((base->lay & lay) || (ob->type==OB_LAMP && (base->lay 
& re->lay)) ) {
+               else if (((base->flag & BASE_VISIBLED) != 0) || 
(ob->type==OB_LAMP)) {
                        if ((ob->transflag & OB_DUPLI) && (ob->type!=OB_MBALL)) 
{
                                DupliObject *dob;
                                ListBase *duplilist;
diff --git a/source/blender/render/intern/source/pipeline.c 
b/source/blender/render/intern/source/pipeline.c
index 34966e1b11..7598cb3ff6 100644
--- a/source/blender/render/intern/source/pipeline.c
+++ b/source/blender/render/intern/source/pipeline.c
@@ -2012,14 +2012,14 @@ bool RE_allow_render_generic_object(Object *ob)
 #define DEPSGRAPH_WORKAROUND_HACK
 
 #ifdef DEPSGRAPH_WORKAROUND_HACK
-static void tag_dependend_objects_for_render(Scene *scene, int renderlay)
+static void tag_dependend_objects_for_render(Scene *scene, int 
UNUSED(renderlay))
 {
        Scene *sce_iter;
-       BaseLegacy *base;
+       Base *base;
        for (SETLOOPER(scene, sce_iter, base)) {
                Object *object = base->object;
 
-               if ((base->lay & renderlay) == 0) {
+               if ((base->flag & BASE_VISIBLED) == 0) {
                        continue;
                }
 
diff --git a/source/gameengine/Converter/BL_BlenderDataConversion.cpp 
b/source/gameengine/Converter/BL_BlenderDataConversion.cpp
index 2aa0145d1f..6add30f113 100644
--- a/source/gameengine/Converter/BL_BlenderDataConversion.cpp
+++ b/source/gameengine/Converter/BL_BlenderDataConversion.cpp
@@ -394,7 +394,7 @@ static void Se

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to