[Bf-blender-cvs] [181b44d76a0] soc-2019-npr: LANPR: Fixing chained line normal value errors.

2019-08-04 Thread YimingWu
Commit: 181b44d76a0251a18b497616646230b00e3b4b95
Author: YimingWu
Date:   Mon Aug 5 11:22:22 2019 +0800
Branches: soc-2019-npr
https://developer.blender.org/rB181b44d76a0251a18b497616646230b00e3b4b95

LANPR: Fixing chained line normal value errors.

===

M   source/blender/draw/engines/lanpr/shaders/lanpr_software_chain_geom.glsl
M   source/blender/editors/lanpr/lanpr_chain.c

===

diff --git 
a/source/blender/draw/engines/lanpr/shaders/lanpr_software_chain_geom.glsl 
b/source/blender/draw/engines/lanpr/shaders/lanpr_software_chain_geom.glsl
index 004028a94cc..6db3e4fa5c9 100644
--- a/source/blender/draw/engines/lanpr/shaders/lanpr_software_chain_geom.glsl
+++ b/source/blender/draw/engines/lanpr/shaders/lanpr_software_chain_geom.glsl
@@ -200,7 +200,7 @@ void decide_line_style(int component_id)
 
   if (component_id == 0) {
 out_color = contour_color;
-use_thickness = th * enable_contour;
+use_thickness = th * thickness_contour * enable_contour;
 return;
   }
   if (component_id == 1) {
diff --git a/source/blender/editors/lanpr/lanpr_chain.c 
b/source/blender/editors/lanpr/lanpr_chain.c
index 1632a4022e6..75aa19dcd95 100644
--- a/source/blender/editors/lanpr/lanpr_chain.c
+++ b/source/blender/editors/lanpr/lanpr_chain.c
@@ -240,18 +240,18 @@ void 
ED_lanpr_NO_THREAD_chain_feature_lines(LANPR_RenderBuffer *rb)
 while (ba && (new_rl = lanpr_get_connected_render_line(ba, new_rv, 
_rv, rl->flags))) {
   new_rl->flags |= LANPR_EDGE_FLAG_CHAIN_PICKED;
 
-  N[0] = N[1] = N[2] = 0;
-  if (new_rl->tl) {
-N[0] += new_rl->tl->gn[0];
-N[1] += new_rl->tl->gn[1];
-N[2] += new_rl->tl->gn[2];
-  }
-  if (new_rl->tr) {
-N[0] += new_rl->tr->gn[0];
-N[1] += new_rl->tr->gn[1];
-N[2] += new_rl->tr->gn[2];
-  }
-  if (rl->tl || rl->tr) {
+  if (new_rl->tl || new_rl->tr) {
+zero_v3(N);
+if (new_rl->tl) {
+  N[0] += new_rl->tl->gn[0];
+  N[1] += new_rl->tl->gn[1];
+  N[2] += new_rl->tl->gn[2];
+}
+if (new_rl->tr) {
+  N[0] += new_rl->tr->gn[0];
+  N[1] += new_rl->tr->gn[1];
+  N[2] += new_rl->tr->gn[2];
+}
 normalize_v3(N);
   }
 
@@ -338,6 +338,21 @@ void 
ED_lanpr_NO_THREAD_chain_feature_lines(LANPR_RenderBuffer *rb)
 while (ba && (new_rl = lanpr_get_connected_render_line(ba, new_rv, 
_rv, rl->flags))) {
   new_rl->flags |= LANPR_EDGE_FLAG_CHAIN_PICKED;
 
+  if (new_rl->tl || new_rl->tr) {
+zero_v3(N);
+if (new_rl->tl) {
+  N[0] += new_rl->tl->gn[0];
+  N[1] += new_rl->tl->gn[1];
+  N[2] += new_rl->tl->gn[2];
+}
+if (new_rl->tr) {
+  N[0] += new_rl->tr->gn[0];
+  N[1] += new_rl->tr->gn[1];
+  N[2] += new_rl->tr->gn[2];
+}
+normalize_v3(N);
+  }
+
   /*  fix leading vertex type */
   rlci = rlc->chain.last;
   rlci->line_type = new_rl->flags & LANPR_EDGE_FLAG_ALL_TYPE;

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


[Bf-blender-cvs] [8b4f00269c9] master: UI: rename rotate to orbit for viewport sensitivity

2019-08-04 Thread Campbell Barton
Commit: 8b4f00269c91cff040792717122d959392141ad3
Author: Campbell Barton
Date:   Mon Aug 5 13:07:55 2019 +1000
Branches: master
https://developer.blender.org/rB8b4f00269c91cff040792717122d959392141ad3

UI: rename rotate to orbit for viewport sensitivity

Matches names of related preferences.

===

M   source/blender/makesrna/intern/rna_userdef.c

===

diff --git a/source/blender/makesrna/intern/rna_userdef.c 
b/source/blender/makesrna/intern/rna_userdef.c
index e649a95fb06..bed06171cbf 100644
--- a/source/blender/makesrna/intern/rna_userdef.c
+++ b/source/blender/makesrna/intern/rna_userdef.c
@@ -5236,14 +5236,14 @@ static void rna_def_userdef_input(BlenderRNA *brna)
   RNA_def_property_float_default(prop, DEG2RADF(0.4f));
   RNA_def_property_ui_range(prop, DEG2RADF(0.001f), DEG2RADF(15.0f), 1.0f, 2);
   RNA_def_property_ui_text(prop,
-   "Rotate Sensitivity",
-   "Rotation amount per-pixel to control how fast the 
viewport rotates");
+   "Orbit Sensitivity",
+   "Rotation amount per-pixel to control how fast the 
viewport orbits");
 
   prop = RNA_def_property(srna, "view_rotate_sensitivity_trackball", 
PROP_FLOAT, PROP_FACTOR);
   RNA_def_property_range(prop, 0.1f, 10.0f);
   RNA_def_property_float_default(prop, 1.0f);
   RNA_def_property_ui_range(prop, 0.1f, 2.0f, 0.01f, 2);
-  RNA_def_property_ui_text(prop, "Rotate Sensitivity", "Scale trackball 
rotation sensitivity");
+  RNA_def_property_ui_text(prop, "Orbit Sensitivity", "Scale trackball orbit 
sensitivity");
 
   /* tweak tablet & mouse preset */
   prop = RNA_def_property(srna, "drag_threshold_mouse", PROP_INT, PROP_PIXEL);

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


[Bf-blender-cvs] [5462908a296] soc-2019-npr: LANPR: Add checkbox to normal controlled line weight.

2019-08-04 Thread YimingWu
Commit: 5462908a2962bb30867b5ece161ea3a0f88640ed
Author: YimingWu
Date:   Mon Aug 5 10:48:43 2019 +0800
Branches: soc-2019-npr
https://developer.blender.org/rB5462908a2962bb30867b5ece161ea3a0f88640ed

LANPR: Add checkbox to normal controlled line weight.

===

M   release/scripts/startup/bl_ui/properties_render.py
M   source/blender/draw/engines/lanpr/lanpr_cpu.c
M   source/blender/editors/lanpr/lanpr_cpu.c
M   source/blender/makesdna/DNA_lanpr_types.h
M   source/blender/makesrna/intern/rna_lanpr.c

===

diff --git a/release/scripts/startup/bl_ui/properties_render.py 
b/release/scripts/startup/bl_ui/properties_render.py
index 12577e78146..ff13da1f977 100644
--- a/release/scripts/startup/bl_ui/properties_render.py
+++ b/release/scripts/startup/bl_ui/properties_render.py
@@ -897,10 +897,9 @@ class 
RENDER_PT_lanpr_line_normal_effects(RenderButtonsPanel, Panel):
 active_layer = lanpr.layers.active_layer
 return scene.render.engine=="BLENDER_LANPR" and active_layer and 
lanpr.master_mode == "SOFTWARE"
 
-# sub panel doesn't support this?
-#def draw_header(self, context):
-#active_layer = lanpr.layers.active_layer
-#self.layout.prop(context.scene.lanpr, "enabled", text="")
+def draw_header(self, context):
+active_layer = context.scene.lanpr.layers.active_layer
+self.layout.prop(active_layer, "normal_enabled", text="")   
 
 def draw(self, context):
 scene = context.scene
diff --git a/source/blender/draw/engines/lanpr/lanpr_cpu.c 
b/source/blender/draw/engines/lanpr/lanpr_cpu.c
index 6d2d49eac15..be4f1668044 100644
--- a/source/blender/draw/engines/lanpr/lanpr_cpu.c
+++ b/source/blender/draw/engines/lanpr/lanpr_cpu.c
@@ -161,9 +161,10 @@ void ED_lanpr_rebuild_all_command(SceneLANPR *lanpr)
 void ED_lanpr_calculate_normal_object_vector(LANPR_LineLayer *ll, float 
*normal_object_direction)
 {
   Object *ob;
+  if(!ll->normal_enabled){
+return;
+  }
   switch (ll->normal_mode) {
-case LANPR_NORMAL_DONT_CARE:
-  return;
 case LANPR_NORMAL_DIRECTIONAL:
   if (!(ob = ll->normal_control_object)) {
 normal_object_direction[0] = 0;
@@ -217,6 +218,7 @@ void lanpr_software_draw_scene(void *vedata, GPUFrameBuffer 
*dfb, int is_render)
   float clear_depth = 1.0f;
   uint clear_stencil = 0xFF;
   eGPUFrameBufferBits clear_bits = GPU_DEPTH_BIT | GPU_COLOR_BIT;
+  static int zero_value = 0;
 
   if (lanpr->use_world_background) {
 copy_v3_v3(use_background_color, >world->horr);
@@ -327,7 +329,7 @@ void lanpr_software_draw_scene(void *vedata, GPUFrameBuffer 
*dfb, int is_render)
 DRW_shgroup_uniform_int(
 rb->ChainShgrp, "enable_intersection", >intersection.enabled, 
1);
 
-DRW_shgroup_uniform_int(rb->ChainShgrp, "normal_mode", 
>normal_mode, 1);
+DRW_shgroup_uniform_int(rb->ChainShgrp, "normal_mode", 
ll->normal_enabled?>normal_mode:_value, 1);
 DRW_shgroup_uniform_int(
 rb->ChainShgrp, "normal_effect_inverse", 
>normal_effect_inverse, 1);
 DRW_shgroup_uniform_float(rb->ChainShgrp, "normal_ramp_begin", 
>normal_ramp_begin, 1);
@@ -427,7 +429,7 @@ void lanpr_software_draw_scene(void *vedata, GPUFrameBuffer 
*dfb, int is_render)
   DRW_shgroup_uniform_vec4(ll->shgrp, "preview_viewport", 
stl->g_data->dpix_viewport, 1);
   DRW_shgroup_uniform_vec4(ll->shgrp, "output_viewport", 
stl->g_data->output_viewport, 1);
 
-  DRW_shgroup_uniform_int(ll->shgrp, "normal_mode", >normal_mode, 
1);
+  DRW_shgroup_uniform_int(ll->shgrp, "normal_mode", 
ll->normal_enabled?>normal_mode:_value, 1);
   DRW_shgroup_uniform_int(
   ll->shgrp, "normal_effect_inverse", >normal_effect_inverse, 
1);
   DRW_shgroup_uniform_float(ll->shgrp, "normal_ramp_begin", 
>normal_ramp_begin, 1);
diff --git a/source/blender/editors/lanpr/lanpr_cpu.c 
b/source/blender/editors/lanpr/lanpr_cpu.c
index 1085dac6685..514d918fd0d 100644
--- a/source/blender/editors/lanpr/lanpr_cpu.c
+++ b/source/blender/editors/lanpr/lanpr_cpu.c
@@ -150,6 +150,8 @@ LANPR_LineLayer *ED_lanpr_new_line_layer(SceneLANPR *lanpr)
   ll->normal_ramp_begin = 0.0f;
   ll->normal_ramp_end = 1.0f;
 
+  ll->normal_mode = LANPR_NORMAL_DIRECTIONAL;
+
   lanpr->active_layer = ll;
   BLI_addtail(>line_layers, ll);
 
diff --git a/source/blender/makesdna/DNA_lanpr_types.h 
b/source/blender/makesdna/DNA_lanpr_types.h
index 317af82d911..1add9bd61d7 100644
--- a/source/blender/makesdna/DNA_lanpr_types.h
+++ b/source/blender/makesdna/DNA_lanpr_types.h
@@ -46,7 +46,8 @@ typedef enum LANPR_TaperSettings {
 } LANPR_TaperSettings;
 
 typedef enum LANPR_NomalEffect {
-  LANPR_NORMAL_DONT_CARE = 0,
+  /* Shouldn't have access to zero value. */
+  /* Enable/disable is another flag. */
   LANPR_NORMAL_DIRECTIONAL = 1,
   LANPR_NORMAL_POINT = 2,
 } 

[Bf-blender-cvs] [cd02fe5d705] master: Cleanup: remove underscore prefix for used vars

2019-08-04 Thread Campbell Barton
Commit: cd02fe5d70506539800c50544dc75a9ae1c72b9d
Author: Campbell Barton
Date:   Mon Aug 5 12:47:55 2019 +1000
Branches: master
https://developer.blender.org/rBcd02fe5d70506539800c50544dc75a9ae1c72b9d

Cleanup: remove underscore prefix for used vars

Also remove unused vars.

===

M   release/scripts/startup/bl_ui/space_clip.py
M   release/scripts/startup/bl_ui/space_text.py
M   release/scripts/startup/bl_ui/space_topbar.py

===

diff --git a/release/scripts/startup/bl_ui/space_clip.py 
b/release/scripts/startup/bl_ui/space_clip.py
index ff2dfca6cf8..37c76bf327c 100644
--- a/release/scripts/startup/bl_ui/space_clip.py
+++ b/release/scripts/startup/bl_ui/space_clip.py
@@ -1442,10 +1442,10 @@ class CLIP_MT_tracking_context_menu(Menu):
 def poll(cls, context):
 return context.space_data.clip
 
-def draw(self, _context):
+def draw(self, context):
 layout = self.layout
 
-mode = _context.space_data.mode
+mode = context.space_data.mode
 
 if mode == 'TRACKING':
 
diff --git a/release/scripts/startup/bl_ui/space_text.py 
b/release/scripts/startup/bl_ui/space_text.py
index 534561efab4..7a50b690ad8 100644
--- a/release/scripts/startup/bl_ui/space_text.py
+++ b/release/scripts/startup/bl_ui/space_text.py
@@ -129,10 +129,10 @@ class TEXT_PT_properties(Panel):
 flow.active = False
 row = flow.row(align=True)
 st = context.space_data
-row.prop(st, "show_margin", text = "Margin")
+row.prop(st, "show_margin", text="Margin")
 rowsub = row.row()
 rowsub.active = st.show_margin
-rowsub.prop(st, "margin_column", text = "")
+rowsub.prop(st, "margin_column", text="")
 
 flow.prop(st, "font_size")
 flow.prop(st, "tab_width")
@@ -285,8 +285,6 @@ class TEXT_MT_format(Menu):
 
 def draw(self, _context):
 layout = self.layout
-st = _context.space_data
-text = st.text
 
 layout.operator("text.indent")
 layout.operator("text.unindent")
@@ -321,12 +319,11 @@ class TEXT_MT_edit(Menu):
 
 @classmethod
 def poll(cls, context):
-return (context.space_data.text)
+return context.space_data.text is not None
 
-def draw(self, _context):
+def draw(self, context):
 layout = self.layout
-st = _context.space_data
-text = st.text
+st = context.space_data
 
 layout.operator("ed.undo")
 layout.operator("ed.redo")
@@ -369,8 +366,6 @@ class TEXT_MT_toolbox(Menu):
 
 def draw(self, _context):
 layout = self.layout
-st = _context.space_data
-text = st.text
 
 layout.operator_context = 'INVOKE_DEFAULT'
 
diff --git a/release/scripts/startup/bl_ui/space_topbar.py 
b/release/scripts/startup/bl_ui/space_topbar.py
index a3382908ea1..f735e7b770f 100644
--- a/release/scripts/startup/bl_ui/space_topbar.py
+++ b/release/scripts/startup/bl_ui/space_topbar.py
@@ -154,10 +154,10 @@ class TOPBAR_MT_editor_menus(Menu):
 bl_idname = "TOPBAR_MT_editor_menus"
 bl_label = ""
 
-def draw(self, _context):
+def draw(self, context):
 layout = self.layout
 
-if _context.area.show_menus:
+if context.area.show_menus:
 layout.menu("TOPBAR_MT_app", text="", icon='BLENDER')
 else:
 layout.menu("TOPBAR_MT_app", text="Blender")

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


[Bf-blender-cvs] [f69ea92599a] master: Cleanup: add braces

2019-08-04 Thread Campbell Barton
Commit: f69ea92599aaf032276cc519f8bccd0a66ac30a5
Author: Campbell Barton
Date:   Mon Aug 5 12:33:00 2019 +1000
Branches: master
https://developer.blender.org/rBf69ea92599aaf032276cc519f8bccd0a66ac30a5

Cleanup: add braces

===

M   source/blender/editors/gpencil/gpencil_ops.c

===

diff --git a/source/blender/editors/gpencil/gpencil_ops.c 
b/source/blender/editors/gpencil/gpencil_ops.c
index d259bb9183c..a1645a5c67d 100644
--- a/source/blender/editors/gpencil/gpencil_ops.c
+++ b/source/blender/editors/gpencil/gpencil_ops.c
@@ -81,12 +81,14 @@ static bool gp_stroke_paintmode_poll_with_tool(bContext *C, 
const char gpencil_t
 {
   /* TODO: limit this to mode, but review 2D editors */
   bGPdata *gpd = CTX_data_gpencil_data(C);
-  if (!gpd)
+  if (!gpd) {
 return false;
+  }
 
   ToolSettings *ts = CTX_data_tool_settings(C);
-  if (!ts || !ts->gp_paint)
+  if (!ts || !ts->gp_paint) {
 return false;
+  }
 
   Brush *brush = BKE_paint_brush(>gp_paint->paint);
   return ((gpd->flag & GP_DATA_STROKE_PAINTMODE) && (brush && 
brush->gpencil_settings) &&

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


[Bf-blender-cvs] [8621c634a92] soc-2019-npr: LANPR: Default values for normal style.

2019-08-04 Thread YimingWu
Commit: 8621c634a92714e4449d13eeebdbdcd1813a4d91
Author: YimingWu
Date:   Mon Aug 5 10:17:08 2019 +0800
Branches: soc-2019-npr
https://developer.blender.org/rB8621c634a92714e4449d13eeebdbdcd1813a4d91

LANPR: Default values for normal style.

===

M   source/blender/draw/engines/lanpr/lanpr_engine.c
M   source/blender/editors/lanpr/lanpr_cpu.c
M   source/blender/makesdna/DNA_lanpr_types.h

===

diff --git a/source/blender/draw/engines/lanpr/lanpr_engine.c 
b/source/blender/draw/engines/lanpr/lanpr_engine.c
index 75136e929f4..95df026f91a 100644
--- a/source/blender/draw/engines/lanpr/lanpr_engine.c
+++ b/source/blender/draw/engines/lanpr/lanpr_engine.c
@@ -725,18 +725,16 @@ DrawEngineType draw_engine_lanpr_type = {
 NULL,
 NULL,
 N_("LANPR"),
-_data_size, /*  why should we have the "&" ? */
+_data_size,
 _engine_init,
 _engine_free,
 _cache_init,
 _cache_populate,
 _cache_finish,
 NULL,  /*  draw background */
-_draw_scene, /*  draw scene, looks like that not much difference 
except a camera overlay
-*/
-   /*  image. */
+_draw_scene, /*  draw scene */
 _view_update,
-_id_update, /* _id_update, wait till I figure out how to do 
this. */
+_id_update,
 _render_to_image,
 };
 
@@ -749,7 +747,7 @@ RenderEngineType DRW_engine_viewport_lanpr_type = {
 NULL, /*  update */
 _render_to_image, /*  render to img */
 NULL, /*  bake */
-NULL, /*  doesn't seem to be what I thought it was... 
_view_update,// view update */
+NULL, /*  view update */
 NULL, /*  render to view */
 NULL, /*  update in script */
 NULL, /*  update in render pass */
diff --git a/source/blender/editors/lanpr/lanpr_cpu.c 
b/source/blender/editors/lanpr/lanpr_cpu.c
index ae5d6a7ff3e..1085dac6685 100644
--- a/source/blender/editors/lanpr/lanpr_cpu.c
+++ b/source/blender/editors/lanpr/lanpr_cpu.c
@@ -145,6 +145,11 @@ LANPR_LineLayer *ED_lanpr_new_line_layer(SceneLANPR *lanpr)
   ll->edge_mark.enabled = 1;
   ll->intersection.enabled = 1;
 
+  ll->normal_thickness_begin = 0.2f;
+  ll->normal_thickness_end = 1.5f;
+  ll->normal_ramp_begin = 0.0f;
+  ll->normal_ramp_end = 1.0f;
+
   lanpr->active_layer = ll;
   BLI_addtail(>line_layers, ll);
 
diff --git a/source/blender/makesdna/DNA_lanpr_types.h 
b/source/blender/makesdna/DNA_lanpr_types.h
index d0140fbddb0..317af82d911 100644
--- a/source/blender/makesdna/DNA_lanpr_types.h
+++ b/source/blender/makesdna/DNA_lanpr_types.h
@@ -95,9 +95,10 @@ typedef struct LANPR_LineLayer {
 
   int use_multiple_levels;
   int qi_begin;
-  int qi_end; /* these are for QI Range thing... just occlusion levels */
+  int qi_end;
 
-  char name[64]; /* to be displayed on the list */
+  /** To be displayed on the list */
+  char name[64]; 
 
   LANPR_LineType contour;
   LANPR_LineType crease;
@@ -119,13 +120,12 @@ typedef struct LANPR_LineLayer {
   float normal_thickness_end;
   struct Object *normal_control_object;
 
-  int logic_mode; /* for component evaluation */
+  /** For component evaluation */
+  int logic_mode; 
   int _pad2;
 
   ListBase components;
 
-  // still need legacy mode
-  // should use runtime pointer
   struct DRWShadingGroup *shgrp;
   struct GPUBatch *batch;

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


[Bf-blender-cvs] [51cc9d8fdfd] soc-2019-npr: Cleanup: comment format in two headers.

2019-08-04 Thread YimingWu
Commit: 51cc9d8fdfd77b86796d11d0b3ac8401a0b6581e
Author: YimingWu
Date:   Mon Aug 5 08:47:20 2019 +0800
Branches: soc-2019-npr
https://developer.blender.org/rB51cc9d8fdfd77b86796d11d0b3ac8401a0b6581e

Cleanup: comment format in two headers.

===

M   source/blender/draw/engines/lanpr/lanpr_all.h
M   source/blender/editors/include/ED_lanpr.h

===

diff --git a/source/blender/draw/engines/lanpr/lanpr_all.h 
b/source/blender/draw/engines/lanpr/lanpr_all.h
index 426c3449332..ff0b7ec25d0 100644
--- a/source/blender/draw/engines/lanpr/lanpr_all.h
+++ b/source/blender/draw/engines/lanpr/lanpr_all.h
@@ -71,7 +71,7 @@ extern struct DrawEngineType draw_engine_lanpr_type;
 typedef struct LANPR_RenderBuffer LANPR_RenderBuffer;
 
 typedef struct LANPR_PassList {
-  /* Snake */
+  /* Image filtering */
   struct DRWPass *depth_pass;
   struct DRWPass *color_pass;
   struct DRWPass *normal_pass;
@@ -79,7 +79,7 @@ typedef struct LANPR_PassList {
   struct DRWPass *edge_thinning;
   struct DRWPass *snake_pass;
 
-  /* DPIX */
+  /* GPU */
   struct DRWPass *dpix_transform_pass;
   struct DRWPass *dpix_preview_pass;
 
@@ -90,16 +90,16 @@ typedef struct LANPR_PassList {
 
 typedef struct LANPR_FramebufferList {
 
-  /* Snake */
+  /* CPU */
   struct GPUFrameBuffer *passes;
   struct GPUFrameBuffer *edge_intermediate;
   struct GPUFrameBuffer *edge_thinning;
 
-  /* DPIX */
+  /* GPU */
   struct GPUFrameBuffer *dpix_transform;
   struct GPUFrameBuffer *dpix_preview;
 
-  /* Software */
+  /* Image filtering */
   struct GPUFrameBuffer *software_ms;
 
 } LANPR_FramebufferList;
@@ -111,18 +111,21 @@ typedef struct LANPR_TextureList {
   struct GPUTexture *depth;
   struct GPUTexture *edge_intermediate;
 
-  struct GPUTexture *dpix_in_pl;/* point l */
-  struct GPUTexture *dpix_in_pr;/* point r */
-  struct GPUTexture *dpix_in_nl;/* normal l */
-  struct GPUTexture *dpix_in_nr;/* normal r */
-  struct GPUTexture *dpix_in_edge_mask; /* RGBA, r:Material, G: Freestyle Edge 
Mark, BA:Reserved
-   for future usage */
+  struct GPUTexture *dpix_in_pl;
+  struct GPUTexture *dpix_in_pr;
+  struct GPUTexture *dpix_in_nl;
+  struct GPUTexture *dpix_in_nr;
+
+  /** RGBA texture format,
+   * R:Material, G: Freestyle Edge Mark,
+   * BA:Reserved for future usages */
+  struct GPUTexture *dpix_in_edge_mask; 
 
   struct GPUTexture *dpix_out_pl;
   struct GPUTexture *dpix_out_pr;
   struct GPUTexture *dpix_out_length;
 
-  /* multisample resolve */
+  /** Multisample resolve */
   struct GPUTexture *ms_resolve_depth;
   struct GPUTexture *ms_resolve_color;
 
@@ -139,7 +142,7 @@ typedef struct LANPR_PrivateData {
 
   DRWShadingGroup *debug_shgrp;
 
-  /*  snake */
+  /* Image filtering */
 
   float normal_clamp;
   float normal_strength;
@@ -149,18 +152,21 @@ typedef struct LANPR_PrivateData {
   float zfar;
   float znear;
 
-  int stage; /*  thinning */
+  /** Thinning stage */
+  int stage; 
 
   float *line_result;
   unsigned char *line_result_8bit;
-  int width, height; /*  if not match recreate buffer. */
+  
+  /** If not match then recreate buffer. */
+  int width, height; 
   void **sample_table;
 
   ListBase pending_samples;
   ListBase erased_samples;
   ListBase line_strips;
 
-  /*  dpix data */
+  /* dpix data */
 
   void *atlas_pl;
   void *atlas_pr;
@@ -180,7 +186,7 @@ typedef struct LANPR_PrivateData {
   float dpix_znear;
   float dpix_zfar;
 
-  /*  drawing */
+  /* drawing */
 
   unsigned v_buf;
   unsigned i_buf;
@@ -211,8 +217,6 @@ typedef struct LANPR_Data {
 
 /*  functions */
 
-/*  dpix */
-
 void lanpr_init_atlas_inputs(void *ved);
 void lanpr_destroy_atlas(void *ved);
 int lanpr_feed_atlas_data_obj(void *vedata,
diff --git a/source/blender/editors/include/ED_lanpr.h 
b/source/blender/editors/include/ED_lanpr.h
index 24cd32578da..9fa8f7f9eac 100644
--- a/source/blender/editors/include/ED_lanpr.h
+++ b/source/blender/editors/include/ED_lanpr.h
@@ -25,7 +25,6 @@
 #define __ED_LANPR_H__
 
 #include 
-/* #include "lanpr_all.h" */
 #include "BLI_listbase.h"
 #include "BLI_linklist.h"
 #include "BLI_threads.h"
@@ -62,7 +61,7 @@ typedef int tnsVector2i[2];
 typedef struct LANPR_StaticMemPoolNode {
   Link item;
   int used_byte;
-  /*   <--- User Mem Start Here */
+  /* User memory starts here */
 } LANPR_StaticMemPoolNode;
 
 typedef struct LANPR_StaticMemPool {
@@ -74,7 +73,8 @@ typedef struct LANPR_StaticMemPool {
 typedef struct LANPR_TextureSample {
   struct LANPR_TextureSample *next, *prev;
   int X, Y;
-  float Z; /*  for future usage */
+  /** For future usage */
+  float Z; 
 } LANPR_TextureSample;
 
 typedef struct LANPR_LineStripPoint {
@@ -99,12 +99,13 @@ typedef struct LANPR_RenderTriangle {
   short material_id;
   ListBase intersecting_verts;
   char cull_status;
-  struct 

[Bf-blender-cvs] [4ddc14c7325] soc-2019-npr: Cleanup: make format.

2019-08-04 Thread YimingWu
Commit: 4ddc14c7325f3c229720e1d99049733349fe841b
Author: YimingWu
Date:   Mon Aug 5 08:48:21 2019 +0800
Branches: soc-2019-npr
https://developer.blender.org/rB4ddc14c7325f3c229720e1d99049733349fe841b

Cleanup: make format.

===

M   source/blender/blenkernel/intern/scene.c
M   source/blender/blentranslation/msgfmt/msgfmt.c
M   source/blender/draw/engines/gpencil/shaders/gpencil_stroke_frag.glsl
M   source/blender/draw/engines/lanpr/lanpr_all.h
M   source/blender/draw/engines/lanpr/lanpr_chain_draw.c
M   source/blender/draw/engines/lanpr/lanpr_cpu.c
M   source/blender/draw/engines/lanpr/lanpr_engine.c
M   source/blender/draw/intern/draw_cache_impl_mesh.c
M   source/blender/editors/include/ED_lanpr.h
M   source/blender/editors/lanpr/lanpr_chain.c
M   source/blender/editors/lanpr/lanpr_cpu.c
M   source/blender/editors/lanpr/lanpr_util.c
M   source/blender/editors/mesh/editmesh_path.c
M   source/blender/editors/space_buttons/buttons_context.c
M   source/blender/makesdna/DNA_lanpr_types.h
M   source/blender/makesdna/DNA_scene_types.h
M   source/blender/makesrna/intern/rna_brush.c
M   source/blender/makesrna/intern/rna_scene.c

===

diff --git a/source/blender/blenkernel/intern/scene.c 
b/source/blender/blenkernel/intern/scene.c
index 435ee6d917d..b8e2e6b2f88 100644
--- a/source/blender/blenkernel/intern/scene.c
+++ b/source/blender/blenkernel/intern/scene.c
@@ -234,13 +234,13 @@ void BKE_lanpr_copy_data(const Scene *from, Scene *to)
   LANPR_LineLayer *ll, *new_ll;
   LANPR_LineLayerComponent *llc, *new_llc;
 
-  to->lanpr.line_layers.first = to->lanpr.line_layers.last=NULL;
-  memset(>lanpr.line_layers,0,sizeof(ListBase));
+  to->lanpr.line_layers.first = to->lanpr.line_layers.last = NULL;
+  memset(>lanpr.line_layers, 0, sizeof(ListBase));
 
   for (ll = lanpr->line_layers.first; ll; ll = ll->next) {
 new_ll = MEM_callocN(sizeof(LANPR_LineLayer), "Copied Line Layer");
 memcpy(new_ll, ll, sizeof(LANPR_LineLayer));
-memset(_ll->components,0,sizeof(ListBase));
+memset(_ll->components, 0, sizeof(ListBase));
 new_ll->next = new_ll->prev = NULL;
 BLI_addtail(>lanpr.line_layers, new_ll);
 for (llc = ll->components.first; llc; llc = llc->next) {
@@ -365,7 +365,7 @@ void BKE_scene_copy_data(Main *bmain, Scene *sce_dst, const 
Scene *sce_src, cons
 
   /* lanpr data */
 
-   BKE_lanpr_copy_data(sce_src, sce_dst);
+  BKE_lanpr_copy_data(sce_src, sce_dst);
 }
 
 Scene *BKE_scene_copy(Main *bmain, Scene *sce, int type)
@@ -508,8 +508,8 @@ void BKE_lanpr_free_everything(Scene *s)
   LANPR_LineLayer *ll;
   LANPR_LineLayerComponent *llc;
 
-  while ((ll = BLI_pophead(>line_layers))!=NULL) {
-while ((llc = BLI_pophead(>components))!=NULL){
+  while ((ll = BLI_pophead(>line_layers)) != NULL) {
+while ((llc = BLI_pophead(>components)) != NULL) {
   MEM_freeN(llc);
 }
 MEM_freeN(ll);
diff --git a/source/blender/blentranslation/msgfmt/msgfmt.c 
b/source/blender/blentranslation/msgfmt/msgfmt.c
index 86d55e203d9..215c92f87de 100644
--- a/source/blender/blentranslation/msgfmt/msgfmt.c
+++ b/source/blender/blentranslation/msgfmt/msgfmt.c
@@ -82,12 +82,12 @@ static char *trim(char *str)
 return str;
   }
 
-  for (i = 0; i < len && ELEM(str[0], ' ', '\t', '\r','\n'); str++, i++) {
+  for (i = 0; i < len && ELEM(str[0], ' ', '\t', '\r', '\n'); str++, i++) {
 /* pass */
   }
 
   char *end = [len - 1 - i];
-  for (i = len; i > 0 && ELEM(end[0], ' ', '\t', '\r','\n'); end--, i--) {
+  for (i = len; i > 0 && ELEM(end[0], ' ', '\t', '\r', '\n'); end--, i--) {
 /* pass */
   }
 
diff --git 
a/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_frag.glsl 
b/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_frag.glsl
index 8281a696b35..96d4b3eca34 100644
--- a/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_frag.glsl
+++ b/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_frag.glsl
@@ -76,11 +76,11 @@ void main()
   }
 
   /* gradient */
-   if (gradient_f < 1.0) {
+  if (gradient_f < 1.0) {
 float dist = abs(mTexCoord.y - 0.5) * 2.0;
 float decay = dist * (1.0 - gradient_f) * fragColor.a;
 fragColor.a = clamp(fragColor.a - decay, 0.0, 1.0);
-   }
+  }
 
   if (fragColor.a < 0.0035) {
 discard;
diff --git a/source/blender/draw/engines/lanpr/lanpr_all.h 
b/source/blender/draw/engines/lanpr/lanpr_all.h
index ff0b7ec25d0..1ff1b844e7a 100644
--- a/source/blender/draw/engines/lanpr/lanpr_all.h
+++ b/source/blender/draw/engines/lanpr/lanpr_all.h
@@ -111,7 +111,7 @@ typedef struct LANPR_TextureList {
   struct GPUTexture *depth;
   struct GPUTexture *edge_intermediate;
 
-  struct GPUTexture *dpix_in_pl;
+  struct GPUTexture *dpix_in_pl;
   struct GPUTexture *dpix_in_pr;
   struct GPUTexture *dpix_in_nl;
   struct GPUTexture 

[Bf-blender-cvs] [a49b749385c] soc-2019-npr: Merge remote-tracking branch 'origin/master' into soc-2019-npr

2019-08-04 Thread YimingWu
Commit: a49b749385ca62ad0a64a090d54002f2dbfa63ed
Author: YimingWu
Date:   Mon Aug 5 08:24:30 2019 +0800
Branches: soc-2019-npr
https://developer.blender.org/rBa49b749385ca62ad0a64a090d54002f2dbfa63ed

Merge remote-tracking branch 'origin/master' into soc-2019-npr

===



===

diff --cc source/blender/blenkernel/intern/gpencil.c
index 7fbb63f1b12,731e9aff926..3f5ec06f001
--- a/source/blender/blenkernel/intern/gpencil.c
+++ b/source/blender/blenkernel/intern/gpencil.c
@@@ -2663,315 -2057,84 +2663,397 @@@ bool BKE_gpencil_close_stroke(bGPDstrok
return true;
  }
  
 +/* Helper function to check materials with same color */
 +static int gpencil_check_same_material_color(Object *ob_gp, float color[4], 
Material *r_mat)
 +{
 +  Material *ma = NULL;
 +  float color_cu[4];
 +  linearrgb_to_srgb_v3_v3(color_cu, color);
 +  float hsv1[4];
 +  rgb_to_hsv_v(color_cu, hsv1);
 +  hsv1[3] = color[3];
 +
 +  for (int i = 1; i <= ob_gp->totcol; i++) {
 +ma = give_current_material(ob_gp, i);
 +MaterialGPencilStyle *gp_style = ma->gp_style;
 +/* Check color with small tolerance (better in HSV). */
 +float hsv2[4];
 +rgb_to_hsv_v(gp_style->fill_rgba, hsv2);
 +hsv2[3] = gp_style->fill_rgba[3];
 +if (compare_v4v4(hsv1, hsv2, 0.01f)) {
 +  r_mat = ma;
 +  return i - 1;
 +}
 +  }
 +
 +  r_mat = NULL;
 +  return -1;
 +}
 +
 +/* Add gpencil material using curve material as base */
 +static Material *gpencil_add_from_curve_material(Main *bmain,
 + Object *ob_gp,
 + float cu_color[4],
 + const bool gpencil_lines,
 + const bool fill,
 + int *r_idx)
 +{
 +  Material *mat_gp = BKE_gpencil_object_material_new(
 +  bmain, ob_gp, (fill) ? "Material" : "Unassigned", r_idx);
 +  MaterialGPencilStyle *gp_style = mat_gp->gp_style;
 +
 +  /* Stroke color. */
 +  if (gpencil_lines) {
 +ARRAY_SET_ITEMS(gp_style->stroke_rgba, 0.0f, 0.0f, 0.0f, 1.0f);
 +  }
 +  else {
 +linearrgb_to_srgb_v4(gp_style->stroke_rgba, cu_color);
 +  }
 +
 +  /* Fill color. */
 +  linearrgb_to_srgb_v4(gp_style->fill_rgba, cu_color);
 +  /* Fill is false if the original curva hasn't material assigned. */
 +  if (fill) {
 +gp_style->flag |= GP_STYLE_FILL_SHOW;
 +  }
 +
 +  return mat_gp;
 +}
 +
 +/* Helper function to create new stroke section */
 +static void gpencil_add_new_points(bGPDstroke *gps,
 +   float *coord_array,
 +   float pressure,
 +   int init,
 +   int totpoints,
 +   float init_co[3],
 +   bool last)
 +{
 +  for (int i = 0; i < totpoints; i++) {
 +bGPDspoint *pt = >points[i + init];
 +copy_v3_v3(>x, _array[3 * i]);
 +/* Be sure the last point is not on top of the first point of the curve or
 + * the close of the stroke will produce glitches. */
 +if ((last) && (i > 0) && (i == totpoints - 1)) {
 +  float dist = len_v3v3(init_co, >x);
 +  if (dist < 0.1f) {
 +/* Interpolate between previous point and current to back slightly. */
 +bGPDspoint *pt_prev = >points[i + init - 1];
 +interp_v3_v3v3(>x, _prev->x, >x, 0.95f);
 +  }
 +}
 +
 +pt->pressure = pressure;
 +pt->strength = 1.0f;
 +  }
 +}
 +
 +/* Helper function to get the first collection that includes the object. */
 +static Collection *gpencil_get_parent_collection(Scene *scene, Object *ob)
 +{
 +  Collection *mycol = NULL;
 +  FOREACH_SCENE_COLLECTION_BEGIN (scene, collection) {
 +for (CollectionObject *cob = collection->gobject.first; cob; cob = 
cob->next) {
 +  if ((mycol == NULL) && (cob->ob == ob)) {
 +mycol = collection;
 +  }
 +}
 +  }
 +  FOREACH_SCENE_COLLECTION_END;
 +
 +  return mycol;
 +}
 +
 +/* Helper function to convert one spline to grease pencil stroke. */
 +static void gpencil_convert_spline(Main *bmain,
 +   Scene *scene,
 +   Object *ob_gp,
 +   Object *ob_cu,
 +   const bool gpencil_lines,
 +   const bool use_collections,
 +   bGPDframe *gpf,
 +   Nurb *nu)
 +{
 +  Curve *cu = (Curve *)ob_cu->data;
 +  bool cyclic = true;
 +
 +  /* Create Stroke. */
 +  bGPDstroke *gps = MEM_callocN(sizeof(bGPDstroke), "bGPDstroke");
 +  gps->thickness = 1.0f;
 +  gps->gradient_f = 1.0f;
 +  ARRAY_SET_ITEMS(gps->gradient_s, 1.0f, 1.0f);
 +  ARRAY_SET_ITEMS(gps->caps, 

[Bf-blender-cvs] [8708a96ddec] soc-2019-npr: LANPR: UI refactor: naming fixes.

2019-08-04 Thread YimingWu
Commit: 8708a96ddec516e8435332f0ccb3d2b2923902ea
Author: YimingWu
Date:   Mon Aug 5 08:29:05 2019 +0800
Branches: soc-2019-npr
https://developer.blender.org/rB8708a96ddec516e8435332f0ccb3d2b2923902ea

LANPR: UI refactor: naming fixes.

===

M   release/scripts/startup/bl_ui/properties_lanpr.py
M   release/scripts/startup/bl_ui/properties_render.py

===

diff --git a/release/scripts/startup/bl_ui/properties_lanpr.py 
b/release/scripts/startup/bl_ui/properties_lanpr.py
index e20228c09d8..3277921d2b9 100644
--- a/release/scripts/startup/bl_ui/properties_lanpr.py
+++ b/release/scripts/startup/bl_ui/properties_lanpr.py
@@ -81,7 +81,7 @@ class OBJECT_PT_lanpr_settings(LanprButtonsPanel, Panel):
 layout.prop(md,'enable_modifier_mark')
 
 class OBJECT_PT_lanpr_modifier_target(LanprButtonsPanel, Panel):
-bl_label = "GPencil Target"
+bl_label = "Grease Pencil"
 bl_parent_id = "OBJECT_PT_lanpr_settings"
 COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_LANPR', 'BLENDER_OPENGL', 
'BLENDER_EEVEE'}
 
@@ -101,13 +101,7 @@ class OBJECT_PT_lanpr_modifier_target(LanprButtonsPanel, 
Panel):
 layout.use_property_split = True
 layout.use_property_decorate = False
 
-split = layout.split(factor=0.5)
-col = split.column()
-col.label(text="Object:")
-col.prop(md, "target", text="")
-col = split.column()
-col.label(text="Vertex Group:")
-col.label(text="Inoperative")
+layout.prop(md, "target")
 
 if md.target:
 if not is_unit_transformation(md.target):
diff --git a/release/scripts/startup/bl_ui/properties_render.py 
b/release/scripts/startup/bl_ui/properties_render.py
index dcd0b503e93..12577e78146 100644
--- a/release/scripts/startup/bl_ui/properties_render.py
+++ b/release/scripts/startup/bl_ui/properties_render.py
@@ -832,15 +832,15 @@ class RENDER_PT_lanpr_layer_settings(RenderButtonsPanel, 
Panel):
 col = layout.column(align=True)
 if not expand:
 col.prop(active_layer, "color")
-col.prop(active_layer, "thickness")
+col.prop(active_layer, "thickness", text="Main Thickness")
 
-lanpr_make_line_type(expand,layout,active_layer.contour,"Draw Contour")
-lanpr_make_line_type(expand,layout,active_layer.crease,"Draw Crease")
-lanpr_make_line_type(expand,layout,active_layer.edge_mark,"Draw 
EdgeMark")
-
lanpr_make_line_type(expand,layout,active_layer.material_separate,"Draw 
Material")
+lanpr_make_line_type(expand,layout,active_layer.contour,"Contour")
+lanpr_make_line_type(expand,layout,active_layer.crease,"Crease")
+lanpr_make_line_type(expand,layout,active_layer.edge_mark,"EdgeMark")
+
lanpr_make_line_type(expand,layout,active_layer.material_separate,"Material")
 
 if lanpr.enable_intersections:
-lanpr_make_line_type(expand,layout,active_layer.intersection,"Draw 
Intersection")
+
lanpr_make_line_type(expand,layout,active_layer.intersection,"Intersection")
 else:
 layout.label(text= "Intersection calculation disabled.")
 
@@ -1065,7 +1065,7 @@ class RENDER_PT_lanpr_gpencil(RenderButtonsPanel, Panel):
 layout.prop(lanpr,"auto_update", text='Auto Update')
 layout.prop(lanpr,"gpencil_overwrite", text='Overwrite')
 if not lanpr.auto_update:
-layout.operator("scene.lanpr_update_gp_strokes", 
icon='FILE_REFRESH', text='Update GPencil Targets')
+layout.operator("scene.lanpr_update_gp_strokes", 
icon='FILE_REFRESH', text='Update Grease Pencil Targets')
 layout.operator("scene.lanpr_bake_gp_strokes", 
icon='RENDER_ANIMATION', text='Bake All Frames')
 
 class RENDER_PT_lanpr_software_chain_styles(RenderButtonsPanel, Panel):
@@ -1133,8 +1133,8 @@ class RENDER_PT_lanpr_options(RenderButtonsPanel, Panel):
 layout.prop(lanpr,"enable_intersections")
 layout.prop(lanpr, "disable_edge_splits")
 
-if scene.render.engine=='BLENDER_LANPR':
-layout.prop(lanpr,"enable_chaining", text = "Chain lines")
+if scene.render.engine=='BLENDER_LANPR' and 
lanpr.master_mode=='SOFTWARE':
+layout.prop(lanpr,"enable_chaining", text = "Chained Lines")
 
 
 classes = (

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


[Bf-blender-cvs] [9fbf522dd8c] master: Cleanup: Fix eeve_lut arrays being duplicated in blender binary.

2019-08-04 Thread Lazydodo
Commit: 9fbf522dd8c0cf5008e46534ffadcabed2bae60c
Author: Lazydodo
Date:   Sun Aug 4 14:32:53 2019 -0600
Branches: master
https://developer.blender.org/rB9fbf522dd8c0cf5008e46534ffadcabed2bae60c

Cleanup: Fix eeve_lut arrays being duplicated in blender binary.

Both eevee_materials.c and workbench_deferred.c include eeve_lut.h which has 
its arrays marked as static leading to the blue_noise array being embedded into 
our binary twice.

This change takes the arrays out of the header and properly marks them as const 
since they are lookup tables and should not be written to.

Reviewers: fclem, brecht

Differential Revision: https://developer.blender.org/D5346

===

M   source/blender/draw/CMakeLists.txt
A   source/blender/draw/engines/eevee/eevee_lut.c
M   source/blender/draw/engines/eevee/eevee_lut.h

===

diff --git a/source/blender/draw/CMakeLists.txt 
b/source/blender/draw/CMakeLists.txt
index 016cd628969..8dc4972bcc1 100644
--- a/source/blender/draw/CMakeLists.txt
+++ b/source/blender/draw/CMakeLists.txt
@@ -94,6 +94,7 @@ set(SRC
   engines/eevee/eevee_lightprobes.c
   engines/eevee/eevee_lights.c
   engines/eevee/eevee_lookdev.c
+  engines/eevee/eevee_lut.c
   engines/eevee/eevee_materials.c
   engines/eevee/eevee_mist.c
   engines/eevee/eevee_motion_blur.c
diff --git a/source/blender/draw/engines/eevee/eevee_lut.h 
b/source/blender/draw/engines/eevee/eevee_lut.c
similarity index 99%
copy from source/blender/draw/engines/eevee/eevee_lut.h
copy to source/blender/draw/engines/eevee/eevee_lut.c
index 9b9adc2b7d3..8db45e4cee6 100644
--- a/source/blender/draw/engines/eevee/eevee_lut.h
+++ b/source/blender/draw/engines/eevee/eevee_lut.c
@@ -21,10 +21,7 @@
  * \ingroup gpu
  */
 
-#ifndef __EEVEE_LUT_H__
-#define __EEVEE_LUT_H__
-
-static float ltc_mat_ggx[64 * 64 * 4] = {
+const float ltc_mat_ggx[64 * 64 * 4] = {
 1.00, 0.00,  0.00, 0.20, 1.00, 0.00,  0.00,  
0.000504,
 1.00, 0.00,  0.00, 0.002016, 1.00, 0.00,  0.00,  
0.004535,
 1.00, 0.00,  0.00, 0.008063, 1.00, 0.00,  0.00,  
0.012598,
@@ -2074,7 +2071,8 @@ static float ltc_mat_ggx[64 * 64 * 4] = {
 0.964420, -0.165154, 0.163178, 1.473200, 0.979856, -0.139302, 0.127531,  
1.535740,
 0.982561, -0.111340, 0.090346, 1.599820, 0.996389, -0.080812, 0.048901,  
1.657700,
 };
-static float ltc_mag_ggx[64 * 64 * 2] = {
+
+const float ltc_mag_ggx[64 * 64 * 2] = {
 1.00, 0.00, 1.00, 0.00, 1.00, 0.00, 1.00, 
0.00, 1.00,
 0.00, 1.00, 0.00, 1.00, 0.00, 1.00, 0.00, 
1.00, 0.00,
 1.00, 0.00, 1.00, 0.00, 0.98, 0.00, 0.94, 
0.00, 0.89,
@@ -2988,7 +2986,7 @@ static float ltc_mag_ggx[64 * 64 * 2] = {
 0.932164, 0.047190,
 };
 
-static float bsdf_split_sum_ggx[64 * 64 * 2] = {
+const float bsdf_split_sum_ggx[64 * 64 * 2] = {
 1.00f, 0.00f, 1.00f, 0.00f, 1.00f, 0.00f, 
1.00f, 0.00f,
 1.00f, 0.00f, 1.00f, 0.00f, 0.999512f, 0.00f, 
0.999512f, 0.00f,
 0.999512f, 0.00f, 0.999023f, 0.01f, 0.999023f, 0.01f, 
0.998535f, 0.01f,
@@ -4015,7 +4013,7 @@ static float bsdf_split_sum_ggx[64 * 64 * 2] = {
 0.626953f, 0.023544f, 0.616699f, 0.022186f, 0.605957f, 0.020920f, 
0.594727f, 0.019730f,
 };
 
-static float ltc_disk_integral[64 * 64] = {
+const float ltc_disk_integral[64 * 64] = {
 0.00f, 0.00f, 0.00f, 0.00f, 0.00f, 0.00f, 
0.00f, 0.00f,
 0.00f, 0.00f, 0.00f, 0.00f, 0.00f, 0.00f, 
0.00f, 0.00f,
 0.00f, 0.00f, 0.00f, 0.00f, 0.00f, 0.00f, 
0.00f, 0.00f,
@@ -4530,7 +4528,7 @@ static float ltc_disk_integral[64 * 64] = {
 0.89f, 0.904762f, 0.920635f, 0.936508f, 0.952381f, 0.968254f, 
0.984127f, 1.00f,
 };
 
-static float btdf_split_sum_ggx[32][64 * 64] = {
+const float btdf_split_sum_ggx[32][64 * 64] = {
 {
 0.00f, 1.00f, 0.999512f, 1.00f, 1.00f, 1.00f, 
1.00f, 1.00f,
 1.00f, 1.00f, 0.999512f, 1.00f, 1.00f, 0.999512f, 
1.00f, 1.00f,
@@ -20981,7 +20979,7 @@ static float btdf_split_sum_ggx[32][64 * 64] = {
 }};
 
 /* 4 different blue noise, one per channel */
-static float blue_noise[64 * 64][4] = {
+const float blue_noise[64 * 64][4] = {
 {0.367188f, 0.855469f, 0.523438f, 0.375000f}, {0.242188f, 0.699219f, 
0.164062f, 0.292969f},
 {0.828125f, 0.257812f, 0.449219f, 0.679688f}, {0.128906f, 0.523438f, 
0.058594f, 0.164062f},
 {0.214844f, 0.648438f, 0.75f, 0.492188f}, {0.535156f, 0.226562f, 
0.492188f, 0.429688f},
@@ -23031,5 +23029,3 @@ static float blue_noise[64 * 64][4] = {
 {0.621094f, 0.089844f, 0.50f, 0.394531f}, {0.523438f, 

[Bf-blender-cvs] [418fdee5dc9] master: Cleanup: Mark large arrays of of constant data as const.

2019-08-04 Thread Lazydodo
Commit: 418fdee5dc9950fef17c1d2fc9f6137af5a42ac9
Author: Lazydodo
Date:   Sun Aug 4 14:24:29 2019 -0600
Branches: master
https://developer.blender.org/rB418fdee5dc9950fef17c1d2fc9f6137af5a42ac9

Cleanup: Mark large arrays of of constant data as const.

For background information see D5345

Reviewers: brecht, sergey

Differential Revision: https://developer.blender.org/D5345

===

M   intern/cycles/render/sobol.cpp
M   source/blender/datatoc/datatoc.c

===

diff --git a/intern/cycles/render/sobol.cpp b/intern/cycles/render/sobol.cpp
index 5fb3531b03b..c821249b239 100644
--- a/intern/cycles/render/sobol.cpp
+++ b/intern/cycles/render/sobol.cpp
@@ -62,7 +62,7 @@ typedef struct SobolDirectionNumbers {
 
 /* Keep simple alignment. */
 /* clang-format off */
-static SobolDirectionNumbers SOBOL_NUMBERS[SOBOL_MAX_DIMENSIONS - 1] = {
+static const SobolDirectionNumbers SOBOL_NUMBERS[SOBOL_MAX_DIMENSIONS - 1] = {
 {2, 1, 0, {1}},
 {3, 2, 1, {1, 3}},
 {4, 3, 1, {1, 3, 1}},
@@ -21279,10 +21279,10 @@ void sobol_generate_direction_vectors(uint 
vectors[][SOBOL_BITS], int dimensions
 v[i] = 1 << (31 - i);  // all m's = 1
 
   for (int dim = 1; dim < dimensions; dim++) {
-SobolDirectionNumbers *numbers = _NUMBERS[dim - 1];
-uint s = numbers->s;
-uint a = numbers->a;
-uint *m = numbers->m;
+const SobolDirectionNumbers *numbers = _NUMBERS[dim - 1];
+const uint s = numbers->s;
+const uint a = numbers->a;
+const uint *m = numbers->m;
 
 v = vectors[dim];
 
diff --git a/source/blender/datatoc/datatoc.c b/source/blender/datatoc/datatoc.c
index 6fe2650d66c..cf8d17e5e7e 100644
--- a/source/blender/datatoc/datatoc.c
+++ b/source/blender/datatoc/datatoc.c
@@ -94,11 +94,11 @@ int main(int argc, char **argv)
   fprintf(fpout, "/* DataToC output of file <%s> */\n\n", argv[1]);
 
   /* Quiet 'missing-variable-declarations' warning. */
-  fprintf(fpout, "extern int datatoc_%s_size;\n", argv[1]);
-  fprintf(fpout, "extern char datatoc_%s[];\n\n", argv[1]);
+  fprintf(fpout, "extern const int datatoc_%s_size;\n", argv[1]);
+  fprintf(fpout, "extern const char datatoc_%s[];\n\n", argv[1]);
 
-  fprintf(fpout, "int datatoc_%s_size = %d;\n", argv[1], (int)size);
-  fprintf(fpout, "char datatoc_%s[] = {\n", argv[1]);
+  fprintf(fpout, "const int datatoc_%s_size = %d;\n", argv[1], (int)size);
+  fprintf(fpout, "const char datatoc_%s[] = {\n", argv[1]);
   while (size--) {
 /* if we want to open in an editor
  * this is nicer to avoid very long lines */

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


[Bf-blender-cvs] [749e4bf0f35] soc-2019-cycles-procedural: Added Fraction operator to Vector Math node.

2019-08-04 Thread OmarSquircleArt
Commit: 749e4bf0f35ac9a976b7e4d3ddfcf363ad81f87c
Author: OmarSquircleArt
Date:   Sun Aug 4 21:31:15 2019 +0200
Branches: soc-2019-cycles-procedural
https://developer.blender.org/rB749e4bf0f35ac9a976b7e4d3ddfcf363ad81f87c

Added Fraction operator to Vector Math node.

===

M   intern/cycles/kernel/shaders/node_vector_math.osl
M   intern/cycles/kernel/svm/svm_math_util.h
M   intern/cycles/kernel/svm/svm_types.h
M   intern/cycles/render/nodes.cpp
M   intern/cycles/util/util_math_float3.h
M   source/blender/gpu/shaders/gpu_shader_material.glsl
M   source/blender/makesdna/DNA_node_types.h
M   source/blender/makesrna/intern/rna_nodetree.c
M   source/blender/nodes/shader/nodes/node_shader_vectMath.c

===

diff --git a/intern/cycles/kernel/shaders/node_vector_math.osl 
b/intern/cycles/kernel/shaders/node_vector_math.osl
index 2c67cf6b880..20683067eed 100644
--- a/intern/cycles/kernel/shaders/node_vector_math.osl
+++ b/intern/cycles/kernel/shaders/node_vector_math.osl
@@ -96,6 +96,9 @@ shader node_vector_math(string type = "add",
   else if (type == "modulo") {
 Vector = mod(A, B);
   }
+  else if (type == "fraction") {
+Vector = A - floor(A);
+  }
   else if (type == "absolute") {
 Vector = abs(A);
   }
diff --git a/intern/cycles/kernel/svm/svm_math_util.h 
b/intern/cycles/kernel/svm/svm_math_util.h
index adbf46de6f7..6661691938a 100644
--- a/intern/cycles/kernel/svm/svm_math_util.h
+++ b/intern/cycles/kernel/svm/svm_math_util.h
@@ -70,6 +70,9 @@ ccl_device void svm_vector_math(
 case NODE_VECTOR_MATH_MODULO:
   *vector = make_float3(safe_modulo(a.x, b.x), safe_modulo(a.y, b.y), 
safe_modulo(a.z, b.z));
   break;
+case NODE_VECTOR_MATH_FRACTION:
+  *vector = fract(a);
+  break;
 case NODE_VECTOR_MATH_ABSOLUTE:
   *vector = fabs(a);
   break;
diff --git a/intern/cycles/kernel/svm/svm_types.h 
b/intern/cycles/kernel/svm/svm_types.h
index f8f50105fe5..d7808065211 100644
--- a/intern/cycles/kernel/svm/svm_types.h
+++ b/intern/cycles/kernel/svm/svm_types.h
@@ -298,6 +298,7 @@ typedef enum NodeVectorMathType {
   NODE_VECTOR_MATH_FLOOR,
   NODE_VECTOR_MATH_CEIL,
   NODE_VECTOR_MATH_MODULO,
+  NODE_VECTOR_MATH_FRACTION,
   NODE_VECTOR_MATH_ABSOLUTE,
   NODE_VECTOR_MATH_MINIMUM,
   NODE_VECTOR_MATH_MAXIMUM,
diff --git a/intern/cycles/render/nodes.cpp b/intern/cycles/render/nodes.cpp
index 270a69c9cd9..45dcc283056 100644
--- a/intern/cycles/render/nodes.cpp
+++ b/intern/cycles/render/nodes.cpp
@@ -5727,6 +5727,7 @@ NODE_DEFINE(VectorMathNode)
   type_enum.insert("floor", NODE_VECTOR_MATH_FLOOR);
   type_enum.insert("ceil", NODE_VECTOR_MATH_CEIL);
   type_enum.insert("modulo", NODE_VECTOR_MATH_MODULO);
+  type_enum.insert("fraction", NODE_VECTOR_MATH_FRACTION);
   type_enum.insert("absolute", NODE_VECTOR_MATH_ABSOLUTE);
   type_enum.insert("minimum", NODE_VECTOR_MATH_MINIMUM);
   type_enum.insert("maximum", NODE_VECTOR_MATH_MAXIMUM);
diff --git a/intern/cycles/util/util_math_float3.h 
b/intern/cycles/util/util_math_float3.h
index 095134cc13e..ec59f2b2d7b 100644
--- a/intern/cycles/util/util_math_float3.h
+++ b/intern/cycles/util/util_math_float3.h
@@ -61,6 +61,7 @@ ccl_device_inline float3 rcp(const float3 );
 ccl_device_inline float3 sqrt(const float3 );
 ccl_device_inline float3 floor(const float3 );
 ccl_device_inline float3 ceil(const float3 );
+ccl_device_inline float3 fract(const float3 );
 #endif /* !__KERNEL_OPENCL__ */
 
 ccl_device_inline float min3(float3 a);
@@ -312,6 +313,11 @@ ccl_device_inline float3 ceil(const float3 )
 #  endif
 }
 
+ccl_device_inline float3 fract(const float3 )
+{
+  return a - floor(a);
+}
+
 ccl_device_inline float3 mix(const float3 , const float3 , float t)
 {
   return a + t * (b - a);
diff --git a/source/blender/gpu/shaders/gpu_shader_material.glsl 
b/source/blender/gpu/shaders/gpu_shader_material.glsl
index 07bca5737e5..b729af3ce3f 100644
--- a/source/blender/gpu/shaders/gpu_shader_material.glsl
+++ b/source/blender/gpu/shaders/gpu_shader_material.glsl
@@ -564,6 +564,11 @@ void vec_math_modulo(vec3 a, vec3 b, float scale, out vec3 
outvec, out float out
   math_modulo(a.z, b.z, outvec.z);
 }
 
+void vec_math_fraction(vec3 a, vec3 b, float scale, out vec3 outvec, out float 
outval)
+{
+  outvec = fract(a);
+}
+
 void vec_math_absolute(vec3 a, vec3 b, float scale, out vec3 outvec, out float 
outval)
 {
   outvec = abs(a);
diff --git a/source/blender/makesdna/DNA_node_types.h 
b/source/blender/makesdna/DNA_node_types.h
index 63a19aa6c65..f187ecd0764 100644
--- a/source/blender/makesdna/DNA_node_types.h
+++ b/source/blender/makesdna/DNA_node_types.h
@@ -1225,9 +1225,10 @@ enum {
   NODE_VECTOR_MATH_FLOOR = 13,
   NODE_VECTOR_MATH_CEIL = 14,
   NODE_VECTOR_MATH_MODULO = 15,
-  NODE_VECTOR_MATH_ABSOLUTE = 16,
-  NODE_VECTOR_MATH_MINIMUM = 17,
-  NODE_VECTOR_MATH_MAXIMUM = 18,
+  

[Bf-blender-cvs] [37cef86f0d7] master: Fix: msgfmt add support for cr-lf style line endings

2019-08-04 Thread Lazydodo
Commit: 37cef86f0d7a4c617d651f56b1c5347e7ec7d479
Author: Lazydodo
Date:   Sun Aug 4 11:46:00 2019 -0600
Branches: master
https://developer.blender.org/rB37cef86f0d7a4c617d651f56b1c5347e7ec7d479

Fix: msgfmt add support for cr-lf style line endings

linux did not recognize cr as a valid character.

Reviewers: brecht

Differential Revision: https://developer.blender.org/D5337

===

M   source/blender/blentranslation/msgfmt/msgfmt.c

===

diff --git a/source/blender/blentranslation/msgfmt/msgfmt.c 
b/source/blender/blentranslation/msgfmt/msgfmt.c
index f226699d8bf..86d55e203d9 100644
--- a/source/blender/blentranslation/msgfmt/msgfmt.c
+++ b/source/blender/blentranslation/msgfmt/msgfmt.c
@@ -82,12 +82,12 @@ static char *trim(char *str)
 return str;
   }
 
-  for (i = 0; i < len && ELEM(str[0], ' ', '\t', '\n'); str++, i++) {
+  for (i = 0; i < len && ELEM(str[0], ' ', '\t', '\r','\n'); str++, i++) {
 /* pass */
   }
 
   char *end = [len - 1 - i];
-  for (i = len; i > 0 && ELEM(end[0], ' ', '\t', '\n'); end--, i--) {
+  for (i = len; i > 0 && ELEM(end[0], ' ', '\t', '\r','\n'); end--, i--) {
 /* pass */
   }

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


[Bf-blender-cvs] [ee50bed139f] soc-2019-cycles-procedural: Add Ceiling operator to Vector Math node.

2019-08-04 Thread OmarSquircleArt
Commit: ee50bed139fcbe2f5caa4105836ed1e642e154d8
Author: OmarSquircleArt
Date:   Sun Aug 4 18:00:20 2019 +0200
Branches: soc-2019-cycles-procedural
https://developer.blender.org/rBee50bed139fcbe2f5caa4105836ed1e642e154d8

Add Ceiling operator to Vector Math node.

===

M   intern/cycles/kernel/shaders/node_vector_math.osl
M   intern/cycles/kernel/svm/svm_math_util.h
M   intern/cycles/kernel/svm/svm_types.h
M   intern/cycles/render/bake.cpp
M   intern/cycles/render/nodes.cpp
M   intern/cycles/subd/subd_dice.cpp
M   intern/cycles/subd/subd_split.cpp
M   intern/cycles/util/util_math_float3.h
M   source/blender/gpu/shaders/gpu_shader_material.glsl
M   source/blender/makesdna/DNA_node_types.h
M   source/blender/makesrna/intern/rna_nodetree.c
M   source/blender/nodes/shader/nodes/node_shader_vectMath.c

===

diff --git a/intern/cycles/kernel/shaders/node_vector_math.osl 
b/intern/cycles/kernel/shaders/node_vector_math.osl
index c8220724801..2c67cf6b880 100644
--- a/intern/cycles/kernel/shaders/node_vector_math.osl
+++ b/intern/cycles/kernel/shaders/node_vector_math.osl
@@ -90,6 +90,9 @@ shader node_vector_math(string type = "add",
   else if (type == "floor") {
 Vector = floor(A);
   }
+  else if (type == "ceil") {
+Vector = ceil(A);
+  }
   else if (type == "modulo") {
 Vector = mod(A, B);
   }
diff --git a/intern/cycles/kernel/svm/svm_math_util.h 
b/intern/cycles/kernel/svm/svm_math_util.h
index ae78e0749ab..adbf46de6f7 100644
--- a/intern/cycles/kernel/svm/svm_math_util.h
+++ b/intern/cycles/kernel/svm/svm_math_util.h
@@ -64,6 +64,9 @@ ccl_device void svm_vector_math(
 case NODE_VECTOR_MATH_FLOOR:
   *vector = floor(a);
   break;
+case NODE_VECTOR_MATH_CEIL:
+  *vector = ceil(a);
+  break;
 case NODE_VECTOR_MATH_MODULO:
   *vector = make_float3(safe_modulo(a.x, b.x), safe_modulo(a.y, b.y), 
safe_modulo(a.z, b.z));
   break;
diff --git a/intern/cycles/kernel/svm/svm_types.h 
b/intern/cycles/kernel/svm/svm_types.h
index 971c22988f2..f8f50105fe5 100644
--- a/intern/cycles/kernel/svm/svm_types.h
+++ b/intern/cycles/kernel/svm/svm_types.h
@@ -296,6 +296,7 @@ typedef enum NodeVectorMathType {
 
   NODE_VECTOR_MATH_SNAP,
   NODE_VECTOR_MATH_FLOOR,
+  NODE_VECTOR_MATH_CEIL,
   NODE_VECTOR_MATH_MODULO,
   NODE_VECTOR_MATH_ABSOLUTE,
   NODE_VECTOR_MATH_MINIMUM,
diff --git a/intern/cycles/render/bake.cpp b/intern/cycles/render/bake.cpp
index 73893921500..56bf1295446 100644
--- a/intern/cycles/render/bake.cpp
+++ b/intern/cycles/render/bake.cpp
@@ -124,7 +124,7 @@ BakeData *BakeManager::init(const int object, const size_t 
tri_offset, const siz
 void BakeManager::set_shader_limit(const size_t x, const size_t y)
 {
   m_shader_limit = x * y;
-  m_shader_limit = (size_t)pow(2, ceil(log(m_shader_limit) / log(2)));
+  m_shader_limit = (size_t)pow(2, ceilf(logf(m_shader_limit) / logf(2)));
 }
 
 bool BakeManager::bake(Device *device,
diff --git a/intern/cycles/render/nodes.cpp b/intern/cycles/render/nodes.cpp
index 0925b3218fb..270a69c9cd9 100644
--- a/intern/cycles/render/nodes.cpp
+++ b/intern/cycles/render/nodes.cpp
@@ -5725,6 +5725,7 @@ NODE_DEFINE(VectorMathNode)
 
   type_enum.insert("snap", NODE_VECTOR_MATH_SNAP);
   type_enum.insert("floor", NODE_VECTOR_MATH_FLOOR);
+  type_enum.insert("ceil", NODE_VECTOR_MATH_CEIL);
   type_enum.insert("modulo", NODE_VECTOR_MATH_MODULO);
   type_enum.insert("absolute", NODE_VECTOR_MATH_ABSOLUTE);
   type_enum.insert("minimum", NODE_VECTOR_MATH_MINIMUM);
diff --git a/intern/cycles/subd/subd_dice.cpp b/intern/cycles/subd/subd_dice.cpp
index fb96be5065b..914b408911e 100644
--- a/intern/cycles/subd/subd_dice.cpp
+++ b/intern/cycles/subd/subd_dice.cpp
@@ -323,8 +323,8 @@ void QuadDice::dice(SubPatch , EdgeFactors )
   float S = 1.0f;
 #endif
 
-  Mu = max((int)ceil(S * Mu), 2);  // XXX handle 0 & 1?
-  Mv = max((int)ceil(S * Mv), 2);  // XXX handle 0 & 1?
+  Mu = max((int)ceilf(S * Mu), 2);  // XXX handle 0 & 1?
+  Mv = max((int)ceilf(S * Mv), 2);  // XXX handle 0 & 1?
 
   /* reserve space for new verts */
   int offset = params.mesh->verts.size();
diff --git a/intern/cycles/subd/subd_split.cpp 
b/intern/cycles/subd/subd_split.cpp
index 1c99ca80507..e5b85fcfd60 100644
--- a/intern/cycles/subd/subd_split.cpp
+++ b/intern/cycles/subd/subd_split.cpp
@@ -80,9 +80,9 @@ int DiagSplit::T(Patch *patch, float2 Pstart, float2 Pend)
 Plast = P;
   }
 
-  int tmin = (int)ceil(Lsum / params.dicing_rate);
-  int tmax = (int)ceil((params.test_steps - 1) * Lmax /
-   params.dicing_rate);  // XXX paper says N instead of 
N-1, seems wrong?
+  int tmin = (int)ceilf(Lsum / params.dicing_rate);
+  int tmax = (int)ceilf((params.test_steps - 1) * Lmax /
+params.dicing_rate);  // XXX paper says N instead of 
N-1, seems wrong?
 
   if (tmax - 

[Bf-blender-cvs] [f08662d3ed0] master: Sculpting: Remove Show Diffuse Color Option

2019-08-04 Thread Your Name
Commit: f08662d3ed0c0e0054d45b398a77106822d43a95
Author: Your Name
Date:   Sun Aug 4 11:53:48 2019 -0400
Branches: master
https://developer.blender.org/rBf08662d3ed0c0e0054d45b398a77106822d43a95

Sculpting: Remove Show Diffuse Color Option

This should have been removed in 2.80 as the functionality was removed.
This feature now does not do anything and can be removed.

Differential Revision: https://developer.blender.org/D5411

===

M   release/scripts/startup/bl_ui/space_view3d.py
M   release/scripts/startup/bl_ui/space_view3d_toolbar.py
M   source/blender/blenkernel/BKE_paint.h
M   source/blender/blenkernel/BKE_pbvh.h
M   source/blender/blenkernel/intern/cdderivedmesh.c
M   source/blender/blenkernel/intern/paint.c
M   source/blender/blenkernel/intern/pbvh.c
M   source/blender/blenkernel/intern/pbvh_intern.h
M   source/blender/blenkernel/intern/subsurf_ccg.c
M   source/blender/makesdna/DNA_scene_types.h
M   source/blender/makesrna/intern/rna_sculpt_paint.c

===

diff --git a/release/scripts/startup/bl_ui/space_view3d.py 
b/release/scripts/startup/bl_ui/space_view3d.py
index ca65fa52ea3..582d4fe1258 100644
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@ -2862,7 +2862,6 @@ class VIEW3D_MT_sculpt(Menu):
 layout.prop(sculpt, "show_low_resolution")
 layout.prop(sculpt, "show_brush")
 layout.prop(sculpt, "use_deform_only")
-layout.prop(sculpt, "show_diffuse_color")
 layout.prop(sculpt, "show_mask")
 
 
@@ -5760,8 +5759,6 @@ class VIEW3D_PT_overlay_sculpt(Panel):
 view = context.space_data
 overlay = view.overlay
 
-layout.prop(sculpt, "show_diffuse_color")
-
 row = layout.row(align=True)
 row.prop(sculpt, "show_mask", text="")
 sub = row.row()
diff --git a/release/scripts/startup/bl_ui/space_view3d_toolbar.py 
b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
index 262fafa596d..c4f69e18c43 100644
--- a/release/scripts/startup/bl_ui/space_view3d_toolbar.py
+++ b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
@@ -431,7 +431,7 @@ class VIEW3D_PT_tools_brush_color(Panel, View3DPaintPanel):
 
 if context.vertex_paint_object:
 brush_texpaint_common_color(self, context, layout, brush, 
settings, True)
-
+
 else:
 layout.prop(brush, "color_type", expand=True)
 
@@ -1118,8 +1118,6 @@ class VIEW3D_PT_sculpt_options(Panel, View3DPaintPanel):
 col = flow.column()
 col.prop(sculpt, "use_deform_only")
 col = flow.column()
-col.prop(sculpt, "show_diffuse_color")
-col = flow.column()
 col.prop(sculpt, "show_mask")
 
 
diff --git a/source/blender/blenkernel/BKE_paint.h 
b/source/blender/blenkernel/BKE_paint.h
index cf9608e7c0f..cbe250d0ac8 100644
--- a/source/blender/blenkernel/BKE_paint.h
+++ b/source/blender/blenkernel/BKE_paint.h
@@ -242,7 +242,6 @@ typedef struct SculptSession {
 
   /* PBVH acceleration structure */
   struct PBVH *pbvh;
-  bool show_diffuse_color;
   bool show_mask;
 
   /* Painting on deformed mesh */
diff --git a/source/blender/blenkernel/BKE_pbvh.h 
b/source/blender/blenkernel/BKE_pbvh.h
index 79b462e749c..3806868e060 100644
--- a/source/blender/blenkernel/BKE_pbvh.h
+++ b/source/blender/blenkernel/BKE_pbvh.h
@@ -409,7 +409,6 @@ bool BKE_pbvh_node_vert_update_check_any(PBVH *bvh, 
PBVHNode *node);
 // void BKE_pbvh_node_BB_expand(PBVHNode *node, float co[3]);
 
 bool pbvh_has_mask(PBVH *bvh);
-void pbvh_show_diffuse_color_set(PBVH *bvh, bool show_diffuse_color);
 void pbvh_show_mask_set(PBVH *bvh, bool show_mask);
 
 #endif /* __BKE_PBVH_H__ */
diff --git a/source/blender/blenkernel/intern/cdderivedmesh.c 
b/source/blender/blenkernel/intern/cdderivedmesh.c
index eb1e8311a12..28bd9c0cea5 100644
--- a/source/blender/blenkernel/intern/cdderivedmesh.c
+++ b/source/blender/blenkernel/intern/cdderivedmesh.c
@@ -270,7 +270,6 @@ static PBVH *cdDM_getPBVH(Object *ob, DerivedMesh *dm)
  ob->sculpt->cd_vert_node_offset,
  ob->sculpt->cd_face_node_offset);
 
-pbvh_show_diffuse_color_set(cddm->pbvh, ob->sculpt->show_diffuse_color);
 pbvh_show_mask_set(cddm->pbvh, ob->sculpt->show_mask);
   }
 
@@ -300,7 +299,6 @@ static PBVH *cdDM_getPBVH(Object *ob, DerivedMesh *dm)
 looptri,
 looptris_num);
 
-pbvh_show_diffuse_color_set(cddm->pbvh, ob->sculpt->show_diffuse_color);
 pbvh_show_mask_set(cddm->pbvh, ob->sculpt->show_mask);
 
 deformed = check_sculpt_object_deformed(ob, true);
diff --git a/source/blender/blenkernel/intern/paint.c 
b/source/blender/blenkernel/intern/paint.c
index 99ae19c3c30..0e93c80ecb5 100644
--- a/source/blender/blenkernel/intern/paint.c
+++ 

[Bf-blender-cvs] [025c0f44411] soc-2019-cycles-procedural: Add Floor operator to Vector Math node.

2019-08-04 Thread OmarSquircleArt
Commit: 025c0f44411f9da74ce66da22af148e81b13eaeb
Author: OmarSquircleArt
Date:   Sun Aug 4 17:25:08 2019 +0200
Branches: soc-2019-cycles-procedural
https://developer.blender.org/rB025c0f44411f9da74ce66da22af148e81b13eaeb

Add Floor operator to Vector Math node.

===

M   intern/cycles/kernel/shaders/node_vector_math.osl
M   intern/cycles/kernel/svm/svm_math_util.h
M   intern/cycles/kernel/svm/svm_types.h
M   intern/cycles/render/nodes.cpp
M   source/blender/gpu/shaders/gpu_shader_material.glsl
M   source/blender/makesdna/DNA_node_types.h
M   source/blender/makesrna/intern/rna_nodetree.c
M   source/blender/nodes/shader/nodes/node_shader_vectMath.c

===

diff --git a/intern/cycles/kernel/shaders/node_vector_math.osl 
b/intern/cycles/kernel/shaders/node_vector_math.osl
index cba2b9f6487..c8220724801 100644
--- a/intern/cycles/kernel/shaders/node_vector_math.osl
+++ b/intern/cycles/kernel/shaders/node_vector_math.osl
@@ -87,6 +87,9 @@ shader node_vector_math(string type = "add",
   else if (type == "snap") {
 Vector = snap(A, B);
   }
+  else if (type == "floor") {
+Vector = floor(A);
+  }
   else if (type == "modulo") {
 Vector = mod(A, B);
   }
diff --git a/intern/cycles/kernel/svm/svm_math_util.h 
b/intern/cycles/kernel/svm/svm_math_util.h
index 50c13929532..ae78e0749ab 100644
--- a/intern/cycles/kernel/svm/svm_math_util.h
+++ b/intern/cycles/kernel/svm/svm_math_util.h
@@ -61,6 +61,9 @@ ccl_device void svm_vector_math(
 floorf(safe_divide(a.y, b.y)) * b.y,
 floorf(safe_divide(a.z, b.z)) * b.z);
   break;
+case NODE_VECTOR_MATH_FLOOR:
+  *vector = floor(a);
+  break;
 case NODE_VECTOR_MATH_MODULO:
   *vector = make_float3(safe_modulo(a.x, b.x), safe_modulo(a.y, b.y), 
safe_modulo(a.z, b.z));
   break;
diff --git a/intern/cycles/kernel/svm/svm_types.h 
b/intern/cycles/kernel/svm/svm_types.h
index 33ede286211..971c22988f2 100644
--- a/intern/cycles/kernel/svm/svm_types.h
+++ b/intern/cycles/kernel/svm/svm_types.h
@@ -295,6 +295,7 @@ typedef enum NodeVectorMathType {
   NODE_VECTOR_MATH_NORMALIZE,
 
   NODE_VECTOR_MATH_SNAP,
+  NODE_VECTOR_MATH_FLOOR,
   NODE_VECTOR_MATH_MODULO,
   NODE_VECTOR_MATH_ABSOLUTE,
   NODE_VECTOR_MATH_MINIMUM,
diff --git a/intern/cycles/render/nodes.cpp b/intern/cycles/render/nodes.cpp
index be7748f46e0..0925b3218fb 100644
--- a/intern/cycles/render/nodes.cpp
+++ b/intern/cycles/render/nodes.cpp
@@ -5724,6 +5724,7 @@ NODE_DEFINE(VectorMathNode)
   type_enum.insert("normalize", NODE_VECTOR_MATH_NORMALIZE);
 
   type_enum.insert("snap", NODE_VECTOR_MATH_SNAP);
+  type_enum.insert("floor", NODE_VECTOR_MATH_FLOOR);
   type_enum.insert("modulo", NODE_VECTOR_MATH_MODULO);
   type_enum.insert("absolute", NODE_VECTOR_MATH_ABSOLUTE);
   type_enum.insert("minimum", NODE_VECTOR_MATH_MINIMUM);
diff --git a/source/blender/gpu/shaders/gpu_shader_material.glsl 
b/source/blender/gpu/shaders/gpu_shader_material.glsl
index 7d9f5fc1b18..c830e08c99f 100644
--- a/source/blender/gpu/shaders/gpu_shader_material.glsl
+++ b/source/blender/gpu/shaders/gpu_shader_material.glsl
@@ -547,6 +547,11 @@ void vec_math_snap(vec3 a, vec3 b, float scale, out vec3 
outvec, out float outva
   outvec.z = (b.z != 0.0) ? floor(a.z / b.z) * b.z : 0.0;
 }
 
+void vec_math_floor(vec3 a, vec3 b, float scale, out vec3 outvec, out float 
outval)
+{
+  outvec = floor(a);
+}
+
 void vec_math_modulo(vec3 a, vec3 b, float scale, out vec3 outvec, out float 
outval)
 {
   math_modulo(a.x, b.x, outvec.x);
diff --git a/source/blender/makesdna/DNA_node_types.h 
b/source/blender/makesdna/DNA_node_types.h
index 929ae1840f9..d1c9ba02fb1 100644
--- a/source/blender/makesdna/DNA_node_types.h
+++ b/source/blender/makesdna/DNA_node_types.h
@@ -1222,10 +1222,11 @@ enum {
   NODE_VECTOR_MATH_NORMALIZE = 11,
 
   NODE_VECTOR_MATH_SNAP = 12,
-  NODE_VECTOR_MATH_MODULO = 13,
-  NODE_VECTOR_MATH_ABSOLUTE = 14,
-  NODE_VECTOR_MATH_MINIMUM = 15,
-  NODE_VECTOR_MATH_MAXIMUM = 16,
+  NODE_VECTOR_MATH_FLOOR = 13,
+  NODE_VECTOR_MATH_MODULO = 14,
+  NODE_VECTOR_MATH_ABSOLUTE = 15,
+  NODE_VECTOR_MATH_MINIMUM = 16,
+  NODE_VECTOR_MATH_MAXIMUM = 17,
 };
 
 /* mix rgb node flags */
diff --git a/source/blender/makesrna/intern/rna_nodetree.c 
b/source/blender/makesrna/intern/rna_nodetree.c
index cefcf7e1995..48b3ddf3b26 100644
--- a/source/blender/makesrna/intern/rna_nodetree.c
+++ b/source/blender/makesrna/intern/rna_nodetree.c
@@ -168,6 +168,7 @@ const EnumPropertyItem rna_enum_node_vec_math_items[] = {
 {NODE_VECTOR_MATH_NORMALIZE, "NORMALIZE", 0, "Normalize", "Normalize A"},
 {0, "", ICON_NONE, NULL, NULL},
 {NODE_VECTOR_MATH_SNAP, "SNAP", 0, "Snap", "Round A to the nearest integer 
multiple of B"},
+{NODE_VECTOR_MATH_FLOOR, "FLOOR", 0, "Floor", "Entrywise floor"},
 

[Bf-blender-cvs] [ebd26aaee42] soc-2019-cycles-procedural: Remove Average vector meth operator.

2019-08-04 Thread OmarSquircleArt
Commit: ebd26aaee427bba3c714ff8968c4bf436538a463
Author: OmarSquircleArt
Date:   Sun Aug 4 16:57:51 2019 +0200
Branches: soc-2019-cycles-procedural
https://developer.blender.org/rBebd26aaee427bba3c714ff8968c4bf436538a463

Remove Average vector meth operator.

===

M   intern/cycles/kernel/shaders/node_vector_math.osl
M   intern/cycles/kernel/svm/svm_math_util.h
M   intern/cycles/kernel/svm/svm_types.h
M   intern/cycles/render/nodes.cpp
M   source/blender/blenloader/intern/versioning_cycles.c
M   source/blender/gpu/shaders/gpu_shader_material.glsl
M   source/blender/makesdna/DNA_node_types.h
M   source/blender/makesrna/intern/rna_nodetree.c
M   source/blender/nodes/shader/nodes/node_shader_vectMath.c

===

diff --git a/intern/cycles/kernel/shaders/node_vector_math.osl 
b/intern/cycles/kernel/shaders/node_vector_math.osl
index 496cb22cf54..cba2b9f6487 100644
--- a/intern/cycles/kernel/shaders/node_vector_math.osl
+++ b/intern/cycles/kernel/shaders/node_vector_math.osl
@@ -69,9 +69,6 @@ shader node_vector_math(string type = "add",
   else if (type == "reflect") {
 Vector = reflect(A, B);
   }
-  else if (type == "average") {
-Vector = normalize(A + B);
-  }
   else if (type == "dot_product") {
 Value = dot(A, B);
   }
diff --git a/intern/cycles/kernel/svm/svm_math_util.h 
b/intern/cycles/kernel/svm/svm_math_util.h
index 9ba1e31b1d7..50c13929532 100644
--- a/intern/cycles/kernel/svm/svm_math_util.h
+++ b/intern/cycles/kernel/svm/svm_math_util.h
@@ -41,9 +41,6 @@ ccl_device void svm_vector_math(
 case NODE_VECTOR_MATH_REFLECT:
   *vector = reflect(a, b);
   break;
-case NODE_VECTOR_MATH_AVERAGE:
-  *vector = safe_normalize(a + b);
-  break;
 case NODE_VECTOR_MATH_DOT_PRODUCT:
   *value = dot(a, b);
   break;
diff --git a/intern/cycles/kernel/svm/svm_types.h 
b/intern/cycles/kernel/svm/svm_types.h
index a4bedc8ad16..33ede286211 100644
--- a/intern/cycles/kernel/svm/svm_types.h
+++ b/intern/cycles/kernel/svm/svm_types.h
@@ -281,20 +281,18 @@ typedef enum NodeMathType {
 typedef enum NodeVectorMathType {
   NODE_VECTOR_MATH_ADD,
   NODE_VECTOR_MATH_SUBTRACT,
-  NODE_VECTOR_MATH_AVERAGE,
-  NODE_VECTOR_MATH_DOT_PRODUCT,
-  NODE_VECTOR_MATH_CROSS_PRODUCT,
-  NODE_VECTOR_MATH_NORMALIZE,
-
   NODE_VECTOR_MATH_MULTIPLY,
   NODE_VECTOR_MATH_DIVIDE,
 
+  NODE_VECTOR_MATH_CROSS_PRODUCT,
   NODE_VECTOR_MATH_PROJECT,
   NODE_VECTOR_MATH_REFLECT,
+  NODE_VECTOR_MATH_DOT_PRODUCT,
 
   NODE_VECTOR_MATH_DISTANCE,
   NODE_VECTOR_MATH_LENGTH,
   NODE_VECTOR_MATH_SCALE,
+  NODE_VECTOR_MATH_NORMALIZE,
 
   NODE_VECTOR_MATH_SNAP,
   NODE_VECTOR_MATH_MODULO,
diff --git a/intern/cycles/render/nodes.cpp b/intern/cycles/render/nodes.cpp
index 1a61d3b9096..be7748f46e0 100644
--- a/intern/cycles/render/nodes.cpp
+++ b/intern/cycles/render/nodes.cpp
@@ -5716,9 +5716,8 @@ NODE_DEFINE(VectorMathNode)
   type_enum.insert("cross_product", NODE_VECTOR_MATH_CROSS_PRODUCT);
   type_enum.insert("project", NODE_VECTOR_MATH_PROJECT);
   type_enum.insert("reflect", NODE_VECTOR_MATH_REFLECT);
-  type_enum.insert("average", NODE_VECTOR_MATH_AVERAGE);
-
   type_enum.insert("dot_product", NODE_VECTOR_MATH_DOT_PRODUCT);
+
   type_enum.insert("distance", NODE_VECTOR_MATH_DISTANCE);
   type_enum.insert("length", NODE_VECTOR_MATH_LENGTH);
   type_enum.insert("scale", NODE_VECTOR_MATH_SCALE);
diff --git a/source/blender/blenloader/intern/versioning_cycles.c 
b/source/blender/blenloader/intern/versioning_cycles.c
index 4eab08c8f47..3fcec749432 100644
--- a/source/blender/blenloader/intern/versioning_cycles.c
+++ b/source/blender/blenloader/intern/versioning_cycles.c
@@ -730,6 +730,38 @@ static void update_vector_normalize_operators(bNodeTree 
*ntree)
   }
 }
 
+/* The Average operator is no longer available in the Vector Math node.
+ * This altered the order of operators in the vector math type enum.
+ * To fix this, we remap the enum values according to the following rules:
+ *
+ * NODE_VECTOR_MATH_DOT_PRODUCT : 3 -> 7
+ * NODE_VECTOR_MATH_NORMALIZE   : 5 -> 11
+ *
+ * Additionally, NODE_VECTOR_MATH_AVERAGE is assigned a value of -1 to be
+ * identified later in the versioning code:
+ *
+ * NODE_VECTOR_MATH_AVERAGE : 2 -> -1
+ *
+ */
+static void update_vector_math_operators_enum_mapping(bNodeTree *ntree)
+{
+  for (bNode *node = ntree->nodes.first; node; node = node->next) {
+if (node->type == SH_NODE_VECTOR_MATH) {
+  switch (node->custom1) {
+case 2:
+  node->custom1 = -1;
+  break;
+case 3:
+  node->custom1 = 7;
+  break;
+case 5:
+  node->custom1 = 11;
+  break;
+  }
+}
+  }
+}
+
 /* The Average operator is no longer available in the Vector Math node.
  * The Vector output was equal to the normalized sum of inputs vectors while
  * the Value output was equal 

[Bf-blender-cvs] [fa622f66ee0] soc-2019-cycles-procedural: Merge remote-tracking branch 'origin/master' into soc-2019-cycles-procedural

2019-08-04 Thread OmarSquircleArt
Commit: fa622f66ee00549f9ccd43d4f335b9643156c55f
Author: OmarSquircleArt
Date:   Sun Aug 4 14:56:55 2019 +0200
Branches: soc-2019-cycles-procedural
https://developer.blender.org/rBfa622f66ee00549f9ccd43d4f335b9643156c55f

Merge remote-tracking branch 'origin/master' into soc-2019-cycles-procedural

===



===



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


[Bf-blender-cvs] [47335b4e61d] master: Add a new Copy As Driver context menu option for properties.

2019-08-04 Thread Alexander Gavrilov
Commit: 47335b4e61db11e1ee2e38f421dc86fa3c3dd375
Author: Alexander Gavrilov
Date:   Wed Jul 31 18:42:03 2019 +0300
Branches: master
https://developer.blender.org/rB47335b4e61db11e1ee2e38f421dc86fa3c3dd375

Add a new Copy As Driver context menu option for properties.

It is a very common need to create drivers that set the value of
a property to the value of some other property, but it currently
requires multiple actions: Copy Data Path on the input property,
adding a driver to the output property, selecting the input ID
reference, and pasting the path.

This adds a new Copy As Driver context menu option, which creates
a complete driver in the clipboard that reads the current property,
so all that remains is to paste it to the output property. It is
also possible to paste just the new driver variable into an existing
driver to combine multiple inputs.

Reviewers: brecht, billreynish

Differential Revision: https://developer.blender.org/D5382

===

M   source/blender/editors/animation/drivers.c
M   source/blender/editors/include/ED_keyframing.h
M   source/blender/editors/interface/interface_context_menu.c
M   source/blender/editors/interface/interface_ops.c

===

diff --git a/source/blender/editors/animation/drivers.c 
b/source/blender/editors/animation/drivers.c
index 7ca0f95d6c4..935d11a388f 100644
--- a/source/blender/editors/animation/drivers.c
+++ b/source/blender/editors/animation/drivers.c
@@ -23,6 +23,7 @@
 
 #include 
 #include 
+#include 
 
 #include "MEM_guardedalloc.h"
 
@@ -95,56 +96,65 @@ FCurve *verify_driver_fcurve(ID *id, const char rna_path[], 
const int array_inde
 
   if ((fcu == NULL) && (add)) {
 /* use default settings to make a F-Curve */
-fcu = MEM_callocN(sizeof(FCurve), "FCurve");
+fcu = alloc_driver_fcurve(rna_path, array_index, add);
 
-fcu->flag = (FCURVE_VISIBLE | FCURVE_SELECTED);
-fcu->auto_smoothing = FCURVE_SMOOTH_CONT_ACCEL;
+/* just add F-Curve to end of driver list */
+BLI_addtail(>drivers, fcu);
+  }
 
-/* store path - make copy, and store that */
-fcu->rna_path = BLI_strdup(rna_path);
-fcu->array_index = array_index;
-
-/* If add is negative, don't init this data yet,
- * since it will be filled in by the pasted driver. */
-if (add > 0) {
-  BezTriple *bezt;
-  size_t i;
-
-  /* add some new driver data */
-  fcu->driver = MEM_callocN(sizeof(ChannelDriver), "ChannelDriver");
-
-  /* F-Modifier or Keyframes? */
-  // FIXME: replace these magic numbers with defines
-  if (add == 2) {
-/* Python API Backwards compatibility hack:
- * Create FModifier so that old scripts won't break
- * for now before 2.7 series -- (September 4, 2013)
- */
-add_fmodifier(>modifiers, FMODIFIER_TYPE_GENERATOR, fcu);
-  }
-  else {
-/* add 2 keyframes so that user has something to work with
- * - These are configured to 0,0 and 1,1 to give a 1-1 mapping
- *   which can be easily tweaked from there.
- */
-insert_vert_fcurve(fcu, 0.0f, 0.0f, BEZT_KEYTYPE_KEYFRAME, 
INSERTKEY_FAST);
-insert_vert_fcurve(fcu, 1.0f, 1.0f, BEZT_KEYTYPE_KEYFRAME, 
INSERTKEY_FAST);
+  /* return the F-Curve */
+  return fcu;
+}
 
-/* configure this curve to extrapolate */
-for (i = 0, bezt = fcu->bezt; (i < fcu->totvert) && bezt; i++, bezt++) 
{
-  bezt->h1 = bezt->h2 = HD_VECT;
-}
+struct FCurve *alloc_driver_fcurve(const char rna_path[], const int 
array_index, short add)
+{
+  FCurve *fcu = MEM_callocN(sizeof(FCurve), "FCurve");
 
-fcu->extend = FCURVE_EXTRAPOLATE_LINEAR;
-calchandles_fcurve(fcu);
-  }
+  fcu->flag = (FCURVE_VISIBLE | FCURVE_SELECTED);
+  fcu->auto_smoothing = FCURVE_SMOOTH_CONT_ACCEL;
+
+  /* store path - make copy, and store that */
+  if (rna_path) {
+fcu->rna_path = BLI_strdup(rna_path);
+  }
+  fcu->array_index = array_index;
+
+  /* If add is negative, don't init this data yet,
+   * since it will be filled in by the pasted driver. */
+  if (add > 0) {
+BezTriple *bezt;
+size_t i;
+
+/* add some new driver data */
+fcu->driver = MEM_callocN(sizeof(ChannelDriver), "ChannelDriver");
+
+/* F-Modifier or Keyframes? */
+// FIXME: replace these magic numbers with defines
+if (add == 2) {
+  /* Python API Backwards compatibility hack:
+   * Create FModifier so that old scripts won't break
+   * for now before 2.7 series -- (September 4, 2013)
+   */
+  add_fmodifier(>modifiers, FMODIFIER_TYPE_GENERATOR, fcu);
 }
+else {
+  /* add 2 keyframes so that user has something to work with
+   * - These are configured to 0,0 and 1,1 to give a 1-1 mapping
+   *   which can be easily tweaked from there.
+   */
+  insert_vert_fcurve(fcu, 0.0f, 0.0f, 

[Bf-blender-cvs] [a2fe386153e] master: Text Editor UI

2019-08-04 Thread William Reynish
Commit: a2fe386153ee976bf5b687257f117ca4efb1ef8f
Author: William Reynish
Date:   Sun Aug 4 12:51:28 2019 +0200
Branches: master
https://developer.blender.org/rBa2fe386153ee976bf5b687257f117ca4efb1ef8f

Text Editor UI

Tweak Text Editor to fit better with the rest of Blender 2.8:

  - Move sidebar to the right
  - Add proper context menu
  - Move view toggles to the View menu
  - Change the indentation option to be an enum between spaces and tabs
  - Several layout tweaks

Patch by @tintwotin / Peter Fog with additional tweaks by me.

Differential Revision https://developer.blender.org/D5028

Reviewers: Brecht, Campbell

===

M   release/scripts/startup/bl_ui/space_text.py
M   source/blender/blenloader/intern/versioning_280.c
M   source/blender/editors/space_text/space_text.c
M   source/blender/makesrna/intern/rna_text.c

===

diff --git a/release/scripts/startup/bl_ui/space_text.py 
b/release/scripts/startup/bl_ui/space_text.py
index cf264bf6149..534561efab4 100644
--- a/release/scripts/startup/bl_ui/space_text.py
+++ b/release/scripts/startup/bl_ui/space_text.py
@@ -47,11 +47,6 @@ class TEXT_HT_header(Header):
 
 layout.separator_spacer()
 
-row = layout.row(align=True)
-row.prop(st, "show_line_numbers", text="")
-row.prop(st, "show_word_wrap", text="")
-row.prop(st, "show_syntax_highlight", text="")
-
 if text:
 is_osl = text.name.endswith((".osl", ".osl"))
 
@@ -125,60 +120,63 @@ class TEXT_PT_properties(Panel):
 
 def draw(self, context):
 layout = self.layout
-
+layout.use_property_split = True
+layout.use_property_decorate = False
 st = context.space_data
 
 flow = layout.column_flow()
-flow.prop(st, "show_line_numbers")
-flow.prop(st, "show_word_wrap")
-flow.prop(st, "show_syntax_highlight")
-flow.prop(st, "show_line_highlight")
-flow.prop(st, "use_live_edit")
+if not st.text:
+flow.active = False
+row = flow.row(align=True)
+st = context.space_data
+row.prop(st, "show_margin", text = "Margin")
+rowsub = row.row()
+rowsub.active = st.show_margin
+rowsub.prop(st, "margin_column", text = "")
 
-flow = layout.column_flow()
 flow.prop(st, "font_size")
 flow.prop(st, "tab_width")
 
 text = st.text
 if text:
-flow.prop(text, "use_tabs_as_spaces")
-
-flow.prop(st, "show_margin")
-col = flow.column()
-col.active = st.show_margin
-col.prop(st, "margin_column")
+layout.prop(text, "indentation")
 
 
 class TEXT_PT_find(Panel):
 bl_space_type = 'TEXT_EDITOR'
 bl_region_type = 'UI'
 bl_category = "Text"
-bl_label = "Find"
+bl_label = "Find & Replace"
 
 def draw(self, context):
 layout = self.layout
-
 st = context.space_data
 
 # find
-col = layout.column(align=True)
+col = layout.column()
 row = col.row(align=True)
-row.prop(st, "find_text", text="")
-row.operator("text.find_set_selected", text="", icon='TEXT')
+row.prop(st, "find_text", icon='VIEWZOOM', text="")
+row.operator("text.find_set_selected", text="", icon='EYEDROPPER')
 col.operator("text.find")
 
+layout.separator()
+
 # replace
-col = layout.column(align=True)
+col = layout.column()
 row = col.row(align=True)
-row.prop(st, "replace_text", text="")
-row.operator("text.replace_set_selected", text="", icon='TEXT')
+row.prop(st, "replace_text", icon='DECORATE_OVERRIDE', text="")
+row.operator("text.replace_set_selected", text="", icon='EYEDROPPER')
 col.operator("text.replace")
 
+layout.separator()
+
 # settings
-layout.prop(st, "use_match_case")
 row = layout.row(align=True)
-row.prop(st, "use_find_wrap", text="Wrap")
-row.prop(st, "use_find_all", text="All")
+if not st.text:
+row.active = False
+row.prop(st, "use_match_case", text="Case", toggle=True)
+row.prop(st, "use_find_wrap", text="Wrap", toggle=True)
+row.prop(st, "use_find_all", text="All", toggle=True)
 
 
 class TEXT_MT_view(Menu):
@@ -193,6 +191,13 @@ class TEXT_MT_view(Menu):
 
 layout.separator()
 
+layout.prop(st, "show_line_numbers")
+layout.prop(st, "show_word_wrap")
+layout.prop(st, "show_syntax_highlight")
+layout.prop(st, "show_line_highlight")
+
+layout.separator()
+
 layout.operator("text.move",
 text="Top of File",
 ).type = 'FILE_TOP'
@@ -280,6 +285,8 @@ class TEXT_MT_format(Menu):
 
 def draw(self, _context):
 layout = self.layout
+   

[Bf-blender-cvs] [c0aada58c98] master: Tweak Brush Gradient UI

2019-08-04 Thread William Reynish
Commit: c0aada58c9820b36176ec54d281513eeac65ca0c
Author: William Reynish
Date:   Sun Aug 4 12:37:22 2019 +0200
Branches: master
https://developer.blender.org/rBc0aada58c9820b36176ec54d281513eeac65ca0c

Tweak Brush Gradient UI

Gradient and Color are mutually exclusive, so we now communicate this in the UI 
much more clearly

Differential Revision: https://developer.blender.org/D5395

Reviewers: brechrt

===

M   release/scripts/startup/bl_ui/space_image.py
M   release/scripts/startup/bl_ui/space_view3d_toolbar.py
M   source/blender/makesrna/intern/rna_brush.c

===

diff --git a/release/scripts/startup/bl_ui/space_image.py 
b/release/scripts/startup/bl_ui/space_image.py
index a483ff3f291..eea34beaad1 100644
--- a/release/scripts/startup/bl_ui/space_image.py
+++ b/release/scripts/startup/bl_ui/space_image.py
@@ -1077,9 +1077,12 @@ class IMAGE_PT_paint_color(Panel, ImagePaintPanel):
 settings = context.tool_settings.image_paint
 brush = settings.brush
 
-layout.active = not brush.use_gradient
+layout.prop(brush, "color_type", expand=True)
 
-brush_texpaint_common_color(self, context, layout, brush, settings, 
True)
+if brush.color_type == 'COLOR':
+brush_texpaint_common_color(self, context, layout, brush, 
settings, True)
+elif brush.color_type == 'GRADIENT':
+brush_texpaint_common_gradient(self, context, layout, brush, 
settings, True)
 
 
 class IMAGE_PT_paint_swatches(Panel, ImagePaintPanel):
@@ -1106,38 +1109,6 @@ class IMAGE_PT_paint_swatches(Panel, ImagePaintPanel):
 layout.template_palette(settings, "palette", color=True)
 
 
-class IMAGE_PT_paint_gradient(Panel, ImagePaintPanel):
-bl_category = "Tool"
-bl_context = ".paint_common_2d"
-bl_parent_id = "IMAGE_PT_paint"
-bl_label = "Gradient"
-bl_options = {'DEFAULT_CLOSED'}
-
-@classmethod
-def poll(cls, context):
-settings = context.tool_settings.image_paint
-brush = settings.brush
-capabilities = brush.image_paint_capabilities
-
-return capabilities.has_color
-
-def draw_header(self, context):
-settings = context.tool_settings.image_paint
-brush = settings.brush
-self.layout.prop(brush, "use_gradient", text="")
-
-def draw(self, context):
-layout = self.layout
-layout.use_property_split = False
-layout.use_property_decorate = False  # No animation.
-settings = context.tool_settings.image_paint
-brush = settings.brush
-
-layout.active = brush.use_gradient
-
-brush_texpaint_common_gradient(self, context, layout, brush, settings, 
True)
-
-
 class IMAGE_PT_paint_clone(Panel, ImagePaintPanel):
 bl_category = "Tool"
 bl_context = ".paint_common_2d"
@@ -1740,7 +1711,6 @@ classes = (
 IMAGE_PT_paint,
 IMAGE_PT_paint_color,
 IMAGE_PT_paint_swatches,
-IMAGE_PT_paint_gradient,
 IMAGE_PT_paint_clone,
 IMAGE_PT_paint_options,
 IMAGE_PT_tools_brush_texture,
diff --git a/release/scripts/startup/bl_ui/space_view3d_toolbar.py 
b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
index df605229922..262fafa596d 100644
--- a/release/scripts/startup/bl_ui/space_view3d_toolbar.py
+++ b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
@@ -429,9 +429,16 @@ class VIEW3D_PT_tools_brush_color(Panel, View3DPaintPanel):
 settings = self.paint_settings(context)
 brush = settings.brush
 
-layout.active = not brush.use_gradient
+if context.vertex_paint_object:
+brush_texpaint_common_color(self, context, layout, brush, 
settings, True)
+
+else:
+layout.prop(brush, "color_type", expand=True)
 
-brush_texpaint_common_color(self, context, layout, brush, settings, 
True)
+if brush.color_type == 'COLOR':
+brush_texpaint_common_color(self, context, layout, brush, 
settings, True)
+elif brush.color_type == 'GRADIENT':
+brush_texpaint_common_gradient(self, context, layout, brush, 
settings, True)
 
 
 class VIEW3D_PT_tools_brush_swatches(Panel, View3DPaintPanel):
@@ -461,37 +468,6 @@ class VIEW3D_PT_tools_brush_swatches(Panel, 
View3DPaintPanel):
 layout.template_palette(settings, "palette", color=True)
 
 
-class VIEW3D_PT_tools_brush_gradient(Panel, View3DPaintPanel):
-bl_context = ".paint_common"  # dot on purpose (access from topbar)
-bl_parent_id = "VIEW3D_PT_tools_brush"
-bl_label = "Gradient"
-bl_options = {'DEFAULT_CLOSED'}
-
-@classmethod
-def poll(cls, context):
-settings = cls.paint_settings(context)
-brush = settings.brush
-capabilities = brush.image_paint_capabilities
-
-return capabilities.has_color and context.image_paint_object
-
-def draw_header(self, 

[Bf-blender-cvs] [dd3cdf6f1e9] master: Fix T68202: GPencil Set Origin do not refresh until object is moved

2019-08-04 Thread Antonio Vazquez
Commit: dd3cdf6f1e9d7b19cc0b4bb85136a12e558e291d
Author: Antonio Vazquez
Date:   Sun Aug 4 10:21:02 2019 +0200
Branches: master
https://developer.blender.org/rBdd3cdf6f1e9d7b19cc0b4bb85136a12e558e291d

Fix T68202: GPencil Set Origin do not refresh until object is moved

===

M   source/blender/editors/object/object_transform.c

===

diff --git a/source/blender/editors/object/object_transform.c 
b/source/blender/editors/object/object_transform.c
index 5934eab62bb..975aa0f5bac 100644
--- a/source/blender/editors/object/object_transform.c
+++ b/source/blender/editors/object/object_transform.c
@@ -1337,12 +1337,13 @@ static int object_origin_set_exec(bContext *C, 
wmOperator *op)
 }
   }
 }
-DEG_id_tag_update(>id, ID_RECALC_TRANSFORM | 
ID_RECALC_GEOMETRY);
-
 tot_change++;
 if (centermode == ORIGIN_TO_GEOMETRY) {
   copy_v3_v3(ob->loc, gpcenter);
 }
+DEG_id_tag_update(>id, ID_RECALC_TRANSFORM | 
ID_RECALC_GEOMETRY);
+DEG_id_tag_update(>id, ID_RECALC_TRANSFORM);
+
 ob->id.tag |= LIB_TAG_DOIT;
 do_inverse_offset = true;
   }

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