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:
authorLukas Tönne <lukas.toenne@gmail.com>2015-02-17 17:20:51 +0300
committerLukas Tönne <lukas.toenne@gmail.com>2015-02-17 17:22:02 +0300
commitea2fc5b9d6000a61dba5e8c37a36231a2f22e6d4 (patch)
treee4cac0891f8cdf5cf9bc56918f6bb7d794ca710a /source/blender/blenkernel/intern/particle_child.c
parent9b845359a6b9b5d797ae4f6d6fc4628ab76f088f (diff)
Fix for particle path drawing with black tips.
The last path segment can be shortended due to randomized path length. In that case the last segment's color vector was not defined.
Diffstat (limited to 'source/blender/blenkernel/intern/particle_child.c')
-rw-r--r--source/blender/blenkernel/intern/particle_child.c16
1 files changed, 11 insertions, 5 deletions
diff --git a/source/blender/blenkernel/intern/particle_child.c b/source/blender/blenkernel/intern/particle_child.c
index 33541c3a7fd..7b2e07ea96f 100644
--- a/source/blender/blenkernel/intern/particle_child.c
+++ b/source/blender/blenkernel/intern/particle_child.c
@@ -367,16 +367,22 @@ void psys_apply_child_modifiers(ParticleThreadContext *ctx, struct ListBase *mod
if (ma && draw_col_ma)
get_strand_normal(ma, ornor, cur_length, (key-1)->vel);
}
- if (k == totkeys-1) {
- /* last key */
- sub_v3_v3v3(key->vel, key->co, (key-1)->co);
- }
if (use_length_check && k > 1) {
float dvec[3];
/* check if path needs to be cut before actual end of data points */
- if (!check_path_length(k, keys, key, max_length, step_length, &cur_length, dvec))
+ if (!check_path_length(k, keys, key, max_length, step_length, &cur_length, dvec)) {
+ /* last key */
+ sub_v3_v3v3(key->vel, key->co, (key-1)->co);
+ if (ma && draw_col_ma) {
+ copy_v3_v3(key->col, &ma->r);
+ }
break;
+ }
+ }
+ if (k == totkeys-1) {
+ /* last key */
+ sub_v3_v3v3(key->vel, key->co, (key-1)->co);
}
if (ma && draw_col_ma) {