Since I'm at it, I think I'll do a little thread of #Krita first impressions as I try to copy some of my existing presets from Photoshop. I have used it before, but never extensively, and there's been a new major version since. I'm also on a new hard drive, so this is essentially a clean install, what a treat.
The default theme feels nice and familiar from Tiled, is this Qt Fusion?
Opened up a template I made in PS. Works perfectly.
I can pan with MMB, fantastic <3
Eraser mode being a toggle is neat, I think most of the time this is more useful than separate Eraser/Brush modes. I will need to get used to just pressing E instead of two separate buttons though...
Opening files feels a bit slow, but I think it's just because there isn't a big fat progress bar in my face, the time's probably fine.
Two #Krita questions:
Is there a way to reset the brush size to the preset size without also resetting everything else? I often use that feature in PS.
Is it possible to set shortcuts for Brush in Eraser Mode, Brush Not in Eraser mode, so that I can quickly swap from other tools? In particular, I often need to go from selecting to erasing or painting, but in Krita it seems like I have to always keep an eye on that global eraser mode toggle.
Also love the offset UI of the Resize Canvas dialog. Clicking an anchor updates the offset, inputting a custom offset hides all the anchor points. You can drag the red box representing your current canvas size to adjust the offset too, and you can click the lock buttons to lock that dragging to respect manually-input values.
I've posted screenshots of it on the Tiled Discord, Tiled could really use this way of dealing with resizing offsets.
#Krita usability issue: Detaching the canvas causes the docker panels to get large, and they don't go back to being small when the canvas is reattached D:
If possible, the panel sizes for different detach states should be stored separately, so that their sizes don't get clobbered by detaching the canvas.
To be fair, I can't see myself ever using Detach Canvas so I won't count this against Krita xP
Ooh I can customise the toolbars o: Is it possible to add custom toolbars without scripting? I'd love to make comics and pixel art toolbars with some common brush presets for each, and then just change which toolbar is visible.
After a lot of poking around, found File > Open existing Document as Untitled Document..., which is even better than PS's Image > Document since you don't have to open and then close the base document :D I use this a lot for my daily sketches.
Oh no. Zooming with the Zoom tool seems to zoom in by some percentage rather than going in increments of 100% (and 1/2^n for zooming below 100%). Scrolling zooms in stable steps, but has a lot of useless intermediates too.
Is it possible to configure the zooming levels somewhere? I can deal with zooming out being weird, but for zooming in, having anything other than increments of 100% is a big slowdown, especially for pixel art.
In Photoshop, you can double-click the Zoom tool in the toolbar to reset the zoom to 100%, very convenient. In Krita I have to either use the dropdown, or a keyboard shortcut to go back to 100% D: Looks like I can add a button to reset the zoom to a toolbar though :D
The zoom tool icon shows a + even if you're holding Alt to zoom out with it. Made me think I had the wrong modifier xP
Speaking of zooming and modifiers: I like to zoom with ctrl+scrollwheel, and scroll vertically with the scrollwheel.
I was able to set this up in Krita too. For zooming it was trivial (add Ctrl to existing shortcuts). For scrolling, I had to add new shortcuts. I got them backwards initially, because the terminology is in terms of the "camera", so Pan Down = Scroll Up.
The panning is a lot slower than I'd like, though, not very useful. Might just have to MMB pan instead.
Panning around an image in Krita is so much nicer than in PS CS6. Quick and clean/unblurred just like CS3 and older were :>
Just noticed that I can control canvas rotation with the little circle in the status bar, neat! Maybe having rotation so easily available might tempt me to use it more.
I can tag brushes o: This should be great, I can make comics, painting, and pixel art tags and never look at my full brush list again xP
Oh, there are even Pixel Art and Paint tags already, neat :3
I'm still putting off actually importing my brushes though 🤣
This zooming thing has me a bit unhappy too :V Bonus weirdness because above 200%, it starts doubling the zoom every other level, but those intermediate levels are still odd values. 200, 282.8, 400, 565.7, 800, 1131, 1600...
I'd much rather see 200, 300, 400, 500, 600, 700, 800, 1200, 1600... I spend a lot of my time in the 600-800 range for pixel art.
Haven't actually drawn anything yet, already writing a #Krita script.
1. Wow, does even a simple script need an entire plugin file structure? In PS and Tiled, I can just toss my script file in a directory and it works D:
2. Is it possible to set the current tool via scripts? In the PS version of this script, I do some work with a selection, deselect, and change the tool to Brush, makes things seamless for me.
The answers are:
1. Yes, unfortunately. There also needs to be an .action file that includes your created actions if you want to be able to assign shortcuts to them.
2. It is possible by triggering the action associated with the tool you want, but the action names aren't documented in the action dictionary xP
Time to actually import some brush tips from PS and see if I can figure out how to make comparable brushes in Krita...
But first: this? this is good. PS only lets you apply a filter again, but it's great to have a quick way to get back to its dialog too.
Krita's Enhance > Unsharp Mask filter also seems to do a comparable job to Photoshop's Sharpen > Smart Sharpen filter for sharpening inks, though it's a little fiddlier (which is why I use Smart Sharpen and not PS's own Unsharp Mask).
Is it possible to customise the #Krita brush cursors beyond what's in the settings? I like the crosshair, but want it a little smaller.
I also can't seem to find a setting to disable the color sampler preview swatches.
There also seems to be a minor bug where the swatches aren't erased when you switch tools until something else triggers a redraw of that area, and the swatches aren't updated if you swap FG/BG colours while using the color sampler.
Krita sorts brushes (and probably other presets?) by name. This means if you want brushes to show up in a certain order, you have to give them weird names. That explains why the default brushes start with a), b), etc.
This makes reordering annoying, especially since there's no way to rename them in the Resource Manager. Tolerable, but I hope that eventually some sort of separate ordering is added so that presets can be dragged and dropped to reorder.
Contiguous and non-contiguous magic wand is two separate tools, Contiguous Selection Tool and Similar Color Selection Tool. Sensible enough, but feels like a waste of toolbox space.
Fuzziness has a minimum of 1. I'd expect the minimum setting, which requires exact matches, to be 0.
The Fill Tool has no non-contiguous mode, so if you want to replace all instances of a colour, a common task in pixel art, you have to use the Similar Color Selection Tool first, and then Fill. Not great.
The Line tool requires you to use a brush, for you have to keep a square brush around if you want to draw simple blocky lines.
Shape Tools don't work that well with such a brush, necessitating selections + Stroke Selection.
Stroke Selection is always centered, there is no option for inside or outside stroke, this makes precision strokes difficult, and sharp corners practically impossible except through the Stroke Layer Style, which does have an Inside option.
Would be nice if double-clicking the thumbnail of a layer brought up Layer Styles. Layer > Layer Style and right click > Layer Style is rather slow. Similarly, miss ctrl+click on the thumbnail to Select Opaque (Replace) and shift+ctrl+click to Select Opaque (Add), I need those often.
There's no option like PS's Fill that lowers the opacity of the layer's contents but not layer styles. For fill 0%, a white layer on Multiply works just as well, but sometimes other fill levels are useful too.
It's late, I've spent all day exploring Krita and haven't actually drawn my daily sketch yet :'D
Unfortunately my conclusion is that while PS CS6 is death by a thousand annoyances, Krita is death by a thousand UX inefficiencies. There are only a few things I need that it outright can't do, but there are a lot of common (for me) tasks that take too many clicks or require workarounds to accomplish. I can only fit so many shortcuts within reach of my keyboard-hand.
Summary of today's findings:
Actual problems: Text tool. Can't hide Color Sampler preview. Zoom tool is weird. No HSV sliders.
UX gripes: No quick click-based access to Layer Styles and Select Opaque. Can't set style opacity higher than layer opacity. Can't reorder brushes except by changing name+restarting. Can't Stroke Selection Inside/Outside. Big Undos are slow.
Misc: Incorrect tooltip for "Invert Pattern" in brush texture settings. "Select a Color" hue ring changes saturation.
It took me two days to find how to create a new Krita Brush from scratch rather than by modifying the currently selected brush preset.
I didn't notice the Presets panel in the Brush Editor because it's collapsed by default. Even after I noticed it, I didn't immediately see the big + button at the bottom (that one's on me).
The Brushes page of the manual doesn't mention anything about creating brushes from scratch that I could find, that would've been helpful :'D
This would probably be more effective if the gradient mapping was applied *prior* to any transformations to the brush, so that the gradient map is applied to the raw brush tip image, which would allow aliased tip images to be coloured without artefacts. They would then also benefit from anti-aliasing applied after colouring, which would make stepped gradients produce smoother results.
Aw, it seems I can't assign my custom zooming script to scroll wheel, so scroll wheel zoom is still the default zoom that I don't like. But when I'm using the mouse is when I most need it - for pixel art xP
The Canvas Input settings only offer a limited selection of actions you can trigger, you can't assign arbitrary Krita actions there.
I updated my brush's thumbnail, it's updated in the "Change brush preset" list in the toolbar, but not in the Brush Presets docker. I don't remember having this issue for other brushes, but maybe I didn't update their thumbnails as much.
Unrelated: It looks like there's an icon that appears on the thumbnail that indicates you've changed the size/opacity of a brush from the preset, a Steam guide informed me of what it meant. A text indicator in the brush tooltip would be helpful.
I like Krita's canvas rotation more than Photoshop's. It snaps to 15-degree intervals, which is enough granularity for just casual rotation to get a comfier angle on some strokes, but also makes it easier to get exact 90-180 degree rotations when you need them.
It's nice that I can also get back to exactly 0 rotation without having to use a reset button.
Would be nice if 1 degree increments were more easily accessible though, e.g. with shift+ctrl+ and shift+drag on the rotation indicator.
I've been using Krita daily for a week now, and I still find it to be additional cognitive load to deal with the eraser mode toggle, particularly when switching tools, but even when just painting with the brush.
Making strokes with the wrong mode and manually checking the mode after switching tools has been a surprisingly big time-waster, and breaks up the flow of drawing significantly D:
I'd really like an option where switching tools (including hitting the shortcut for the tool you're already on) will always disable eraser mode, I wonder if I can script that...
I'd put the toggle for this option in the toolbar, so I can disable it when I expect to do a lot of erasing with multiple tools in a row.
@eishiya Nope, the cursors are hardcoded pixmaps. Color samplers cannot be turned off as far as I know.
As for the swatch redraw thing, this is the first time I hear of it. I can't seem to reproduce it here in any case.
@Wolthera Maybe it's a Windows + hardware acceleration thing.
I can get used to the large crosshair, but the color sampler swatches are very annoying and block a chunk of the area I'm most interested in while sampling. Surprisingly there doesn't seem to be an issue open about that, this seems like something that really ought to have an option in the tool settings.
I'm also surprised that there's not an issue open about the zoom levels. Do people not zoom in beyond 200%? xP
@eishiya people use the program differently, I once requested someone else to make an adjustment for pixel art and they implemented it, only to read thread upon thread that nobody did pixelart like that (I am a nobody apparently). Similarly, I don't switch zoom levels that often, so when doing pixelart I just hang in 400% or 800% and don't really notice the other zoom levels.
@Wolthera Aye, workflows get pretty wild. I often toggle between 100~200% and whatever zoom I need for drawing on (600~800%), even when I'm using multiple views. The default zoom levels make that very annoying.
500% is the zoom level that's used in most of my games, so being able to get to that with a few scroll wheel clicks is pretty useful too.
Zoom levels based on root 2 are just wild to me in general. I guess it makes for a smooth-feeling zoom when you just scroll, though.
@Wolthera I thought I'd have a go at scripting a custom zoomer for funsies, but it looks like zooming is way more complicated in Krita than I thought. At some point the zoom requested by the GUI (e.g. via the status bar widget) is multiplied by values that depend on whether "Use same aspect as pixels" is enabled, plus some other value(s).
I take it there's no simple way to get at this information and that I should use my time on something more productive? xP
@Wolthera Er, for clearer context: I'm getting the value using canvas.zoomLevel().
*Setting* the zoom level using canvas.setZoomLevel() works exactly as expected, but I need to know the current zoom level to know what to set it to. setZoomLevel(2.0) or setting it to 200% via the GUI produces zoomLevel() 2.5000000000002 in print size mode, and 16.666666666668 in native pixels mode. Fun xP
@Wolthera Magic constants to the rescue 🤣 Since I have to assume one mode or the other (I assume native pixels mode), this script isn't robust enough to make public, but at least I get my lovely zoom :3
While trying to hotkey it, I noticed that while I can set + and - as the hotkeys, using them still uses the default zoom, and there's no way to unset them. I have to use Ctrl++ and Ctrl+-, which I can unset from the default zoom.
@eishiya + and - are set in the canvas input setting, so you will have to unset them there. The reason these systems are seperate is because the regular input settings have nothing for tablets but we haven't figured out how to merge them.
@Wolthera Ah, thanks! I forgot to check those settings.
And you're right about ctrl+click for Select Opaque. Tried it now and it works. It was late, maybe I wasn't using the modifier I thought I was 🤣 Thanks again!
@eishiya I just recall seeing a post from @davidrevoy concerning color sliders. Maybe this can help?
@Lyrilith I'm not using the beta, but I'm glad to see it's coming back (it was removed in 4.1). So that'll be one problem off the list come 5.1, not even a long wait. Thanks for the heads up :D
@eishiya there's an MR for the select a color thing to switch between non-changing hue ring and changing one, but it's part of a bigger MR, and that's blocked by some stuff that I have to look at, but I am working on documentation/release notes for 5.1 and the text tool, so that's going to wait a bit.
5.1 has hsv sliders.
Layer style and stroke selection stuff has never been brought up by anyone else. Maybe make a request at krita-artists.org for those?
@Wolthera The hue ring stuff is fortunately a very minor gripe. I'm glad to see it'll eventually be an option rather rather than one or the other :> Will this option affect all the colour picker rings, or just the one? I think the main thing that threw me off is that it's inconsistent, hahah.
I guess I should register on the forum now that I'm trying to actively trying to be more of a krita-artist xP Is it preferred to have one request per thread, or should I lump them into one?
@eishiya One request per thread is best. The thing is that we try to have artists discussion on stuff like this so we can figure out the precise workflow and needs. Bugtracker tends to not work for that.
Well, that's the other thing that MR is trying to fix: it's currently using separate code paths, and it should eventually use one. Just one big feature that is missing in the new code.
@eishiya yeah, we don't delete anything. The ~ files are actually backups (like, the saving consists of renaming the old file to a ~ file and then saving the current file with the name). The crash example in the manual was just me trying to find an instance where it'd be useful that wasn't 'you were dumb and saved over your working file with all layers merged'.
@Wolthera Ah, I see, makes sense! A bit annoying though - I'd like backups for crashes but not outside of that - if I goof, I'd rather live with that than have to clean up the backup files |D
Since Krita makes autosaves every few minutes, maybe I should live dangerously and without backups 👀
(I have a habit of making a copy of the current image before I flatten and shrink or make other destructive changes, so crashes during saves are my only real concern.)
@Wolthera Speaking of: Krita has File > Create Copy From Current Image, but this sets the new doc's path to the old one, so it's easy to accidentally save over it. Is there something similar that creates an Untitled Document, like File > Open existing Document as Untitled Document, but without the file browsing step?
Seems there's no scripting API for this, but maybe I can doc.clone() and newDoc.setFileName("")...
@Wolthera Oh dear.
newDoc = Krita.instance().activeDocument().clone()
causes a crash. I didn't even get to the filename weirdness yet 🤣 I thought, at worst, it would be literally the same document rather than a copy of it, didn't expect a crash.
@Wolthera Thank you!
I think this might be the shortest/simplest crashing script I've written in any program yet xP
@Wolthera Hopefully an oversight that can be fixed, and not something intentional. Not erasing the filename is rather dangerous for this kind of action, since it creates two documents saving to the same location.
The document Title is updated with "<original path> (Copy)", but the filepath remains.
@eishiya so I checked and https://bugs.kde.org/show_bug.cgi?id=348256 suggests that this is just an oversight... I've also reported a bug for that as well given the window was open: https://bugs.kde.org/show_bug.cgi?id=457081
I... am now going to go afk because the second peak of the heatwave is today and my body is noticing that...
@eishiya If you're using the widget in the status bar it has a hidden feature: as long as you rotate dragging inside the widget it snaps to 15°, however if you click the widget and then drag outside the widget, the widget switches to precise mode.
There's also shift+middle click, which is configurable in the canvas input settings, this one is only precise, there's a snapping one too but that's a different canvas input action.
@Wolthera Ah, neat! That is rather hidden though, I think modifier+drag on the widget would be easier to find xP
@Wolthera I tried the precise rotation mode with the widget today and found an issue with it: since it switches to precision mode based on your distance from the widget (looks like about 50px on my screen), in full screen, this means the precision rotation is only available for only the top half-ish of the circle (-180~0), since the cursor cannot go below the screen to stay far enough away from the widget. This means it's only fully usable windowed mode D:
@eishiya Yeah, I guess most people are using shift+middle, or the touch gesture, or the one in the overview docker or the rotation ring inside the pop-up palette.
@eishiya It's in this section: https://docs.krita.org/en/user_manual/loading_saving_brushes.html#making-a-brush-preset it's also mentioned earlier on, but that section must've gotten edited badly because it's conflating two other functions.
@Wolthera Ah, thank you. I searched for "Brushes" and I ended up in the Brushes section of the reference manual rather than in the getting started section.
Perhaps the Brushes page (https://docs.krita.org/en/reference_manual/brushes.html) could do with a link to the Loading and Saving brushes page, for people who end up there via search engine.
@eishiya uh... the ctrl+click should work...??? https://docs.krita.org/en/user_manual/selections.html#common-shortcuts-while-using-selections
@eishiya so, this was actually discussed during the massive refactor for 5.0... but by the end of the 5.0 cycle (which has taken several years at that point) we were mostly focused on getting it ready and we decided afterwards we'd all avoid resource work for a while.
Mastodon.ART — Your friendly creative home on the Fediverse! Interact with friends and discover new ones, all on a platform that is community-owned and ad-free. (翻译：DeepL)mastodon.art是艺术家和艺术爱好者的空间，而不是政治内容的空间--有许多其他的fediverse实例，你可以加入以获得更多的一般内容(而且你仍然可以从任何实例中关注你在.art上的朋友)；见https://instances.social :)