[needs testing] First testing packages for the lager-based brush editor

Hi, all!

As some of you might already know, for the last 8 months I’ve been working on porting Krita’s brush editor’s backend to the new framework named “Lager”. The project might look a bit weird from the user’s point of view. It does not change anything visually in the GUI. It’s goal is to rewrite internals of the editor only. But the project will let us do important things in the future:

  1. After this refactoring we will be able to change GUI of the editor in a way we like and/or split it into multiple dialogs. Right now it is impossible to do because the brush backend is tightly linked to the existing GUI.

  2. We will also be able to port the GUI to QML when we finally start implementing mobile GUI for Krita.

Yesterday I finished the first milestone of the project: I have fully ported “Pixel Brush” to the new framework. That was the most difficult part of the project, now I just need to replicate the changes to other brush engines, which is just mechanical work.

While I’m porting other brush engines, I would really like it if someone tested the branch in its current state. I had to basically rewrite thousands(!) of lines of code in the brush editor and I could easily make some stupid mistakes :slight_smile:

Could you please check these packages and see if the brush editor page for the pixel brush still works correctly?

Packages:

Test plan

  1. Select any Pixel Brush preset
  2. Try to change any brush options (“Size”, “Rotation” and so on). All the widgets and curves should be connected to the brush stroke
  3. Try to change any sensors (“Pressure”, “Fuzzy” and so on). They should behave as expected, especially complex sensors with custom widgets, like “Drawing Angle”, “Fade”, “Time” and “Distance”
  4. Check if legend on the sensor curves is correct or at least “sane” (this part was changed significantly in the code, I hope I haven’t messed it up :slight_smile: )
  5. Try to close and reopen the brush editor, the settings should still be the same :slight_smile:
  6. Try the preset saving functions, like “Override” and “Reload”. They should behave in a sane way and reset the brush editor to the expected state.
  7. Check if Precision option is loaded/saved/used by the brush
  8. Pay attention to “linked” properties:
    • “Lightness strength” option should be enabled only when a predefined brush tip with lightness mode is enabled
    • “Painting Mode” should automatically reset and lock into “Wash” mode when “Masking Brush” is enabled
    • “Instant Preview” checkbox should automatically react when brush settings change:
      • it should cross-out when the size of the brush is below the threshold
      • when brush “Size” has a random sensor enabled or when “Randomness” or “Density” brush tip settings are active, it should show a tooltip with explanation under an asterisk sign

WARNING

Currently only Pixel Brush is ported and tested. Other brush engines are not ported and are expected to crash randomly! :slight_smile:

PS:

Here is the stat line for the current state of the branch. It definitely needs a lot of testing! :slight_smile:

338 files changed, 12052 insertions(+), 3001 deletions(-)
24 Likes

Everyone… Please do test! This is a huge thing, finally fixing something that we misdesigned in 2007… Please test!

10 Likes

Some initial issues I’ve noticed:

  • Masked Brush’s Rotation Curve option takes over the functionality of the main Rotation Curve option. You can see what I mean if you select Ink-4 Pen Rough. The Rotation Curve option under Masked Brush is enabled even though it’s supposed to be disabled, and it acts as the base Rotation Curve option while the actual base Rotation Curve option does nothing.
  • Fade slider for the Brush Tip is buggy. The slider visual doesn’t update on reload, and either slider sometimes functionally lags behind the other, noticeable through the brush tip preview. Try it on Basic-5 Size.
  • The default predefined brush tip size seems to be 1000 px. In stable it’s 5 px, but I would suggest making it inherit the diameter setting of the auto brush tip.
  • I get the following warnings on creating a new document:
Failed to load embedded resource KoResourceSignature("patterns", "", "", "")
Failed to load embedded resource KoResourceSignature("patterns", "", "", "")
QObject::connect: Can't find method  on instance of class KisMultipliersDoubleSliderSpinBox
Failed to load embedded resource KoResourceSignature("patterns", "", "", "")
  • You also get a similar warning regarding resources when first selecting certain brushes such as Basic-5 Size Opacity.
4 Likes

Be sure i am gonna test this deeply. I appreciate a lot all the effort. Let’s go! :hugs:
How do you want the feedback, everything together or things as i am discovering weird behaviors?
OS:Windows 10
Device: Wacom Intuos 4 pro S
Testing in Preview,Scratch Pad, and document with Brush Editor Detached
2. SIZE, ROTATION,… BEHAVIOUR
ROTATION OPTION
Select the “b) Basic 2 opacity” and change the ratio to see better the rotation. Activate rotation. close the brush editor and open again. The rotation is not active. Also happens if you have the brush ediitor detached and Rotation is active
Rotation controled by Pressure, Drawing Angle, Fuzzy Dab, Tilt Direction… are not working. It seems to be completely disconected. Tested With Auto, Predefined and Text.
Weird because testing other brushes have Drawing angle active. Maybe is the Ratio modified what cause this?

Select e) Marker Dry And Tilt seems to work fine in Rotation. Not Drawing angle and Fuzzy dab and so on.

Tested also in Kubuntu 20.04 with Wacom Bamboo Pen.

PD: If we are rewriting the Brush editor it would be more useful at least for making brushes to have “share curve across all settings” disabled.
Also if we could choose to have a curve by default selected in each option, i would choose Drawing angle in Rotation option. That way we can have Static and rotatated with less effort.

SIZE OPTION
I can’t test Rotation and Tangential pressure because i don’t have special stylus for that.
Auto default Pixel Engine brushtip

  • Preview in brush editor= OK
  • Scratchpad =OK
  • Document = (with detached Brush editor)= OK
    IT seems to work ok with a default created Pixel Engine brush.
    NOTE: If Brush Editor is detached and we activate time sensor and increase the value, there is a point where the window decoration is lost. At least in laptop with Kubuntu

