Summary: | Pixel paint, Line Tool and Grid with 1px offset! | ||
---|---|---|---|
Product: | [Applications] krita | Reporter: | Alexey <o-din13> |
Component: | Brush engines | Assignee: | vanyossi <ghevan> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | ghevan |
Priority: | NOR | ||
Version: | 4.1.7 | ||
Target Milestone: | --- | ||
Platform: | Mint (Ubuntu based) | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/kde/krita/commit/9a972eea69526311cd95dd45335d2f1ba7d24fc3 | Version Fixed In: | |
Sentry Crash Report: | |||
Attachments: | dancing pixels |
I don't see artifacts, but I see that with sharpness on, 45º angle line does weirds things. I'll investigate Git commit b434751233e91d229617952bb73ca0744353bd10 by Ivan Yossi. Committed on 04/12/2019 at 07:51. Pushed by ivany into branch 'master'. Fix 1px brush offset in line tool This adjust the diferent position of KisPaintInformation from a line to be inside a line between starting and ending points. This is particularly important as brushes that use 1px perfect pixels require the line to be perfect in order to avoid looking jagged. In 1px size with sharpen active we only use the start and end KisPaintInformation points. This patch also adjusts the outine on 1px brushes to adjust to the grid to better preview where the paint is going to be applyied M +2 -2 libs/image/brushengine/kis_paintop.cc M +10 -2 libs/image/kis_painter.cc M +4 -1 plugins/paintops/libpaintop/kis_brush_based_paintop_settings.cpp M +21 -2 plugins/paintops/libpaintop/kis_current_outline_fetcher.cpp M +2 -1 plugins/paintops/libpaintop/kis_current_outline_fetcher.h M +72 -0 plugins/tools/basictools/kis_tool_line_helper.cpp M +3 -0 plugins/tools/basictools/kis_tool_line_helper.h https://invent.kde.org/kde/krita/commit/b434751233e91d229617952bb73ca0744353bd10 Cool news! Will tested it! ::) All cool, that's works fine! ::) Git commit 9a972eea69526311cd95dd45335d2f1ba7d24fc3 by Boudewijn Rempt, on behalf of Ivan Yossi. Committed on 08/01/2020 at 14:18. Pushed by rempt into branch 'krita/4.2'. Fix 1px brush offset in line tool This adjust the diferent position of KisPaintInformation from a line to be inside a line between starting and ending points. This is particularly important as brushes that use 1px perfect pixels require the line to be perfect in order to avoid looking jagged. In 1px size with sharpen active we only use the start and end KisPaintInformation points. This patch also adjusts the outine on 1px brushes to adjust to the grid to better preview where the paint is going to be applyied (cherry picked from commit b434751233e91d229617952bb73ca0744353bd10) M +2 -2 libs/image/brushengine/kis_paintop.cc M +10 -2 libs/image/kis_painter.cc M +4 -1 plugins/paintops/libpaintop/kis_brush_based_paintop_settings.cpp M +21 -2 plugins/paintops/libpaintop/kis_current_outline_fetcher.cpp M +2 -1 plugins/paintops/libpaintop/kis_current_outline_fetcher.h M +72 -0 plugins/tools/basictools/kis_tool_line_helper.cpp M +3 -0 plugins/tools/basictools/kis_tool_line_helper.h https://invent.kde.org/kde/krita/commit/9a972eea69526311cd95dd45335d2f1ba7d24fc3 |
Created attachment 119965 [details] dancing pixels The Brush Tool and Grid cannot snap to the center of the pixel. This causes some problems when trying to draw pixel art. The basic problem with diagonal lines. If we use the Line Tool, we get an uneven line with artifacts (see attachment). Since our line can't bind exactly to the center of the pixel (or something else) — we get a 'dancing pixels'. 1. Take an empty layer 2. Take Line Tool and 'pixel1' brush with sharpness 3. Try to draw a couple of good diagonal lines