diff options
author | Philipp Oeser <info@graphics-engineer.com> | 2018-05-18 15:59:38 +0300 |
---|---|---|
committer | Philipp Oeser <info@graphics-engineer.com> | 2018-05-18 15:59:38 +0300 |
commit | 6e48afeb238b5935273891048be80b9a3a78027f (patch) | |
tree | b6ed82ea960775d2dec6cf49799d020d06fa327b /source | |
parent | b167bc2f008522427deab016ca0fd55b01920abf (diff) | |
parent | 5e7a21a5f549f5db73385820cafcd8f2bb9c91da (diff) |
Merge branch 'master' into blender2.8
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/editors/curve/editcurve_paint.c | 7 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_smoke.c | 25 |
2 files changed, 23 insertions, 9 deletions
diff --git a/source/blender/editors/curve/editcurve_paint.c b/source/blender/editors/curve/editcurve_paint.c index 05425fbcd6a..bbe88bd1446 100644 --- a/source/blender/editors/curve/editcurve_paint.c +++ b/source/blender/editors/curve/editcurve_paint.c @@ -1007,9 +1007,16 @@ static int curve_draw_exec(bContext *C, wmOperator *op) const struct StrokeElem *selem; nu->pntsu = stroke_len; + nu->pntsv = 1; nu->type = CU_POLY; nu->bp = MEM_callocN(nu->pntsu * sizeof(BPoint), __func__); + /* Misc settings. */ + nu->resolu = cu->resolu; + nu->resolv = 1; + nu->orderu = 4; + nu->orderv = 1; + BPoint *bp = nu->bp; BLI_mempool_iternew(cdd->stroke_elem_pool, &iter); diff --git a/source/blender/makesrna/intern/rna_smoke.c b/source/blender/makesrna/intern/rna_smoke.c index af4ecb6dd7d..832d5b28bd1 100644 --- a/source/blender/makesrna/intern/rna_smoke.c +++ b/source/blender/makesrna/intern/rna_smoke.c @@ -288,20 +288,27 @@ static void rna_SmokeModifier_color_grid_get(PointerRNA *ptr, float *values) { #ifdef WITH_SMOKE SmokeDomainSettings *sds = (SmokeDomainSettings *)ptr->data; + int length[RNA_MAX_ARRAY_DIMENSION]; + int size = rna_SmokeModifier_grid_get_length(ptr, length); BLI_rw_mutex_lock(sds->fluid_mutex, THREAD_LOCK_READ); - if (sds->flags & MOD_SMOKE_HIGHRES) { - if (smoke_turbulence_has_colors(sds->wt)) - smoke_turbulence_get_rgba(sds->wt, values, 0); - else - smoke_turbulence_get_rgba_from_density(sds->wt, sds->active_color, values, 0); + if (!sds->fluid) { + memset(values, 0, size * sizeof(float)); } else { - if (smoke_has_colors(sds->fluid)) - smoke_get_rgba(sds->fluid, values, 0); - else - smoke_get_rgba_from_density(sds->fluid, sds->active_color, values, 0); + if (sds->flags & MOD_SMOKE_HIGHRES) { + if (smoke_turbulence_has_colors(sds->wt)) + smoke_turbulence_get_rgba(sds->wt, values, 0); + else + smoke_turbulence_get_rgba_from_density(sds->wt, sds->active_color, values, 0); + } + else { + if (smoke_has_colors(sds->fluid)) + smoke_get_rgba(sds->fluid, values, 0); + else + smoke_get_rgba_from_density(sds->fluid, sds->active_color, values, 0); + } } BLI_rw_mutex_unlock(sds->fluid_mutex); |