Predefined Brushtip= Chalk
By default the brush size is at 1000px. too big for a default.

  • Preview in brush editor= OK (time doesn’t produce changes but distort the Curve widget area.
  • Scratchpad = OK
  • Document = OK
    NOTE: Fuzzy Stroke seems to create a not real variation between min and max. value when is combined with Fuzzy dab. Am i doing something wrong?

RATIO OPTION
Auto default Pixel Engine brushtip

  • Preview in brush editor= to do
  • Scratchpad =to do
  • Document = (with detached Brush editor)= to do
  1. OPTIONS rembembered?
    Mirror is not remember if Horizontally or vertically is active
    Scatter is using X and Y active. If you deactivate them. This is not remembered.
    Rotation option activation is not remembered

  2. Linked Properties.

  • Lightness Strength option works OK. with an RGBA brushtip and “Lightness map active”. If you select Alpha mask, Color image or Gradient map. with an RGBA brushtip they work ok, but you can’t control the “Lightness strength”
  • “Painting mode” option Change automatically if we add a masked brush from buildup to wash mode.
  • Instant View. Make Krita crash several times . I try to reproduce the same steps.
  • it should cross-out when the size of the brush is below the threshold= OK
  • when brush “Size” has a random sensor enabled or when “Randomness” or “Density” brush tip settings are active, it should show a tooltip with explanation under an asterisk sign= OK, but if you remove one of the parameters, the tooltip is not correct.

By the way, @raghukamath i would post this as a pinned thread, because is important for everybody. So if you think is ok i would be happy :slight_smile:

I haven’t done any extensive testing yet, but some things I’ve already noticed:

“Instant Preview” checkbox should automatically react when brush settings change:

  • it should cross-out when the size of the brush is below the threshold
  • This works as expected.
  • when brush “Size” has a random sensor enabled or when “Randomness” or “Density” brush tip settings are active, it should show a tooltip with explanation under an asterisk sign
  • This does not work as expected; the tooltip only updates when turning on or off the asterisk. So if you change more than one of these settings, the tooltip will become inconsistent (for example, the Randomness message being shown after you already turned it off, because Density was also enabled, while the Density message isn’t being shown).

  • Until some brush setting gets modified, texture patterns don’t work(!), and print this warning when using the brush (which includes switching to it in the brush editor):
    WARNING: Couldn't load the pattern for a stroke (KisTextureProperties).
    (It’s really obvious with Ramon’s Sketch pencil brushes.)

  • There’s a warning about Failed to load embedded resource KoResourceSignature("patterns", "", "", "") when switching to a brush that uses the Texture Strength option without using the Texture Pattern option (“b) Basic-5 Size Opacity”, for instance, or all of the default Stamp brushes), but only after using a brush with a Texture Pattern first.

  • There’s a debug message of id = [0,1,2] being printed when switching between auto, predefined, and text brushtips.

It seems to set the diameter based on the size of whichever default brushtip it decided to use; for me it’s using something called “3 brush”, with a size of 27px. That isn’t the first one I have alphabetically, and I have no idea why it’s using that one. It also initially gets named “Current Brush Preset”.
(In stable, it uses the first one alphabetically with a correct name, and a size of 5px.)

1 Like

I already pinned it globally just after @dkazakov posted it :slight_smile:

I am available for testing but I need to learn how to test on Windows in a way that won’t impact my current Krita. I know how to do it in Linux and Android but not Windows.

Can anyone share a link or give me a few words on how to proceed? Thx

The Windows test package is a portable version (basically the equivalent of a Linux appimage), so you can use it alongside an installed version, just by unpacking the .zip file somewhere and opening the krita shortcut.
The only effect it can have on another version of Krita is that they will share the same settings, so it could be wise to back up %LOCALAPPDATA%\kritarc, or your resource folder, whichever settings files you don’t want impacted.

1 Like

Wow, this is a huuuuuge project!

Tested on Windows 10 - Pixel brush engine

Brush Tip Fade Slider
The fade slider doesn’t seem to work. Also, it doesn’t return to its default setting after changing it and then clicking on the refresh icon, even though the yellow triangle “brush changed” icon disappears.

To reproduce: b) Basic-5 Size plus - Fade default is 0.94. Change it a few times, ending with a setting of 1.0. Click brush refresh icon, fade is not returned to original setting. Close brush editor, reopen, fade is still set on 1.0 but the brush editor doesn’t show the yellow triangle “brush changed” icon.

Texture - Pattern and Strength
Texture Options - Scale slider doesn’t return to default.
Strength is checked but Enable Pen Settings is not checked (maybe this is ok?). The strength slider does work as expected.
See j) WaterC Basic Lines-Wet-Pattern

Masked brush - Rotation
I saw several brushes with rotation selected even though there is no masked brush. See b) Basic-4 Flow Opacity and b) Basic-6 Details.

is there an android build available too?

Hi, everyone!

Thanks a lot for your testing and reports! I have already started fixing the bugs you reported :slight_smile:

3 Likes

Hi, everyone!

Thanks again for your efforts on testing this branch! I think I have fixed all the issues you mentioned in the reports :slight_smile:

  • fixed “Rotation” sensor no to be overridden by the masking brush
  • fixed “Fade” sliders in the Auto Brush
  • fixed the “default size of 1000 px for predefined brushes”. Now the size is explicitly shared among auto and predefined brushes.
  • fixed a spurious warning from about missing textures
  • fixed checkboxes in “Mirror”, “Scatter” and “Spacing” options not saving (they were accidentally shadowed by the same options of the masking brush)
  • fixed the tooltip of the lod-availability widget to be updated properly
  • fixed textured brushes to be textured right after loading, now you don’t need to change any options to get them working
  • removed ‘id = [0,1,2]’ debugging line
  • fixed predefined brush not to have a placeholder name (“Current Brush Preset”) on the first opening of the editor

Could you please make one more round of testing and at least confirm that all the issues you reported are fixed now? I was really careful with reading your reports, but I could have missed something :slight_smile:

Packages:

8 Likes

Windows 10 krita-5.2.0-prealpha-lager-dk2 - Pixel engine brushes

I checked the 3 things I had reported earlier - they’re all good! I didn’t find anything new to report.

Autobrush fade - :white_check_mark:

Texture - Pattern and Strength - :white_check_mark:

Masked Brush - Rotation - :white_check_mark:

(Edited to add system and testing details in first line)

1 Like

I encountered 2 crashes when selecting brush presets while having the brush editor opened. (in krita-5.2.0-prealpha-lager-dk2.zip)

First crashlog

Error occurred on Thursday, October 20, 2022 at 11:31:09.

krita.exe caused an Access Violation at location 00007FF9813158FD in module libkritaimage.dll Reading from location 0000000000000000.

