Commit: 9791a8fe95911b3faa7d9e4c842a3e3db877061c
Author: Lukas Stockner
Date:   Sun Jul 24 03:02:42 2016 +0200
Branches: soc-2016-cycles_denoising
https://developer.blender.org/rB9791a8fe95911b3faa7d9e4c842a3e3db877061c

Merge remote-tracking branch 'origin/master' into soc-2016-cycles_denoising

Conflicts:
        intern/cycles/kernel/kernel_types.h

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



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

diff --cc intern/cycles/kernel/kernel_accumulate.h
index c076a9b,0e13b22..6389af8
--- a/intern/cycles/kernel/kernel_accumulate.h
+++ b/intern/cycles/kernel/kernel_accumulate.h
@@@ -121,18 -121,6 +121,18 @@@ ccl_device_inline void bsdf_eval_mul(Bs
  #endif
  }
  
 +ccl_device_inline float3 bsdf_eval_sum(BsdfEval *eval, bool use_light_pass)
 +{
 +#ifdef __PASSES__
 +      if(use_light_pass)
 +              return eval->diffuse + eval->glossy + eval->transmission + 
eval->transparent + eval->subsurface + eval->scatter;
 +      else
 +              return eval->diffuse;
 +#else
-       return *eval;
++      return eval->diffuse;
 +#endif
 +}
 +
  /* Path Radiance
   *
   * We accumulate different render passes separately. After summing at the end
diff --cc intern/cycles/kernel/kernel_types.h
index 2c3f3a8,a9be2ae..b03a1d9
--- a/intern/cycles/kernel/kernel_types.h
+++ b/intern/cycles/kernel/kernel_types.h
@@@ -388,33 -387,13 +388,34 @@@ typedef enum BakePassFilterCombos 
        BAKE_FILTER_SUBSURFACE_INDIRECT = (BAKE_FILTER_INDIRECT | 
BAKE_FILTER_SUBSURFACE),
  } BakePassFilterCombos;
  
 +typedef enum DenoiseFlag {
 +      DENOISE_DIFFUSE_DIR      = (1 << 0),
 +      DENOISE_DIFFUSE_IND      = (1 << 1),
 +      DENOISE_GLOSSY_DIR       = (1 << 2),
 +      DENOISE_GLOSSY_IND       = (1 << 3),
 +      DENOISE_TRANSMISSION_DIR = (1 << 4),
 +      DENOISE_TRANSMISSION_IND = (1 << 5),
 +      DENOISE_SUBSURFACE_DIR   = (1 << 6),
 +      DENOISE_SUBSURFACE_IND   = (1 << 7),
 +
 +      DENOISE_ALL = (
 +          DENOISE_DIFFUSE_DIR |
 +          DENOISE_DIFFUSE_IND |
 +          DENOISE_GLOSSY_DIR |
 +          DENOISE_GLOSSY_IND |
 +          DENOISE_TRANSMISSION_DIR |
 +          DENOISE_TRANSMISSION_IND |
 +          DENOISE_SUBSURFACE_DIR |
 +          DENOISE_SUBSURFACE_IND),
 +} DenoiseFlag;
 +
- #ifdef __PASSES__
- 
  typedef ccl_addr_space struct PathRadiance {
+ #ifdef __PASSES__
        int use_light_pass;
+ #endif
  
        float3 emission;
+ #ifdef __PASSES__
        float3 background;
        float3 ao;
  
@@@ -448,7 -427,7 +449,8 @@@
  
        float4 shadow;
        float mist;
 +      float transparent;
+ #endif
  } PathRadiance;
  
  typedef struct BsdfEval {
diff --cc source/blender/blenloader/intern/versioning_270.c
index ed28627,a254a85..2f1da1b
--- a/source/blender/blenloader/intern/versioning_270.c
+++ b/source/blender/blenloader/intern/versioning_270.c
@@@ -1225,21 -1225,11 +1225,27 @@@ void blo_do_versions_270(FileData *fd, 
                                }
                        }
                }
+ 
+               for (Brush *br = main->brush.first; br; br = br->id.next) {
+                       if (br->sculpt_tool == SCULPT_TOOL_FLATTEN) {
+                               br->flag |= BRUSH_ACCUMULATE;
+                       }
+               }
        }
 +
 +      {
 +              if (!DNA_struct_elem_find(fd->filesdna, "SceneRenderLayer", 
"int", "denoiseflag")) {
 +                      Scene *sce;
 +
 +                      for (sce = main->scene.first; sce; sce = sce->id.next) {
 +                              SceneRenderLayer *rl;
 +                              for (rl = sce->r.layers.first; rl; rl = 
rl->next) {
 +                                      rl->denoiseflag = 
SCE_DENOISE_DIFFDIR|SCE_DENOISE_GLOSSDIR|SCE_DENOISE_TRANSDIR|SCE_DENOISE_SUBDIR|
 +                                                        
SCE_DENOISE_DIFFIND|SCE_DENOISE_GLOSSIND|SCE_DENOISE_TRANSIND|SCE_DENOISE_SUBIND;
 +                                      rl->denoise_half_window = 8;
 +                                      rl->denoise_strength = 0.0f;
 +                              }
 +                      }
 +              }
 +      }
  }
diff --cc source/blender/render/extern/include/RE_pipeline.h
index 3076a58,39f62f9..dbbeaac
--- a/source/blender/render/extern/include/RE_pipeline.h
+++ b/source/blender/render/extern/include/RE_pipeline.h
@@@ -233,11 -231,12 +233,12 @@@ struct RenderStats *RE_GetStats(struct 
  void RE_ResultGet32(struct Render *re, unsigned int *rect);
  void RE_AcquiredResultGet32(struct Render *re, struct RenderResult *result, 
unsigned int *rect, const int view_id);
  
- void RE_render_result_rect_from_ibuf(struct RenderResult *rr, struct 
RenderData *rd,
-     struct ImBuf *ibuf, const int view_id);
+ void RE_render_result_rect_from_ibuf(
+         struct RenderResult *rr, struct RenderData *rd,
+         struct ImBuf *ibuf, const int view_id);
  
  struct RenderLayer *RE_GetRenderLayer(struct RenderResult *rr, const char 
*name);
 -float *RE_RenderLayerGetPass(volatile struct RenderLayer *rl, int passtype, 
const char *viewname);
 +float *RE_RenderLayerGetPass(volatile struct RenderLayer *rl, uint64_t 
passtype, const char *viewname);
  
  /* obligatory initialize call, disprect is optional */
  void RE_InitState(struct Render *re, struct Render *source, struct RenderData 
*rd,

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

Reply via email to