diff options
Diffstat (limited to 'source/blender/render/intern/source/convertblender.c')
-rw-r--r-- | source/blender/render/intern/source/convertblender.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/source/blender/render/intern/source/convertblender.c b/source/blender/render/intern/source/convertblender.c index f34bd352e62..ebacdee0c97 100644 --- a/source/blender/render/intern/source/convertblender.c +++ b/source/blender/render/intern/source/convertblender.c @@ -3824,6 +3824,11 @@ static GroupObject *add_render_lamp(Render *re, Object *ob) lar->ld2= la->att2; lar->curfalloff = curvemapping_copy(la->curfalloff); + if (lar->curfalloff) { + /* so threads don't conflict on init */ + curvemapping_initialize(lar->curfalloff); + } + if (lar->type==LA_SPOT) { normalize_v3(lar->imat[0]); @@ -5242,13 +5247,15 @@ static void speedvector_project(Render *re, float zco[2], const float co[3], con /* precalculate amount of radians 1 pixel rotates */ if (pano) { /* size of 1 pixel mapped to viewplane coords */ - float psize= (re->viewplane.xmax-re->viewplane.xmin)/(float)re->winx; + float psize; + + psize = BLI_RCT_SIZE_X(&re->viewplane) / (float)re->winx; /* x angle of a pixel */ - pixelphix= atan(psize/re->clipsta); + pixelphix = atan(psize / re->clipsta); - psize= (re->viewplane.ymax-re->viewplane.ymin)/(float)re->winy; + psize = BLI_RCT_SIZE_Y(&re->viewplane) / (float)re->winy; /* y angle of a pixel */ - pixelphiy= atan(psize/re->clipsta); + pixelphiy = atan(psize / re->clipsta); } zmulx= re->winx/2; zmuly= re->winy/2; |