AddrPC Params
00007FF9813158FD 000000B6937FEEB8 00007FF900000000 0000000000000000 libkritaimage.dll!KisCubicCurve::isIdentity+0x6d
00007FF97C0FD8CD 0000028E8884A3B0 00007FF97C1B8E68 000000B6937FEF20 libkritalibpaintop.dll!KisDynamicSensor2::KisDynamicSensor2+0xbd
00007FF97C102305 000000B6937FF100 00007FF9ECFDFDE6 0000000000000000 libkritalibpaintop.dll!KisDynamicSensorFuzzyBase2::KisDynamicSensorFuzzyBase2+0x55
00007FF97C1024F2 0000028E8884AE01 00007FF900000000 0000028E5856A630 libkritalibpaintop.dll!KisDynamicSensorFuzzyPerDab2::KisDynamicSensorFuzzyPerDab2+0x72
00007FF97BFC47C7 0000028E88A53600 0000028E88847F70 0000028E58047180 libkritalibpaintop.dll!KisCurveOption2::KisCurveOption2+0xb87
00007FF97BFED60A 0000028E49C80000 000000B6937FF509 0000000000000003 libkritalibpaintop.dll!KisMirrorOption::KisMirrorOption+0x2a
00007FF97BF30D66 0000000000000004 0000028E49E50000 0000028E49E503D8 libkritalibpaintop.dll!KisBrushBasedPaintOp::KisBrushBasedPaintOp+0x146
00007FF97C28738A 0000028E88847C10 0000000000000008 000000B6937FFAC0 kritacolorsmudgepaintop.dll!KisColorSmudgeOp::KisColorSmudgeOp+0x4a
00007FF97C2853DC 0000000000000000 00007FF9811D0000 0000028E88847C10 kritacolorsmudgepaintop.dll!KisSimplePaintOpFactory<KisColorSmudgeOp, KisColorSmudgeOpSettings, KisColorSmudgeOpSettingsWidget>::createOp+0x7c
00007FF9811DC799 0000028E585C7830 0000028E24E67560 000000B6937FFAC0 libkritaimage.dll!KisPaintOpRegistry::paintOp+0x99
00007FF9811DCBB6 0000028E585C7830 00007FF980ECBA48 0000000000000000 libkritaimage.dll!KisPaintOpRegistry::paintOp+0xb6
00007FF9811B4A24 0000000000000008 0000000000000000 0000000000000001 libkritaimage.dll!KisPainter::setPaintOpPreset+0xd4
00007FF980B80C29 0000028E887E5A40 0000028E49C80000 0000000000000001 libkritaui.dll!KisResourcesSnapshot::setupPainter+0x2f9
00007FF980B8C902 0000000000000002 000000B6937FFC28 0000000000000001 libkritaui.dll!KisPainterBasedStrokeStrategy::initPainters+0x132
00007FF980B8EFD2 0000028E2572F9D0 0000028E092451B0 00000000586CAC00 libkritaui.dll!std::__1::__function::__func<KisPainterBasedStrokeStrategy::initStrokeCallback()::$_2, std::__1::allocatorKisPainterBasedStrokeStrategy::initStrokeCallback()::$_2, void ()>::operator()+0x512
00007FF980B868B0 0000028E7CE6CC00 00007FF900000000 0000000000007530 libkritaui.dll!FreehandStrokeStrategy::doStrokeCallback+0x210
00007FF98117E102 0000028E254C66C0 0000028E00000000 0000000000000000 libkritaimage.dll!KisUpdateJobItem::run+0x132
00007FF97F6EFFAD 0000000000000000 0000000000000000 0000000000000000 Qt5Core.dll!QThreadPoolThread::run+0xad
00007FF97F6EBE6C 0000000000000000 0000000000000000 0000000000000000 Qt5Core.dll!QThreadPrivate::start+0x10c
00007FF9EE537034 0000000000000000 0000000000000000 0000000000000000 KERNEL32.DLL!BaseThreadInitThunk+0x14
00007FF9EF8E26A1 0000000000000000 0000000000000000 0000000000000000 ntdll.dll!RtlUserThreadStart+0x21

