[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [57606] trunk/blender/source/blender/ render/intern/source: Fix #35807: blender internal motion blur render without antialiasing would

Brecht Van Lommel brechtvanlommel at pandora.be
Thu Jun 20 13:47:09 CEST 2013


Revision: 57606
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=57606
Author:   blendix
Date:     2013-06-20 11:47:09 +0000 (Thu, 20 Jun 2013)
Log Message:
-----------
Fix #35807: blender internal motion blur render without antialiasing would
give black speckles (self intersection errors) in raytraced shadows.

Motion blur does some extra offsets for free antialiasing in the motion blur
samples, but did not take them into account everywhere.

Modified Paths:
--------------
    trunk/blender/source/blender/render/intern/source/shadeinput.c
    trunk/blender/source/blender/render/intern/source/zbuf.c

Modified: trunk/blender/source/blender/render/intern/source/shadeinput.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/shadeinput.c	2013-06-20 11:34:43 UTC (rev 57605)
+++ trunk/blender/source/blender/render/intern/source/shadeinput.c	2013-06-20 11:47:09 UTC (rev 57606)
@@ -1416,6 +1416,10 @@
 					xs = (float)x + R.samples->centLut[b & 15] + 0.5f;
 					ys = (float)y + R.samples->centLut[b >> 4] + 0.5f;
 				}
+				else if (R.i.curblur) {
+					xs= (float)x + R.mblur_jit[R.i.curblur-1][0] + 0.5f;
+					ys= (float)y + R.mblur_jit[R.i.curblur-1][1] + 0.5f;
+				}
 				else {
 					xs = (float)x + 0.5f;
 					ys = (float)y + 0.5f;

Modified: trunk/blender/source/blender/render/intern/source/zbuf.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/zbuf.c	2013-06-20 11:34:43 UTC (rev 57605)
+++ trunk/blender/source/blender/render/intern/source/zbuf.c	2013-06-20 11:47:09 UTC (rev 57606)
@@ -3824,6 +3824,10 @@
 				xs= (float)x + R.samples->centLut[b & 15] + 0.5f;
 				ys= (float)y + R.samples->centLut[b>>4] + 0.5f;
 			}
+			else if (R.i.curblur) {
+				xs= (float)x + R.mblur_jit[R.i.curblur-1][0] + 0.5f;
+				ys= (float)y + R.mblur_jit[R.i.curblur-1][1] + 0.5f;
+			}
 			else {
 				xs= (float)x + 0.5f;
 				ys= (float)y + 0.5f;




More information about the Bf-blender-cvs mailing list