Skip to content

Krita 4.2 Release Notes

Previous Post | Wednesday, 22 August 2018 | Reading time: 15 minutes | Next Post

Krita 4.2 has been released on May 29th, 2019. While the core team focused on stability and performance, this release also includes many new features and the performance work and the work on handling palettes done during the 2018 Google Summer of Code. Join us for the ride!

Updated Tablet Support for Windows, Linux and macOS

We finally managed to bring together the code we wrote for supporting tablets on Windows (both Wintab as Windows Ink), Linux and macOS with the existing code in our development platform, Qt. This has improved support for multi-monitor setups, more tablets are supported and a host of bugs with tablets have been resolved. This was a huge amount of work!

Note: we needed to patch Qt to make all of this work. The patches have been upstreamed but might not yet be integrated by your linux distribution. Until that happens, you might need to use the Linux AppImage instead of Krita as built by your distribution.

HDR Painting

HDR Animation created in Krita by Agata Cacko

Krita at CES2019

Krita has been able to work with HDR images since 2005, but it's now possible to view your HDR image in HDR, on supported hardware. You can now not only save your HDR image in .kra or OpenEXR files, but also extended PNG. With the right version of FFMPEG you can even create animations in HDR! Having the correct computer setup for this can be rather complicated, so head to the documentation to see what is involved. HDR display is only available on Windows 10. If you have HDR enabled, the Small Color Selector Docker has an extra "nits" slider that allows you to change the brightness of a specfic color.

This work was possible through cooperating with Intel. The work also involved helping these HDR changes get pushed into the development framework Krita uses, Qt. This can allow other applications to take advantange of these features.

Improved brush speed performance with vectorization and lock-free programming

Two of our 2018 Google Summer of Code students sped up Krita with programming techniques called lock-free hashmap for managing the pixel data (Andrey Kamakin) and GPU vectorization  (Ivan Yossi). The lock-free hashmap should improve Krita's speed with multithreading, the chart shows the performance gains based off your CPU core count. Vectorization for the Gaussian and Soft-brush tips optimizes Krita by taking advantage of your processor's ability to do similar calculations really quickly, the gif above showing the speed difference for the gaussian brush tip.

The left axis on the graph is time in milliseconds. You can see the painting operations go from 1.5 seconds down to about 1 second with the lock-free hashmap. The blue line shows how Krita previously worked.

Improved Color Palette Docker

An improved color palette from one of our Google Summer of Code students for 2018 -- Michael Zhou. It is more stable as well as some of the following changes:

  1. Instead of an entry-based docker, a rows and column based docker.
  2. It can hold empty entries, which is useful for organizing.
  3. Stable drag and dropping of colors.
  4. Easy adding in entries by clicking them in the docker.
  5. Right-clicking removes an entry.
  6. Palettes can be put into the KRA file.
  7. You can press the folder icon to open a palette editing dialog where you can set a palette to be stored in the document or resource-folder.

Animation Python API

Control and create customized workflows that deal with animations.

A couple plugins have already been created that are using some of these functions. There was also another fix to the Node/Layer API where the "scaleNode" call was passing the wrong parameter

Animator Video Reference and importer - https://github.com/scottpetrovic/animator-video-reference Sprite Sheet manager - https://github.com/Falano/kritaSpritesheetManager

Configure File backups

Options to control how your backups are done. You can even control if you want your backup files to be stored in a different location. These settings are found in the "Configure Krita" main menu under the General section.

If you have very large files and are have issues saving, you can enable the Zip64 options.

Color Gamut Masking

A new color gamut docker where you can limit your colors shown. New contributor Anna Medonosova has added this. This feature is available with the artistic color selector and the circle advanced color docker displays. Note: The default triangle selector doesn't allow this feature.

You can also rotate the gamut mask by using the slider. Create new masks and edit existing ones through the Gamut Mask docker. You can disable the mask with the selector icon at the top as shown to the left of the rotation slider.

News about Krita

A news widget has been added to the startup screen that allows Krita to fetch the latest news coming from krita.org. Now, if there's something interesting, like a new release, you'll be in the front row! Clicking on a news item will take you to the web page. This is off by default, so you will need to turn it on. Special thanks goes out to Alvin Wong on getting the OpenSSL library included to make this work.

Improved Artistic Color Selector

More options and cleaned up Artistic Color Selector. There is now a "continuous mode" (infinity symbol) that allows you to remove the stepping with certain attributes. Additional options for new gamut masking. Anna Medonosova has added this great feature.

Undo operations with move tool

Move tool operations are now part part of the undo history. This means you can undo multiple moves in a row while you are using the move tool.

Move and transform selections

Easily move, rotate, or transform the selection by itself. You can even edit the anchor points with how the selection is made to do things like rounding corners.

Improve display of memory usage

Give a better indication when your computer is running out of memory. This can be useful as well when making an animation and you won't have enough memory to actually render it. This bar already exists in the status bar, but should help warn people better.

Overview Docker improvements

Rotate and mirror canvas quickly from the docker. The Overview docker now also better preserves the aspect ratio and doesn't stretch when some layers are hidden.

Resize layer thumbnails

There is a new slider on the layers docker that allows you to resize the layer thumbnails to see them larger. The size is saved for when you return back to Krita the next time.

Multibrush improvements

Better preview when showing multiple axes.

There is also a new "Copy Translate" mode. This allows you to specify multiple cursors on the screen to paint or draw with at the same time. This is accessed and used through the Tool options like the other modes.

Painting mask performance improvement

You can create a selection with your normal brushes using the Global Selection option. This has previously been a slow area until now. They are now significantly faster. A small workflow change was made as well. If you show the Global Selection mask with no selection, everything will be selected by default.

Improvement to Select Opaque

Ctrl + clicking a layer's thumbnail in the layer docker makes a selection of the layers content. This is the same as the right click option Select Opaque. There are also new methods for making layer selections. "Select Opaque" has been renamed to "Select Opaque (replace)" now to account for the new functions.

Sharpness Changes

The sharpness option, which sets a threshold filter on the current brushtip now allows controlling this threshold with pressure, making it easy to create bristle like brushes from any with the pixel brush.

Flow/Opacity Changes

Flow and Opacity now interact more like in other programs. The above gif shows how to adapt a brush which uses the new behaviour to go back to the old behaviour. The new behaviour should make it a lot easier to make delicate strokes. For now you can still go back to using the old behaviour globally by going to Configure Krita → General → Tools → Flow Mode

Clone Brush - Reset Origin

A new option was added to the clone brush that allows you to reset the origin after every brush stroke.

Simplex Noise Generator

Add ability to dynamically add noise to your document. There are also options to make the noise tileable.

New Blend modes

New categories of the blend modes were added to create interesting effects.

Other Changes and bug fixes