00007FF7620D0000-00007FF762116000 krita.exe 5.2.0.0
00007FF9EF890000-00007FF9EFA88000 ntdll.dll 6.2.19041.2130
00007FF9EE520000-00007FF9EE5DD000 KERNEL32.DLL 6.2.19041.1889
00007FF9ED510000-00007FF9ED7E2000 KERNELBASE.dll 6.2.19041.2130
00007FF9EA370000-00007FF9EA401000 apphelp.dll 6.2.19041.2075
00007FF9ECFD0000-00007FF9ED0D0000 ucrtbase.dll 6.2.19041.789
00007FF9817C0000-00007FF981E3F000 krita.dll
00007FF9A56B0000-00007FF9A579E000 libkritaresources.dll
00007FF981170000-00007FF9817B8000 libkritaimage.dll
00007FF98B910000-00007FF98BA0C000 libkritaglobal.dll
00007FF9EE890000-00007FF9EEFD3000 SHELL32.dll 6.2.19041.2075
00007FF9ED470000-00007FF9ED50D000 msvcp_win.dll 6.2.19041.789
00007FF980890000-00007FF981168000 libkritaui.dll
00007FF9EF580000-00007FF9EF71D000 USER32.dll 6.2.19041.2130
00007FF9ECFA0000-00007FF9ECFC2000 win32u.dll 6.2.19041.2130
00007FF9EF810000-00007FF9EF83B000 GDI32.dll 6.2.19041.2130
00007FF9EE5E0000-00007FF9EE70A000 ole32.dll 6.2.19041.1202
00007FF9ED360000-00007FF9ED46F000 gdi32full.dll 6.2.19041.2130
00007FF9EF080000-00007FF9EF1A5000 RPCRT4.dll 6.2.19041.1806
00007FF980340000-00007FF980885000 Qt5Widgets.dll 5.12.12.0
00007FF9EF1B0000-00007FF9EF504000 combase.dll 6.2.19041.2130
00007FF9D0840000-00007FF9D0892000 libKF5I18n.dll
00007FF9D6810000-00007FF9D6860000 libKF5ConfigCore.dll
00007FF97FC80000-00007FF98033E000 Qt5Gui.dll 5.12.12.0
00007FF98B7E0000-00007FF98B906000 libc++.dll
00007FF97F6D0000-00007FF97FC76000 Qt5Core.dll 5.12.12.0
00007FF9E8370000-00007FF9E837E000 libunwind.dll
00007FF9D4150000-00007FF9D4187000 Qt5Sql.dll 5.12.12.0
00007FF9EF510000-00007FF9EF57B000 WS2_32.dll 6.2.19041.546
00007FF9EE410000-00007FF9EE4BE000 ADVAPI32.dll 6.2.19041.2130
00007FF9D4070000-00007FF9D4092000 libkritaplugin.dll
00007FF9EEFE0000-00007FF9EF07E000 msvcrt.dll 7.0.19041.546
00007FF9CD700000-00007FF9CD719000 libkritastore.dll
00007FF9EE070000-00007FF9EE10C000 sechost.dll 6.2.19041.1865
00007FF9C4E70000-00007FF9C4EF0000 libKF5CoreAddons.dll
00007FF9CCCF0000-00007FF9CCD20000 libquazip5.dll
00007FF9E7E10000-00007FF9E7E1A000 libkritaversion.dll
00007FF9C7A10000-00007FF9C7A52000 Qt5Xml.dll 5.12.12.0
00007FF9B5050000-00007FF9B50CE000 libkritapsdutils.dll
00007FF9C4DE0000-00007FF9C4E11000 libkritametadata.dll
00007FF9821D0000-00007FF982362000 libfftw3.dll
00007FF9CCCD0000-00007FF9CCCEC000 libkritacommand.dll
00007FF9B77C0000-00007FF9B780C000 libHalf-2_5.dll
00007FF97F360000-00007FF97F6C2000 libkritapigment.dll
00007FF982090000-00007FF9821CF000 libkritawidgetutils.dll
00007FF9C9570000-00007FF9C958C000 libkritaimpex.dll
00007FF9E7840000-00007FF9E784B000 libkritacolor.dll
00007FF9A5650000-00007FF9A56A7000 libkritalibbrush.dll
00007FF9B5010000-00007FF9B5050000 libpng16.dll
00007FF98BE90000-00007FF98BF46000 Qt5Multimedia.dll 5.12.12.0
00007FF983D10000-00007FF983DF9000 libkritawidgets.dll
00007FF9A5D70000-00007FF9A5DA1000 libKF5Completion.dll
00007FF97F170000-00007FF97F355000 libkritaflake.dll
00007FF9A5610000-00007FF9A564B000 libkritaresourcewidgets.dll
00007FF9A4820000-00007FF9A4854000 libKF5ItemViews.dll
00007FF9C4DB0000-00007FF9C4DD1000 libKF5ConfigGui.dll
00007FF9C79F0000-00007FF9C7A0B000 libKF5GuiAddons.dll
00007FF981F90000-00007FF98208F000 libKF5WidgetsAddons.dll
00007FF98ABA0000-00007FF98ABEE000 Qt5Svg.dll 5.12.12.0
00007FF97F020000-00007FF97F16C000 Qt5Network.dll 5.12.12.0
00007FF9ED200000-00007FF9ED356000 CRYPT32.dll 6.2.19041.1889
00007FF9EA540000-00007FF9EA5DE000 UxTheme.dll 6.2.19041.2130
00007FF9EA750000-00007FF9EA77F000 dwmapi.dll 6.2.19041.746
00007FF9BDBD0000-00007FF9BDBF5000 intl.dll 0.19.0.0
00007FF9D57A0000-00007FF9D57BD000 MPR.dll 6.2.19041.1806
00007FF9D65C0000-00007FF9D65D9000 NETAPI32.dll 6.2.19041.2130
00007FF9ECEA0000-00007FF9ECECE000 USERENV.dll 6.2.19041.572
00007FF9E3520000-00007FF9E352A000 VERSION.dll 6.2.19041.546
00007FF9E09B0000-00007FF9E09D7000 WINMM.dll 6.2.19041.546
00007FF9BCD50000-00007FF9BCD71000 libzlib.dll 1.2.12.0
00007FF983AC0000-00007FF983B0E000 Qt5PrintSupport.dll 5.12.12.0
00007FF9EDD70000-00007FF9EDE4A000 comdlg32.dll 6.2.19041.1806
00007FF9B7FB0000-00007FF9B7FCF000 libKF5WindowSystem.dll
00007FF9EDF40000-00007FF9EDFED000 shcore.dll 6.2.19041.1865
00007FF9EF7B0000-00007FF9EF805000 SHLWAPI.dll 6.2.19041.2075
00007FF9EC450000-00007FF9EC51A000 DNSAPI.dll 6.2.19041.1865
00007FF9EC400000-00007FF9EC43B000 IPHLPAPI.DLL 6.2.19041.1865
00007FF9E7380000-00007FF9E738F000 iconv.dll
00007FF9DA2C0000-00007FF9DA358000 WINSPOOL.DRV 6.2.19041.2075
00007FF9D9D00000-00007FF9D9DB0000 COMCTL32.dll 5.82.19041.1110
00007FF9EC440000-00007FF9EC44C000 NETUTILS.DLL 6.2.19041.546
00007FF9EC520000-00007FF9EC563000 LOGONCLI.DLL 6.2.19041.2130
00007FF9DF2A0000-00007FF9DF2B9000 SAMCLI.DLL 6.2.19041.1466
00007FF983A30000-00007FF983ABE000 libssl-1_1-x64.dll 1.1.1.12
00007FF97ED60000-00007FF97F01A000 libcrypto-1_1-x64.dll 1.1.1.12
00007FF9DA030000-00007FF9DA058000 SRVCLI.DLL 6.2.19041.1645
00007FF9EC970000-00007FF9EC97C000 CRYPTBASE.DLL 6.2.19041.546
00007FF9EF720000-00007FF9EF750000 IMM32.DLL 6.2.19041.546
00007FF9EE250000-00007FF9EE258000 NSI.dll 6.2.19041.610
00007FF9ECEE0000-00007FF9ECEFF000 profapi.dll 6.2.19041.844
00007FF9EB060000-00007FF9EB7F1000 windows.storage.dll 6.2.19041.2130
00007FF9ECA00000-00007FF9ECA30000 Wldp.dll 6.2.19041.2075
00007FF97EBB0000-00007FF97ED5F000 qwindows.dll 5.12.12.0
00007FF9EDE50000-00007FF9EDF1D000 OLEAUT32.dll 6.2.19041.985
00007FF9E8500000-00007FF9E8514000 WTSAPI32.dll 6.2.19041.546
00007FF9EB840000-00007FF9EB852000 kernel.appcore.dll 6.2.19041.546
00007FF9ED0D0000-00007FF9ED152000 bcryptPrimitives.dll 6.2.19041.1415
00007FF9DF0D0000-00007FF9DF29F000 d3d9.dll 6.2.19041.2075
00007FF9ECB90000-00007FF9ECBA2000 msasn1.dll 6.2.19041.546
00007FF9E34E0000-00007FF9E3511000 cryptnet.dll 6.2.19041.906
00007FF9ED160000-00007FF9ED1C9000 WINTRUST.DLL 6.2.19041.2075
00007FF9EDF20000-00007FF9EDF3D000 imagehlp.dll 6.2.19041.1415
00007FF9EC950000-00007FF9EC968000 CRYPTSP.dll 6.2.19041.546
00007FF9EC010000-00007FF9EC044000 rsaenh.dll 6.2.19041.1052
00007FF9ED1D0000-00007FF9ED1F7000 bcrypt.dll 6.2.19041.1023
00007FF9EE770000-00007FF9EE885000 MSCTF.dll 6.2.19041.2075
00007FF98F1A0000-00007FF98F2C7000 opengl32.dll 6.2.19041.2075
00007FF9CDAB0000-00007FF9CDADC000 GLU32.dll 6.2.19041.2075
00007FF9EE1A0000-00007FF9EE24F000 clbcatq.dll 2001.12.10941.16384
00007FF98C170000-00007FF98F198000 nvoglv64.dll 30.0.15.1215
00007FF9ED8F0000-00007FF9EDD5F000 SETUPAPI.dll 6.2.19041.1741
00007FF9ED7F0000-00007FF9ED83E000 cfgmgr32.dll 6.2.19041.1620
00007FF9E3390000-00007FF9E34D8000 drvstore.dll 6.2.19041.1949
00007FF9ECD50000-00007FF9ECD7C000 devobj.dll 6.2.19041.1620
00007FF9EC130000-00007FF9EC163000 ntmarta.dll 6.2.19041.546
00007FF9E4C90000-00007FF9E4CCB000 dxcore.dll 6.2.19041.546
00007FF9EC570000-00007FF9EC5BB000 powrprof.dll 6.2.19041.546
00007FF9EC3E0000-00007FF9EC3F2000 UMPDC.dll
00007FF9EBCA0000-00007FF9EBD04000 WINSTA.dll 6.2.19041.2075
00007FF98B5F0000-00007FF98B629000 libEGL.DLL
00007FF97E5B0000-00007FF97EBA4000 libGLESv2.dll
00007FF9EB860000-00007FF9EB953000 dxgi.dll 6.2.19041.2075
00007FF9E9710000-00007FF9E98F3000 dcomp.dll 6.2.19041.2075
00007FF97E360000-00007FF97E5AC000 wintab32.dll 1.0.5.10
00007FF9B84D0000-00007FF9B8748000 Wacom_Tablet.dll 6.4.0.10
00007FF9A47F0000-00007FF9A481E000 qwindowsvistastyle.dll 5.12.12.0
00007FF9B7AC0000-00007FF9B7AD1000 qsvgicon.dll 5.12.12.0
00007FF9C3A90000-00007FF9C3ACE000 dataexchange.dll 6.2.19041.1387
00007FF9E8810000-00007FF9E8A73000 d3d11.dll 6.2.19041.2075
00007FF9E7410000-00007FF9E7610000 twinapi.appcore.dll 6.2.19041.1865
00007FF9A5820000-00007FF9A5832000 exchndl.dll 0.9.5.0
00007FF9EF840000-00007FF9EF848000 PSAPI.DLL 6.2.19041.546
00007FF981F10000-00007FF981F8F000 mgwhelp.dll 0.9.5.0
00007FF97E160000-00007FF97E353000 dbghelp.dll 10.0.17763.1
00007FF99C660000-00007FF99C68A000 dbgcore.DLL 10.0.17763.1
00007FF9D8B00000-00007FF9D8B0E000 kimg_hdr.dll
00007FF9D5F30000-00007FF9D5F3D000 kimg_kra.dll
00007FF98B010000-00007FF98B048000 libKF5Archive.dll
0000000063CC0000-0000000063CED000 liblzma.dll 5.2.5.0
00007FF9D4060000-00007FF9D406C000 kimg_ora.dll
00007FF9D3AC0000-00007FF9D3ACF000 kimg_pcx.dll
00007FF9D1300000-00007FF9D1310000 kimg_pic.dll
00007FF9D0900000-00007FF9D090D000 kimg_psd.dll
00007FF9CE5F0000-00007FF9CE5FE000 kimg_ras.dll
00007FF98BC30000-00007FF98BC41000 kimg_rgb.dll
00007FF9CD1A0000-00007FF9CD1AD000 kimg_tga.dll
00007FF98B7C0000-00007FF98B7DB000 kimg_xcf.dll
00007FF98B4F0000-00007FF98B501000 qgif.dll 5.12.12.0
00007FF98B110000-00007FF98B122000 qicns.dll 5.12.12.0
00007FF98AB80000-00007FF98AB91000 qico.dll 5.12.12.0
00007FF97E0E0000-00007FF97E154000 qjpeg.dll 5.12.12.0
00007FF9CCCC0000-00007FF9CCCCF000 qsvg.dll 5.12.12.0
00007FF98AB60000-00007FF98AB72000 qtiff.dll 5.12.12.0
00007FF97E060000-00007FF97E0DC000 libtiff.dll
00007FF97DFE0000-00007FF97E05C000 libjpeg-62.dll
00007FF9C9AE0000-00007FF9C9AEE000 qwbmp.dll 5.12.12.0
00007FF97DF20000-00007FF97DFD3000 qwebp.dll 5.12.12.0
00007FF9DC460000-00007FF9DC559000 textinputframework.dll 6.2.19041.2075
00007FF9E9DE0000-00007FF9EA13E000 CoreUIComponents.dll 6.2.19041.546
00007FF9EA140000-00007FF9EA232000 CoreMessaging.dll 6.2.19041.746
00007FF9E9590000-00007FF9E96E4000 wintypes.dll 6.2.19041.2130
00007FF9DA250000-00007FF9DA2B6000 Oleacc.dll 7.2.19041.746
00007FF9C80B0000-00007FF9C83A5000 UIAutomationCore.dll 7.2.19041.1741
00007FF9E8130000-00007FF9E8226000 PROPSYS.dll 7.0.19041.1741
00007FF9ECDB0000-00007FF9ECE52000 sxs.dll 6.2.19041.2130
00007FF983CF0000-00007FF983D03000 krita_shape_image.dll
00007FF97DEC0000-00007FF97DF13000 krita_shape_paths.dll
00007FF97D000000-00007FF97DEBD000 kritalcmsengine.dll
00007FF97CF90000-00007FF97CFF4000 liblcms2.dll
00007FF97CF70000-00007FF97CF86000 liblcms2_fast_float.dll
00007FF97CF40000-00007FF97CF6D000 krita_colorspaces_extensions.dll
00007FF97CF20000-00007FF97CF36000 kritaasccdl.dll
00007FF97CEF0000-00007FF97CF11000 kritablurfilter.dll
00007FF97CEA0000-00007FF97CEE2000 kritacolorsfilters.dll
00007FF97CE80000-00007FF97CE96000 kritaconvertheighttonormalmap.dll
00007FF97CE60000-00007FF97CE72000 kritaconvolutionfilters.dll
00007FF97CE40000-00007FF97CE52000 kritadodgeburn.dll
00007FF97CE20000-00007FF97CE34000 kritaedgedetection.dll
00007FF9C7950000-00007FF9C795F000 kritaembossfilter.dll
00007FF97CE00000-00007FF97CE11000 kritaexample.dll
00007FF97CDE0000-00007FF97CDF8000 kritaextensioncolorsfilters.dll
00007FF97CDC0000-00007FF97CDD5000 kritafastcolortransferfilter.dll
00007FF97CC90000-00007FF97CCA6000 kritagaussianhighpassfilter.dll
00007FF97C840000-00007FF97C860000 kritagradientmap.dll
00007FF97C800000-00007FF97C834000 kritahalftone.dll
00007FF97C7E0000-00007FF97C7FA000 kritaimageenhancement.dll
00007FF97C7C0000-00007FF97C7DC000 kritaindexcolors.dll
00007FF97C790000-00007FF97C7BE000 kritalevelfilter.dll
00007FF97C770000-00007FF97C785000 kritanoisefilter.dll
00007FF97C750000-00007FF97C762000 kritanormalize.dll
00007FF97C730000-00007FF97C745000 kritaoilpaintfilter.dll
00007FF97C700000-00007FF97C721000 kritapalettize.dll
00007FF97C6D0000-00007FF97C6F1000 kritaphongbumpmap.dll
00007FF97C6B0000-00007FF97C6C4000 kritapixelizefilter.dll
00007FF97C690000-00007FF97C6A3000 kritaposterize.dll
00007FF97C670000-00007FF97C681000 kritaraindropsfilter.dll
00007FF97C650000-00007FF97C666000 kritarandompickfilter.dll
00007FF97C630000-00007FF97C644000 kritaroundcornersfilter.dll
00007FF97C610000-00007FF97C622000 kritasmalltilesfilter.dll
00007FF97C5F0000-00007FF97C608000 kritathreshold.dll
00007FF97C5D0000-00007FF97C5E3000 kritaunsharpfilter.dll
00007FF97C5B0000-00007FF97C5C9000 kritawavefilter.dll
00007FF97C590000-00007FF97C5A5000 kritacolorgenerator.dll
00007FF97C560000-00007FF97C585000 kritagradientgenerator.dll
00007FF97C530000-00007FF97C552000 kritamultigridpatterngenerator.dll
00007FF97C510000-00007FF97C52E000 kritapatterngenerator.dll
00007FF97C3D0000-00007FF97C509000 kritascreentonegenerator.dll
00007FF97C310000-00007FF97C3CF000 kritaseexprgenerator.dll
00007FF97C2F0000-00007FF97C30B000 kritasimplexnoisegenerator.dll
00007FF97C280000-00007FF97C2EC000 kritacolorsmudgepaintop.dll
00007FF97BF10000-00007FF97C271000 libkritalibpaintop.dll
00007FF97BEE0000-00007FF97BF0E000 kritacurvepaintop.dll
00007FF97BE50000-00007FF97BED2000 kritadefaultpaintops.dll
00007FF97BE10000-00007FF97BE49000 kritadeformpaintop.dll
00007FF97BDE0000-00007FF97BE0D000 kritaexperimentpaintop.dll
00007FF97BDB0000-00007FF97BDDA000 kritafilterop.dll
00007FF97BD80000-00007FF97BDAB000 kritagridpaintop.dll
00007FF97BD40000-00007FF97BD75000 kritahairypaintop.dll
00007FF97BD00000-00007FF97BD3F000 kritahatchingpaintop.dll
00007FF97BC90000-00007FF97BCFE000 kritamypaintop.dll
00007FF97BC60000-00007FF97BC81000 libmypaint.dll
00007FF97BC40000-00007FF97BC55000 libjson-c.dll
00007FF97BC10000-00007FF97BC40000 kritaparticlepaintop.dll
00007FF97BBE0000-00007FF97BC06000 kritaroundmarkerpaintop.dll
00007FF97BBA0000-00007FF97BBD8000 kritasketchpaintop.dll
00007FF97BB30000-00007FF97BB9F000 kritaspraypaintop.dll
00007FF97BAF0000-00007FF97BB23000 kritatangentnormalpaintop.dll
00007FF97BA90000-00007FF97BAE3000 krita_flaketools.dll
00007FF97BA60000-00007FF97BA87000 krita_karbontools.dll
00007FF97BA20000-00007FF97BA60000 krita_tool_svgtext.dll
00007FF97B9B0000-00007FF97BA15000 kritaassistanttool.dll
00007FF97B920000-00007FF97B9AF000 kritadefaulttools.dll
00007FF97B900000-00007FF97B919000 libkritabasicflakes.dll
00007FF97B860000-00007FF97B8FE000 kritaselectiontools.dll
00007FF97B830000-00007FF97B858000 kritatoolSmartPatch.dll
00007FF97B640000-00007FF97B669000 kritatoolcrop.dll
00007FF97B810000-00007FF97B825000 kritatooldyna.dll
00007FF97B600000-00007FF97B637000 kritatoolencloseandfill.dll
00007FF97B5D0000-00007FF97B5F5000 kritatoollazybrush.dll
00007FF97B5B0000-00007FF97B5C3000 kritatoolpolygon.dll
00007FF97B590000-00007FF97B5A2000 kritatoolpolyline.dll
00007FF97B430000-00007FF97B58C000 kritatooltransform.dll
00007FF97B370000-00007FF97B423000 kritaanimationdocker.dll
00007FF97B350000-00007FF97B366000 kritaarrangedocker.dll
00007FF97B320000-00007FF97B34D000 kritaartisticcolorselector.dll
00007FF97B300000-00007FF97B31D000 kritachanneldocker.dll
00007FF97B290000-00007FF97B2FA000 kritacolorselectorng.dll
00007FF97B270000-00007FF97B28F000 kritacompositiondocker.dll
00007FF97B250000-00007FF97B266000 kritadigitalmixer.dll
00007FF97B220000-00007FF97B245000 kritagamutmask.dll
00007FF97B200000-00007FF97B21A000 kritagriddocker.dll
00007FF97B1E0000-00007FF97B1F8000 kritahistogramdocker.dll
00007FF97B1C0000-00007FF97B1D9000 kritahistorydocker.dll
00007FF97B170000-00007FF97B1B7000 kritalayerdocker.dll
00007FF97B150000-00007FF97B169000 kritalogdocker.dll
00007FF97B120000-00007FF97B14B000 kritalutdocker.dll
00007FF97AD30000-00007FF97B111000 libOpenColorIO_2_1.dll
00007FF97ACF0000-00007FF97AD26000 libexpat.dll 2.4.7.0
00007FF97ACD0000-00007FF97ACEB000 kritaoverviewdocker.dll
00007FF97ACB0000-00007FF97ACCA000 kritapalettedocker.dll
00007FF9C5170000-00007FF9C5180000 kritapatterndocker.dll
00007FF97AC90000-00007FF97ACA1000 kritapresetdocker.dll
00007FF97AC70000-00007FF97AC88000 kritapresethistory.dll
00007FF97AC20000-00007FF97AC64000 kritarecorderdocker.dll
00007FF97AC00000-00007FF97AC1F000 kritasmallcolorselector.dll
00007FF97ABE0000-00007FF97ABF9000 kritasnapshotdocker.dll
00007FF97ABC0000-00007FF97ABDB000 kritaspecificcolorselector.dll
00007FF97AB50000-00007FF97ABB1000 kritastoryboarddocker.dll
00007FF97AB30000-00007FF97AB45000 kritasvgcollectiondocker.dll
00007FF97AB10000-00007FF97AB29000 kritatasksetdocker.dll
00007FF97AAF0000-00007FF97AB08000 kritatouchdocker.dll
00007FF97AAD0000-00007FF97AAE7000 Qt5QuickWidgets.dll 5.12.12.0
00007FF97A9E0000-00007FF97AACE000 libkritaqml.dll
00007FF97A220000-00007FF97A622000 Qt5Qml.dll 5.12.12.0
00007FF97A630000-00007FF97A9E0000 Qt5Quick.dll 5.12.12.0
00007FF97A1F0000-00007FF97A21A000 kritaexif.dll
00007FF979FA0000-00007FF97A1E9000 libexiv2.dll
00007FF979F80000-00007FF979F99000 libwinpthread-1.dll 1.0.0.0
00007FF979F50000-00007FF979F71000 kritaiptc.dll
00007FF979F30000-00007FF979F4B000 kritaxmp.dll
00007FF979DC0000-00007FF979F26000 qsqlite.dll 5.12.12.0
00007FF979DA0000-00007FF979DB4000 qgenericbearer.dll 5.12.12.0
00007FF9E60E0000-00007FF9E60F7000 dhcpcsvc6.DLL 6.2.19041.2130
00007FF9E60C0000-00007FF9E60DD000 dhcpcsvc.DLL 6.2.19041.2130
00007FF9C5870000-00007FF9C5894000 edputil.dll 6.2.19041.546
00007FF9E8350000-00007FF9E8367000 napinsp.dll 6.2.19041.546
00007FF9E7DE0000-00007FF9E7DFB000 pnrpnsp.dll 6.2.19041.546
00007FF9E7300000-00007FF9E7315000 wshbth.dll 6.2.19041.546
00007FF9E96F0000-00007FF9E970D000 NLAapi.dll 6.2.19041.1151
00007FF9EC760000-00007FF9EC7CA000 mswsock.dll 6.2.19041.546
00007FF9E7D50000-00007FF9E7D62000 winrnr.dll 6.2.19041.546
000000005EFE0000-000000005F006000 mdnsNSP.dll 3.0.0.10
00007FF9E50D0000-00007FF9E50DA000 rasadhlp.dll 6.2.19041.546
00007FF9E4510000-00007FF9E4590000 fwpuclnt.dll 6.2.19041.2006
00007FF979D80000-00007FF979D95000 kritabuginfo.dll
00007FF979D60000-00007FF979D79000 kritaclonesarray.dll
00007FF979D40000-00007FF979D5C000 kritacolorrange.dll
00007FF979D20000-00007FF979D37000 kritacolorspaceconversion.dll
00007FF979D00000-00007FF979D1B000 kritadbexplorer.dll
00007FF979CE0000-00007FF979CFD000 kritaimagesplit.dll
00007FF979CC0000-00007FF979CD2000 kritalayergroupswitcher.dll
00007FF979CA0000-00007FF979CBE000 kritalayersplit.dll
00007FF979C70000-00007FF979C9D000 kritametadataeditor.dll
00007FF979C50000-00007FF979C68000 kritamodifyselection.dll
00007FF979C30000-00007FF979C4D000 kritaoffsetimage.dll
00007FF9C4E60000-00007FF9C4E6F000 kritaqmic.dll
00007FF979BF0000-00007FF979C25000 libkritaqmicinterface.dll
00007FF979BA0000-00007FF979BEC000 kritaresourcemanager.dll
00007FF979B80000-00007FF979B98000 kritarotateimage.dll
00007FF979B60000-00007FF979B7C000 kritaseparatechannels.dll
00007FF979B40000-00007FF979B51000 kritashearimage.dll
00007FF979B20000-00007FF979B38000 kritawaveletdecompose.dll
00007FF979AF0000-00007FF979B15000 kritapykrita.dll
00007FF979A40000-00007FF979AEC000 libkritalibkis.dll
00007FF979610000-00007FF979A3C000 python38.dll 3.8.1150.1013
00007FF9795F0000-00007FF979605000 VCRUNTIME140.dll 14.16.27012.6
00007FF979570000-00007FF9795EA000 krita.pyd
00007FF979540000-00007FF979561000 sip.cp38-win_amd64.pyd
00007FF9792C0000-00007FF97953B000 QtCore.pyd
00007FF979030000-00007FF9792C0000 QtGui.pyd
00007FF978A50000-00007FF979029000 QtWidgets.pyd
00007FF978A10000-00007FF978A50000 QtXml.pyd
00007FF9789F0000-00007FF978A07000 _bz2.pyd 3.8.1150.1013
00007FF9789B0000-00007FF9789F0000 _lzma.pyd 3.8.1150.1013
00007FF978980000-00007FF9789AD000 _elementtree.pyd 3.8.1150.1013
00007FF978940000-00007FF978971000 pyexpat.pyd 3.8.1150.1013
00007FF9C4BF0000-00007FF9C4BFD000 _hashlib.pyd 3.8.1150.1013
00007FF9785F0000-00007FF978932000 libcrypto-1_1.dll 1.1.1.4
00007FF9785D0000-00007FF9785E6000 _socket.pyd 3.8.1150.1013
00007FF9BE0E0000-00007FF9BE0E9000 select.pyd 3.8.1150.1013
00007FF9785B0000-00007FF9785D0000 _ssl.pyd 3.8.1150.1013
00007FF978500000-00007FF9785AB000 libssl-1_1.dll 1.1.1.4
00007FF9784E0000-00007FF9784F2000 _asyncio.pyd 3.8.1150.1013
00007FF9B7FA0000-00007FF9B7FAD000 _overlapped.pyd 3.8.1150.1013
00007FF9A5600000-00007FF9A560D000 qtquick2plugin.dll 5.12.12.0
00007FF978420000-00007FF9784D7000 kritasketchplugin.dll
00007FF9A4FF0000-00007FF9A4FFE000 kritakraimport.dll
00007FF978390000-00007FF97841F000 libkritalibkra.dll
00007FF98BDA0000-00007FF98BE71000 imkrtip.dll 6.2.19041.1
00007FF98BC50000-00007FF98BD92000 imetip.dll 6.2.19041.1682
00007FF9CDBA0000-00007FF9CDD4E000 DUI70.dll 6.2.19041.746
00007FF98B710000-00007FF98B751000 imkrapi.dll 6.2.19041.844
00007FF9E6CF0000-00007FF9E6D90000 policymanager.dll 6.2.19041.2075
00007FF9EC0A0000-00007FF9EC12A000 msvcp110_win.dll 6.2.19041.546
00007FF9A4860000-00007FF9A489E000 imjkapi.dll 6.2.19041.746
00007FF978320000-00007FF97838C000 symsrv.dll 10.0.17763.1
00007FF9D4C20000-00007FF9D50F9000 WININET.dll 11.0.19041.2075
00007FF9DA7B0000-00007FF9DAA61000 iertutil.dll 11.0.19041.2130
00007FF9ECE60000-00007FF9ECE92000 SspiCli.dll 6.2.19041.2130
00007FF9D1380000-00007FF9D1397000 ondemandconnroutehelper.dll 6.2.19041.546
00007FF9E7080000-00007FF9E718D000 winhttp.dll 6.2.19041.2075
00007FF9E6B30000-00007FF9E6B3B000 WINNSI.DLL 6.2.19041.546
00007FF9DA060000-00007FF9DA24D000 urlmon.dll 11.0.19041.2075
00007FF9EBF30000-00007FF9EBFC7000 schannel.DLL 6.2.19041.2130
00007FF9D7E20000-00007FF9D7E35000 mskeyprotect.dll 6.2.19041.1202
00007FF9ECA30000-00007FF9ECA6B000 NTASN1.dll 6.2.19041.546
00007FF9ECD80000-00007FF9ECD8A000 DPAPI.DLL 6.2.19041.546
00007FF9ECA70000-00007FF9ECA97000 ncrypt.dll 6.2.19041.662
00007FF9D80F0000-00007FF9D8116000 ncryptsslp.dll 6.2.19041.546

