----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://git.reviewboard.kde.org/r/106724/ -----------------------------------------------------------
Review request for Calligra and Lukáš Tvrdý. Description ------- Hi! This patch adds caching of the dabs to the paint op system of Krita. Such cache makes the execution of the benchmarks up to 2 times faster. Subjectively, the real painting becomes much faster, especially with huge brushes. Of course, such caching makes the painting a bit less precise: we need to tolerate subpixel differences to allow the cache to work. Sometimes small difference in the size of a dab can also be acceptable. That is why I introduced levels of precision. They are graded from 1 to 5: from the fastest and less precise to the slowest, but with the best quality. You can see the slider in the paintop settings dialog. The ToolTip text explains which features of the brush are sacrificed on each precision level. The texturing and mirroring problems are solved. My next steps are: make this cache tolerate bug 307588 and port it to other brush-based paitops. Diffs ----- krita/image/kis_fixed_paint_device.h feeed0b krita/image/kis_fixed_paint_device.cpp 5ef55af krita/image/kis_painter.h 25a11c9 krita/image/kis_painter.cc bec3776 krita/plugins/paintops/defaultpaintops/brush/kis_brushop.h 1b545ef krita/plugins/paintops/defaultpaintops/brush/kis_brushop.cpp 177fa7e krita/plugins/paintops/defaultpaintops/brush/kis_brushop_settings_widget.cpp cbd6667 krita/plugins/paintops/libpaintop/CMakeLists.txt bd1b021 krita/plugins/paintops/libpaintop/forms/wdgbrushchooser.ui b19828f krita/plugins/paintops/libpaintop/kis_brush_based_paintop_options_widget.h 734df21 krita/plugins/paintops/libpaintop/kis_brush_based_paintop_options_widget.cpp 51cc2d2 krita/plugins/paintops/libpaintop/kis_brush_option_widget.h cf426cb krita/plugins/paintops/libpaintop/kis_brush_option_widget.cpp c0e171e krita/plugins/paintops/libpaintop/kis_brush_selection_widget.h d25729f krita/plugins/paintops/libpaintop/kis_brush_selection_widget.cpp e0bedd8 krita/plugins/paintops/libpaintop/kis_dab_cache.h PRE-CREATION krita/plugins/paintops/libpaintop/kis_dab_cache.cpp PRE-CREATION krita/plugins/paintops/libpaintop/kis_precision_option.h PRE-CREATION krita/plugins/paintops/libpaintop/kis_precision_option.cpp PRE-CREATION krita/plugins/paintops/libpaintop/kis_pressure_sharpness_option.h 8281da4 krita/plugins/paintops/libpaintop/kis_pressure_sharpness_option.cpp 6157e5e Diff: http://git.reviewboard.kde.org/r/106724/diff/ Testing ------- Thanks, Dmitry Kazakov
_______________________________________________ calligra-devel mailing list calligra-devel@kde.org https://mail.kde.org/mailman/listinfo/calligra-devel