Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Werner <stefan.werner@tangent-animation.com>2018-11-23 15:08:15 +0300
committerStefan Werner <stefan.werner@tangent-animation.com>2018-11-23 15:19:53 +0300
commit071f4f4ce0b9520ab0c73d6d68365ad449ca8b80 (patch)
tree9f37bfcac669366b9ad5fb7605f2fbbed9b71b0a /source/blender/editors/space_graph/graph_edit.c
parent0a2b2d59a5897212ba3771503feb6770fb636bc8 (diff)
Cycles: Improved robustness of hair motion blur.motion_curve_fix
In some instances, the number of control vertices of a hair could change mid-frame. Cycles would then be unable to calculate proper motion blur for those hairs. This adds interpolated CVs to fill in for the missing data. While this will not necessarily result in a fully accurate reconstruction of the guide hair, it preserves motion blur instead of disabling it. Reviewers: #cycles, sergey Reviewed By: #cycles, sergey Subscribers: sergey, brecht, #cycles Tags: #cycles Differential Revision: https://developer.blender.org/D3695
Diffstat (limited to 'source/blender/editors/space_graph/graph_edit.c')
-rw-r--r--source/blender/editors/space_graph/graph_edit.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/source/blender/editors/space_graph/graph_edit.c b/source/blender/editors/space_graph/graph_edit.c
index 7717b8c8200..3086e189a7a 100644
--- a/source/blender/editors/space_graph/graph_edit.c
+++ b/source/blender/editors/space_graph/graph_edit.c
@@ -374,7 +374,7 @@ static void create_ghost_curves(bAnimContext *ac, int start, int end)
unitFac = ANIM_unit_mapping_get_factor(ac->scene, ale->id, fcu, mapping_flag, &offset);
/* create samples, but store them in a new curve
- * - we cannot use fcurve_store_samples() as that will only overwrite the original curve
+ * - we cannot use fcurve_store_samples() as that will only overwrite the original curve
*/
gcu->fpt = fpt = MEM_callocN(sizeof(FPoint) * (end - start + 1), "Ghost FPoint Samples");
gcu->totvert = end - start + 1;
@@ -388,7 +388,7 @@ static void create_ghost_curves(bAnimContext *ac, int start, int end)
}
/* set color of ghost curve
- * - make the color slightly darker
+ * - make the color slightly darker
*/
gcu->color[0] = fcu->color[0] - 0.07f;
gcu->color[1] = fcu->color[1] - 0.07f;
@@ -1818,10 +1818,10 @@ static int graphkeys_euler_filter_exec(bContext *C, wmOperator *op)
return OPERATOR_CANCELLED;
/* The process is done in two passes:
- * 1) Sets of three related rotation curves are identified from the selected channels,
- * and are stored as a single 'operation unit' for the next step
- * 2) Each set of three F-Curves is processed for each keyframe, with the values being
- * processed as necessary
+ * 1) Sets of three related rotation curves are identified from the selected channels,
+ * and are stored as a single 'operation unit' for the next step
+ * 2) Each set of three F-Curves is processed for each keyframe, with the values being
+ * processed as necessary
*/
/* step 1: extract only the rotation f-curves */
@@ -1832,8 +1832,8 @@ static int graphkeys_euler_filter_exec(bContext *C, wmOperator *op)
FCurve *fcu = (FCurve *)ale->data;
/* check if this is an appropriate F-Curve
- * - only rotation curves
- * - for pchan curves, make sure we're only using the euler curves
+ * - only rotation curves
+ * - for pchan curves, make sure we're only using the euler curves
*/
if (strstr(fcu->rna_path, "rotation_euler") == NULL)
continue;
@@ -1873,7 +1873,7 @@ static int graphkeys_euler_filter_exec(bContext *C, wmOperator *op)
}
/* step 2: go through each set of curves, processing the values at each keyframe
- * - it is assumed that there must be a full set of keyframes at each keyframe position
+ * - it is assumed that there must be a full set of keyframes at each keyframe position
*/
for (euf = eulers.first; euf; euf = euf->next) {
int f;