Windows 6.2.9200
DrMingw 0.9.5

Second crashlog

Error occurred on Thursday, October 20, 2022 at 11:32:29.

krita.exe caused a Breakpoint at location 00007FF9ED5DD922 in module KERNELBASE.dll.

AddrPC Params

(+)

Should I write a bug report with that specific build?
Tell me if there’s more info you need.

OS : Win10 x64
Device : Wacom Intuos Pro Medium

Brush engines other than pixel engine are not done and will crash, did you select brush made by other engines?

Ah you’re right… I think I must’ve randomly selected brushes made of other brush engines while switching the presets.
Ignore my post plz if that’s an expected behavior.

Hi, everyone!

I have have one completed more milestone in the Lager project! I have ported colorsmudge brush engine, which was one of the most complicated parts of our brush editor! :slight_smile:

If you have time, could you please check the updated packages?

Test plan

  1. Check if all the options of Color Smudge brush still work as expected
    • Smudge Length: Dulling/Smearing, Old/New Engine, Smear Alpha
    • Smudge Radius
    • Color Rate
    • Overlay
  2. Pay great attention to “linked” properties (that was the most difficult part of the refactoring, and the main reason for the refactoring itself :slight_smile: ):
    1. Paint thickness option should be available only when a predeined brush with Lightness mode is selected
    2. “New engine” mode should be forced when a non-masking mode of a predefined brush is selected (e.g. Gradient, Color Stamp or Lightness Map)
    3. “Overlay” mode should be forcefully disabled when the brush works in Lightness Map mode.
    4. Overlay option should block and disable Instant Preview checkbox
    5. [the most funny] Smudge Radius option should change its max value depending on the selection of new or old engine. With the old engine, Smudge Radius should have max value of 300%, with the new engine — 100%. Basically, enabling the Lightness Map mode in the brush should now only trigger the new engine, but also crop the smudge radius value by 100% level :wink:

