Blender Git Loki
Git Commits -> Revision e1229b2
Revision e1229b2 by Brecht Van Lommel (master) May 15, 2013, 14:37 (GMT) |
Attempt to fix #35057 and #35372: slow texture painting performance. After the paint refactoring for 2.67, the OpenGL texture was getting updated for every stroke point, rather than once for every redraw. With a small brush radius and low spacing the number of stroke points can be quite large, which might have a big performance impact depending on the graphics card / drivers. Also for 2D image paint, avoid redrawing the button panels and properties editor during painting. There is another possible cause for slowdowns with 3D texture painting which was not fixed. Projection painting is creating and destroying threads for every stroke point. Depending on the CPU/OS there might be a lot of overhead in doing that if the brush size is small. |
Commit Details:
Full Hash: e1229b2978c37a043f3932657ac5cfa156093866
SVN Revision: 56823
Parent Commit: 71775dc
Lines Changed: +121, -76
10 Modified Paths:
/source/blender/editors/sculpt_paint/paint_image.c (+14, -24) (Diff)
/source/blender/editors/sculpt_paint/paint_image_2d.c (+23, -17) (Diff)
/source/blender/editors/sculpt_paint/paint_image_proj.c (+36, -13) (Diff)
/source/blender/editors/sculpt_paint/paint_intern.h (+7, -4) (Diff)
/source/blender/editors/sculpt_paint/paint_stroke.c (+21, -8) (Diff)
/source/blender/editors/sculpt_paint/paint_vertex.c (+2, -2) (Diff)
/source/blender/editors/sculpt_paint/sculpt.c (+2, -2) (Diff)
/source/blender/editors/space_buttons/space_buttons.c (+4, -2) (Diff)
/source/blender/editors/space_image/space_image.c (+11, -4) (Diff)
/source/blender/windowmanager/WM_types.h (+1, -0) (Diff)
/source/blender/editors/sculpt_paint/paint_image_2d.c (+23, -17) (Diff)
/source/blender/editors/sculpt_paint/paint_image_proj.c (+36, -13) (Diff)
/source/blender/editors/sculpt_paint/paint_intern.h (+7, -4) (Diff)
/source/blender/editors/sculpt_paint/paint_stroke.c (+21, -8) (Diff)
/source/blender/editors/sculpt_paint/paint_vertex.c (+2, -2) (Diff)
/source/blender/editors/sculpt_paint/sculpt.c (+2, -2) (Diff)
/source/blender/editors/space_buttons/space_buttons.c (+4, -2) (Diff)
/source/blender/editors/space_image/space_image.c (+11, -4) (Diff)
/source/blender/windowmanager/WM_types.h (+1, -0) (Diff)