Blender Git Loki
Git Commits -> Revision e47137f
Revision e47137f by Ton Roosendaal (master) August 12, 2006, 11:27 (GMT) |
Bugreport #4787 mentioned subpixel render issues, especially for small images (like used for rendering icons). When working during Orange on new render pipeline, I've left this topic alone for a while... subpixel precision testing is very time consuming and needs concentration for a while. :) This commit brings back precision as it was for 2.41. Below a short explanation of the solved issues. - the window matrix for rendering is kept constant during all OSA passes, this to ensure clipping happens for each pass identically. - a subpixel offset is only applied on filling in the z-buffer - this offset is inverse corrected for shadepixel code, only on 2 places Another nasty issue is that for filtered rendering (gauss etc), the tiles (or entire image) is temporally increased 2 pixel in size. This caused a 'dark' (or sky color) edge on the rendering. During Orange that was solved with a hardcoded clipping offset value, which only corrected for larger pictures (like > 500 pixels in size). Now this clipping offset is correctly calculated, based on render size. Last issue: the view border in 3d window was calculated using integers, giving small errors in display too. Now it uses float, so visually the view border is more close to what a render shows. |
Commit Details:
Full Hash: e47137ff42ac241fe6c68d4df3466b030315edee
SVN Revision: 8308
Parent Commit: 3be0a5a
Lines Changed: +49, -40
8 Modified Paths:
/source/blender/include/BSE_drawview.h (+2, -2) (Diff)
/source/blender/render/intern/include/render_types.h (+1, -1) (Diff)
/source/blender/render/intern/source/initrender.c (+8, -15) (Diff)
/source/blender/render/intern/source/rendercore.c (+8, -4) (Diff)
/source/blender/render/intern/source/zbuf.c (+21, -9) (Diff)
/source/blender/src/drawview.c (+3, -3) (Diff)
/source/blender/src/edit.c (+1, -1) (Diff)
/source/blender/src/editview.c (+5, -5) (Diff)
/source/blender/render/intern/include/render_types.h (+1, -1) (Diff)
/source/blender/render/intern/source/initrender.c (+8, -15) (Diff)
/source/blender/render/intern/source/rendercore.c (+8, -4) (Diff)
/source/blender/render/intern/source/zbuf.c (+21, -9) (Diff)
/source/blender/src/drawview.c (+3, -3) (Diff)
/source/blender/src/edit.c (+1, -1) (Diff)
/source/blender/src/editview.c (+5, -5) (Diff)