[Bf-blender-cvs] [56fa4f6e178] greasepencil-object: Gpencil: Add mix_color interpolation to sample function.
YimingWu
noreply at git.blender.org
Tue Nov 5 16:12:28 CET 2019
Commit: 56fa4f6e17872cb6ded282e19b68286eb21db29c
Author: YimingWu
Date: Tue Nov 5 23:03:56 2019 +0800
Branches: greasepencil-object
https://developer.blender.org/rB56fa4f6e17872cb6ded282e19b68286eb21db29c
Gpencil: Add mix_color interpolation to sample function.
===================================================================
M release/scripts/addons
M release/scripts/addons_contrib
M source/blender/blenkernel/intern/gpencil.c
M source/tools
===================================================================
diff --git a/release/scripts/addons b/release/scripts/addons
index 67f1fbca148..8e6f485cf5b 160000
--- a/release/scripts/addons
+++ b/release/scripts/addons
@@ -1 +1 @@
-Subproject commit 67f1fbca1482d9d9362a4001332e785c3fd5d230
+Subproject commit 8e6f485cf5b160c425d7da7c743879b20f3d6a96
diff --git a/release/scripts/addons_contrib b/release/scripts/addons_contrib
index ef6ef414d22..7077ff07384 160000
--- a/release/scripts/addons_contrib
+++ b/release/scripts/addons_contrib
@@ -1 +1 @@
-Subproject commit ef6ef414d22c2578fad99327743b925ab640a99c
+Subproject commit 7077ff07384491d1f7630484995557f1c7302dae
diff --git a/source/blender/blenkernel/intern/gpencil.c b/source/blender/blenkernel/intern/gpencil.c
index 38186b87aac..63ec9b4db92 100644
--- a/source/blender/blenkernel/intern/gpencil.c
+++ b/source/blender/blenkernel/intern/gpencil.c
@@ -1532,6 +1532,7 @@ static int stroke_march_next_point(const bGPDstroke *gps,
float *result,
float *pressure,
float *strength,
+ float *mix_color,
float *ratio_result,
int *index_from,
int *index_to)
@@ -1571,6 +1572,7 @@ static int stroke_march_next_point(const bGPDstroke *gps,
copy_v3_v3(result, &pt->x);
*pressure = gps->points[next_point_index].pressure;
*strength = gps->points[next_point_index].strength;
+ memcpy(mix_color, gps->points[next_point_index].mix_color, sizeof(float) * 4);
*index_from = next_point_index - 1;
*index_to = next_point_index;
@@ -1585,6 +1587,10 @@ static int stroke_march_next_point(const bGPDstroke *gps,
gps->points[next_point_index].pressure, gps->points[next_point_index - 1].pressure, ratio);
*strength = interpf(
gps->points[next_point_index].strength, gps->points[next_point_index - 1].strength, ratio);
+ interp_v4_v4v4(mix_color,
+ gps->points[next_point_index - 1].mix_color,
+ gps->points[next_point_index].mix_color,
+ ratio);
*index_from = next_point_index - 1;
*index_to = next_point_index;
@@ -1696,6 +1702,7 @@ bool BKE_gpencil_sample_stroke(bGPDstroke *gps, const float dist, const bool sel
int next_point_index = 1;
i = 0;
float pressure, strength, ratio_result;
+ float mix_color[4];
int index_from, index_to;
float last_coord[3];
@@ -1706,6 +1713,7 @@ bool BKE_gpencil_sample_stroke(bGPDstroke *gps, const float dist, const bool sel
copy_v3_v3(&pt2->x, last_coord);
new_pt[i].pressure = pt[0].pressure;
new_pt[i].strength = pt[0].strength;
+ memcpy(new_pt[i].mix_color, pt[0].mix_color, sizeof(float) * 4);
if (select) {
new_pt[i].flag |= GP_SPOINT_SELECT;
}
@@ -1723,6 +1731,7 @@ bool BKE_gpencil_sample_stroke(bGPDstroke *gps, const float dist, const bool sel
last_coord,
&pressure,
&strength,
+ mix_color,
&ratio_result,
&index_from,
&index_to)) > -1) {
@@ -1730,6 +1739,7 @@ bool BKE_gpencil_sample_stroke(bGPDstroke *gps, const float dist, const bool sel
copy_v3_v3(&pt2->x, last_coord);
new_pt[i].pressure = pressure;
new_pt[i].strength = strength;
+ memcpy(new_pt[i].mix_color, mix_color, sizeof(float) * 4);
if (select) {
new_pt[i].flag |= GP_SPOINT_SELECT;
}
diff --git a/source/tools b/source/tools
index 2afbb8ec472..24a26488775 160000
--- a/source/tools
+++ b/source/tools
@@ -1 +1 @@
-Subproject commit 2afbb8ec472cac5102eb239f57b006f8c9387685
+Subproject commit 24a26488775dbe8cf2c1273d60a74c9d570d773c
More information about the Bf-blender-cvs
mailing list