Commit: de777ad9e69320500bf05d97a7d6d60ba4fd0a93
Author: Campbell Barton
Date:   Fri Jul 6 10:18:52 2018 +0200
Branches: blender2.8
https://developer.blender.org/rBde777ad9e69320500bf05d97a7d6d60ba4fd0a93

Merge branch 'master' into blender2.8

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



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

diff --cc intern/cycles/blender/blender_object.cpp
index 6d6b367209d,35bf7beda41..70d6092622a
--- a/intern/cycles/blender/blender_object.cpp
+++ b/intern/cycles/blender/blender_object.cpp
@@@ -394,9 -360,9 +394,9 @@@ Object *BlenderSync::sync_object(BL::De
  
        if(object_map.sync(&object, b_ob, b_parent, key))
                object_updated = true;
-       
+ 
        /* mesh sync */
 -      object->mesh = sync_mesh(b_ob, object_updated, hide_tris);
 +      object->mesh = sync_mesh(b_depsgraph, b_ob, b_ob_instance, 
object_updated, hide_tris);
  
        /* special case not tracked by object update flags */
  
@@@ -557,13 -516,21 +557,13 @@@ static bool object_render_hide(BL::Obje
        }
  }
  
 -static bool object_render_hide_duplis(BL::Object& b_ob)
 -{
 -      BL::Object parent = b_ob.parent();
 -
 -      return (parent && object_render_hide_original(b_ob.type(), 
parent.dupli_type()));
 -}
 -
  /* Object Loop */
  
 -void BlenderSync::sync_objects(float motion_time)
 +void BlenderSync::sync_objects(BL::Depsgraph& b_depsgraph, float motion_time)
  {
        /* layer data */
 -      uint scene_layer = render_layer.scene_layer;
        bool motion = motion_time != 0.0f;
-       
+ 
        if(!motion) {
                /* prepare for sync */
                light_map.pre_sync();
diff --cc intern/cycles/blender/blender_python.cpp
index 84b90cb53de,3eccecb8850..4c199f4838f
--- a/intern/cycles/blender/blender_python.cpp
+++ b/intern/cycles/blender/blender_python.cpp
@@@ -322,11 -327,11 +322,11 @@@ static PyObject *bake_func(PyObject * /
  
  static PyObject *draw_func(PyObject * /*self*/, PyObject *args)
  {
 -      PyObject *pysession, *pyv3d, *pyrv3d;
 +      PyObject *pysession, *pygraph, *pyv3d, *pyrv3d;
  
 -      if(!PyArg_ParseTuple(args, "OOO", &pysession, &pyv3d, &pyrv3d))
 +      if(!PyArg_ParseTuple(args, "OOOO", &pysession, &pygraph, &pyv3d, 
&pyrv3d))
                return NULL;
-       
+ 
        BlenderSession *session = (BlenderSession*)PyLong_AsVoidPtr(pysession);
  
        if(PyLong_AsVoidPtr(pyrv3d)) {
diff --cc intern/cycles/blender/blender_sync.cpp
index b449302241d,a08089118d5..f9e04bdef7c
--- a/intern/cycles/blender/blender_sync.cpp
+++ b/intern/cycles/blender/blender_sync.cpp
@@@ -817,10 -869,19 +817,10 @@@ SessionParams BlenderSync::get_session_
                params.shadingsystem = SHADINGSYSTEM_SVM;
        else if(shadingsystem == 1)
                params.shadingsystem = SHADINGSYSTEM_OSL;
-       
+ 
        /* color managagement */
 -#ifdef GLEW_MX
 -      /* When using GLEW MX we need to check whether we've got an OpenGL
 -       * context for current window. This is because command line rendering
 -       * doesn't have OpenGL context actually.
 -       */
 -      if(glewGetContext() != NULL)
 -#endif
 -      {
 -              params.display_buffer_linear = GLEW_ARB_half_float_pixel &&
 -                                             
b_engine.support_display_space_shader(b_scene);
 -      }
 +      params.display_buffer_linear = GLEW_ARB_half_float_pixel &&
 +                                     
b_engine.support_display_space_shader(b_scene);
  
        if(b_engine.is_preview()) {
                /* For preview rendering we're using same timeout as
diff --cc intern/cycles/device/device.h
index 31deba2d796,2400788c833..585d9802279
--- a/intern/cycles/device/device.h
+++ b/intern/cycles/device/device.h
@@@ -317,12 -304,11 +317,12 @@@ public
        virtual void task_add(DeviceTask& task) = 0;
        virtual void task_wait() = 0;
        virtual void task_cancel() = 0;
-       
+ 
        /* opengl drawing */
 -      virtual void draw_pixels(device_memory& mem, int y, int w, int h,
 -              int dx, int dy, int width, int height, bool transparent,
 -              const DeviceDrawParams &draw_params);
 +      virtual void draw_pixels(device_memory& mem, int y,
 +          int w, int h, int width, int height,
 +          int dx, int dy, int dw, int dh,
 +          bool transparent, const DeviceDrawParams &draw_params);
  
  #ifdef WITH_NETWORK
        /* networking */
diff --cc intern/cycles/render/light.cpp
index 94072d7da09,da29e1a255a..49cfae4888b
--- a/intern/cycles/render/light.cpp
+++ b/intern/cycles/render/light.cpp
@@@ -758,15 -757,12 +758,15 @@@ void LightManager::device_update_points
                        float3 axisu = light->axisu*(light->sizeu*light->size);
                        float3 axisv = light->axisv*(light->sizev*light->size);
                        float area = len(axisu)*len(axisv);
 -                      float invarea = (area > 0.0f)? 1.0f/area: 1.0f;
 +                      if(light->round) {
 +                              area *= -M_PI_4_F;
 +                      }
 +                      float invarea = (area != 0.0f)? 1.0f/area: 1.0f;
                        float3 dir = light->dir;
-                       
+ 
                        dir = safe_normalize(dir);
  
 -                      if(light->use_mis && area > 0.0f)
 +                      if(light->use_mis && area != 0.0f)
                                shader_id |= SHADER_USE_MIS;
  
                        klights[light_index].co[0] = co.x;

_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to