Packages

8 Likes

Thanks for letting us help Dmitry. :slight_smile:

  1. I made a new Color Smudge brush just to try everything out.

When I check or uncheck any of the checkboxes in the brush menu, the diameter/size of the brush always goes back to the value that is stated as the size under the “brush tip” menu.

This looks as if it doesn’t happen when I use an already existing Color Smudge brush. Can someone confirm?


2.1. Paint thickness only works on my end if the correct brush tip mode is selected. :white_check_mark:

2.2. Seems working also :white_check_mark:

2.3. Working :white_check_mark:

2.4. Doesn’t seem to work for me, I can toggle Instant Preview. You mean View - Instant Preview Mode, right?

2.5. Yep, working. The value of 99 stays in the brush I tested, however it changes the “length” of the slider where 99 is almost full on one, and 99 is only a third since the base value went up to 300%. :white_check_mark:

Tested under Windows 10 if that is of any value for you.

First, I’ve confirmed all the issues I previously mentioned with Pixel brushes have been fixed.

Now, for Color Smudge brushes:

  • When using Color Image, Lightness Map, or Gradient Map mode, SAFE ASSERT (krita): "m_brush->brushApplication() == ALPHAMASK || m_smudgeRateOption.useNewEngine()" in file C:/dev/env-13-lager/krita/plugins/paintops/colorsmudge/kis_colorsmudgeop.cpp, line 73 occurs.

  • Paint thickness is correctly disabled when not using a Lightness brush, but the message reads “XXX Disabled:” instead of just “Disabled:” like the other messages.

Everything else listed under 2. Linked Properties seems to work fine:

  • When using Color Image, Lightness Map, or Gradient Map mode, Smudge Length → “Use new smudge algorithm” is force-enabled.
  • Overlay mode is disabled in Lightness Map mode.
  • Overlay mode disables Instant Preview.
  • “New engine mode” caps smudge radius at 100%, setting back to “old mode” without changing the value remembers if the value was above 100% (for example, 200%).

It refers to a checkbox labeled “Instant Preview” on the bottom of the Brush Editor.

4 Likes