From 94cb20ff4e78bf733c1bf1a89134ad26f26f45aa Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Sun, 16 Jun 2013 04:06:38 +0000 Subject: when setting the subframe for large frames (250,000+) the precision was very poor. now use double precision when combining the frame+subframe. --- source/blender/render/intern/source/pipeline.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'source/blender/render') diff --git a/source/blender/render/intern/source/pipeline.c b/source/blender/render/intern/source/pipeline.c index 068df215edb..91244e95d3b 100644 --- a/source/blender/render/intern/source/pipeline.c +++ b/source/blender/render/intern/source/pipeline.c @@ -1113,7 +1113,6 @@ void RE_TileProcessor(Render *re) static void do_render_3d(Render *re) { - float cfra; int cfra_backup; /* try external */ @@ -1126,9 +1125,7 @@ static void do_render_3d(Render *re) /* add motion blur and fields offset to frames */ cfra_backup = re->scene->r.cfra; - cfra = re->scene->r.cfra + re->mblur_offs + re->field_offs; - re->scene->r.cfra = floorf(cfra); - re->scene->r.subframe = cfra - floorf(cfra); + BKE_scene_frame_set(re->scene, (double)re->scene->r.cfra + (double)re->mblur_offs + (double)re->field_offs); /* lock drawing in UI during data phase */ if (re->draw_lock) -- cgit v1.2.3