SZK Pixel Art Suite

perhaps I’m wrong (something I’m good at)

Sorry but thats something I’m also pretty good at. Probably even better than you :smiling_face_with_sunglasses: (xD).

Lets see what M1 says, but I do wish you are right! (And by the way, it was a great sugestion, I appreciate your idea a lot!). Is just that I’m not sure, since I tested it and sadly (or well, maybe luckily) they worked as expected.

1 Like

Didn’t work @Michelist , I made sure to restart krita too

1 Like

@_M1 I believe it may be some document setting (If you don’t want to share or something just tell me.

Did you change any setting in the Color Management section?

1 Like

I feared as much. What a pity.

Michelist

Sent as a Krita file, hope that’s alright. I didn’t change anything in color management, just checked and hit restore defaults.

1 Like

I think I finally found the issue, is because of the LUT Management being disabled. I always have it enabled, but disabling it I’m getting the same results as @_M1 .

For enabling it:
Settings -> Dockers -> LUT Management, and press "Use OpenColorIO"

Even though, I’m working to solve it since it should work correctly with or without the LUT. I thought it was a minor change, a bad format for some images I use but seems a bit more complex.

Thank you so much to @_M1 for reporting it!

2 Likes

Can confirm it’s working for me too. Thank you so much, I’m excited to actually use it lol.

1 Like

Glad to hear that! :partying_face::partying_face: Thanks for reporting it and for your patience, have fun friend! :smiley:

For the record, turns out that yesterday I was trying to solve something that wasn’t broken :melting_face:

@Michelist was right here and here. It was the “Color selector uses different color space than image” (Thanks by the way, Michelist :four_leaf_clover:).

I thought it could also be that, so I was kinda surprised that it was working fine for me disabling or enabling it. But it was due I had the LUT Management enabled, and that is what LUT Management does basically, apply different transforms to keep the colors you see faithfull to different profiles. So that option didn’t had any effect while is enabled.

But after disabling it, everything is working as expected. Those colors variations are expected if you enable the “Color selector uses different color space than image”:

2 Likes

Weird, wasn’t working for me at the time, even made a comment that I restarted the app. I closed it and everything. After your fix, doing the Color selector works now though. I guess if that was what was truly happening, sorry for throwing you in a wild goose chase.

1 Like

Don’t worry friend! I learned some new things! :smiley:

1 Like

I have updated it! :partying_face: :kangaroo:

Changes (v1.2.1)

K-Sprite:

  • Allows panning the document by holding space (to mimic Krita)

  • Antialiasing Brush:

    • Added a palette algorithm (P4 and P8 in the dropdown menu) for painting with the most similar color (using a cielab algorithm) to the all adjacent pixels.

      • Right click picks the opposite; the most different color in the palette to the all adjacent pixels (could be useful for generating the most contrast possible).

Basically identifies all the surrounding pixels, and uses an algorithm to paint with the color in the palette that is most similar to the adjacent pixels (without being a color that is already in an adjacent pixels).

This is great for easily adding an antialiasing effect without using colors that are not in the palette you are using.

2025-11-06 21.36.02  aa.kra_(10.5_MiB)__-_Krita 525

Shading tab

  • Sort by ID improved:

    • When you added a palette (like one from Lospec), after sorting it with a different criteria, you were not able to come back to the original sorting. Now it is possible.

I personally download my palettes from lospec. I find the sorting tools great for helping me to decide which color to chose, by maybe sorting by the perceived value, etc.

But it had the problem that once you sorted the palettes, you were not able to come back to their original sort. And I missed that since usually the palettes are well organized into different hues and shades

imagen

NOTE: For this to work correctly, you should not edit the swatches ID, since is what is used to store their original position

Export tab

  • Added more options to the export tab.

    • Button for exporting the document and selected layer/group on x1 scale (not only scaled)

    • Option for using the current selection as a mask for exporting only the selected part.

While I was working on this animation I liked to use the export tab since it was very fast to export all my sprites whenever I made a change.

But I had a recurring problem; despite I had each layer/sprite separated on groups, I ended adding some filters/effects on top to tweak the whole illustration on the top of the document. And that made that exporting the layers/groups below, didn’t had applied those changes.

Like I was getting this for one sprite:

FG (2025-08-12_22.32.14)

But I wanted this (not only the fire is different, also the colors because of the filter layer):

=====corregido (2025-08-12_22.31.58)

For that I made the options to crop and mask the selection. That way I could export the whole document but masking and croping it to my selection/sprites, and made things easier.

(This is useful if you are doing some gamedev related stuff).

Also, I noticed that I was using a lot the export tab to export the separated pieces of the illustration to my game engine, and I didn’t want them to be scaled. So instead of having to change the scale, I simply added 2 buttons for exporting them at x1 scale.

Misc changes

Some changes:

  • Actions:

    • Previous Palette Color (SZK Pixel Art Suite)

    • Next Palette Color (SZK Pixel Art Suite)
      Renamed to:

    • Previous Shading Color (SZK Pixel Art Suite)

    • Next Shading Color (SZK Pixel Art Suite)

  • Added a buttons for opening the online documentation.

  • UI redessigned in some places.

2 Likes

I updated it (Version 1.2.2)!

I solved some bugs in the color replace tool; I noticed that it was only replacing the pixels of the layers that were inside the canvas’ rect (and when you moved them you could see the previous color unchanged):

Now it fully replace the layer content since I think is the expected behaviour.


Also, maybe this is not the place to ask, but did the Krita api/documentation web moved or something? It has been weeks with error 404:

1 Like

Thank you for the update!

And, yes, it would be better to ask it in one of these three categories that all three should fit:
Plugins Development
Artists Feedback & Testing
Developer Questions

Michelist

1 Like

New Update 1.3.0!

As I said in the drawing I made the other day, I had to update the plugin.

This update is specially useful for people interested in gamedev (and more specifically for those using Godot! :robot:). It was made mostly while working on that illustration, and with the aim of improving my workflow with that and future illustrations and solving some problems I had.

dex-V2-SHORTER 1506 (x3.5 16.67fps 302 frames - 18.12s)

Main changes:

  • Added a Spritesheet exporter in the Export Tab:

    • I added some options I missed in other spritepackers, 2 different ways for exporting the spritesheet (one is meant for animated sprites), and some more things (see “Bonus” section below).
  • Added a new tab; Gamedev Tools

    • This is a tool I made for easily edit the sprites/layers’ channels in krita, in order to make some VFX with shaders later in Godot.
    • Krita has very useful filter layers for editing all layers, but “commiting” their changes into the actual layers (so you can use them later in other tools), is hard. So I made this for being able to easily encode some information in the RGB channels in all my sprites.

      I explain it better in the manual.

  • Other Changes


Bonus

This is a Godot addon (Github link) for importing the spritesheets generated by the SZK SpritePacker.

The cool thing is that it automatically recreate your krita “scene” into Godot, exactly as you you see it in Krita!

It was very useful for me when I was making that illustration above, since it contained lots of sprites (specially grass), and it helped me to avoid placing them one by one (which would have been very tedious​:skull:).

I made a litle video tutorial:

You can read more about it in its manual.


And that’s all folks! I hope I didn’t make many typos! (My eyes are about to fall!)

2 Likes

Hello @Suzuka,

and thank you for the update upgrade of your plugin! Looks like a lot of additional fun features to play with and use.

Michelist

Thank you so much for your kind words, @Michelist ! :four_leaf_clover:

1 Like

Looks really cool

1 Like

Thank you so much @EyeOdin ! :smiley:

Hello friends :four_leaf_clover:! Little update

1.3.1 Update

Mostly bug fixes, but I also added 1 little feature I’m using a lot for backgrounds and repettive elements!

Pattern Offset :left_arrow::down_arrow::up_arrow::right_arrow:

Basically, in the K-Sprite editor, when you have the dither/pattern option enabled:
imagen

You were able to draw patterns by drawing in the matrix of the Index Painting tab:

Now you can offset the pattern it by pressing the arrow keys:

I used that a lot while I was working on this drawing, but I missed that I was able to move the pattern in some places (like the balconies and their decoration, to fit propperly)

:information_source: Offseting without moving the cursor/mouse will make the new offseted pattern to filter the previous one.

This was originally a “happy (code) accident”. My original intention was to simply offset the pattern. But after playing with both approaches, I found this behaviour way more versatile and fun. Basically you can obtain tons of new patterns from a single one, just by “executing some combos” with the arrows.

Just remember that if you want to recall the original pattern with the offset applied, you just have to move the cursor a bit to redraw it.

Fixed Bugs :bug:

  • [K-Sprite] Using the bezier curve with an active selection in K-Sprite didn’t mask the curve outside the selection.
  • When changing a pattern presset (in the Index Painting tab), the SpinBox with the size didn’t update. (This was a bit tedious if you wanted to edit a presset by changing its size).
  • Fixed an error when exporting the .JSON in the Sprite Packer
    • I added a button for opening the git-page of the SZK SpritePacker Importer and I overrid by mistake a method used when saving the .JSON, and I didn’t notice :expressionless_face: (thanks to the person who reported it!)

:four_leaf_clover:

3 Likes