-----------------------------------------------------------
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

Reply via email to