Darktable raster paint brush | GTK4 + GPU acceleration question

I’ve always wondered why more people aren’t jumping in on vkdt if that’s the eventual successor of Darktable? So it’s because they are developing modules that will be easily ported to vkdt once it reaches a certain stage of development?

Also isn’t this trading one problem for another? Will it ever run on the systems with integrated GPUs?

Jesus Christ! I’ve just checked when the first commit was. It was just 1 year and 7 months ago and all of it done by just one guy! Hats off to that magician!

Maybe you’re right about it being usable before 5-10 years, I hope.

If you read some of @hanatos posts about it, the performance seems great. He’s a smart dude, so I have no doubts that it’ll be great. I’ll probably build a system for it when its ready to go.

1 Like

I know that vkdt will be the raw editor to rule them all but I’m dying to ditch Lightroom now and forever. Painted raster masks are literally the only feature missing from Darktable. Everything else I can live with or work around problems. But this is the one.
Once that’s done there’s no stopping it. Darktable or vkdt is a new Blender then.

I mean, I guess I’ll wait for vkdt and it will be even glorious day when I’m finally able to completely ditch Lr and claim back one of my SSDs from Windows 10.

If you need raster masks, there is gimp. I thought I’d need more percise masking too, but getting better with drawn + parametric masks has caused to to stray from DT into gimp much less than I thought.

1 Like

Let us not segway into Gimp not being non destructive problem xD

@KristijanZic
could you do me a favour and illustrate what and how you are doing with raster mask, please. Maybe with a short screencast.

Why I’m asking?
I never used LR and have very limited knowledge about Gimp. Also I wonder, same final result can’t really be achieved with existing masks and blending.

TNX

Sure, here you go:

One issue that for many scenes there is simply no way to achieve the mask parametrically. It could be done if you spend days masking it with masking curves but it would require so many that the ap would crash presumably.

There’s another issue; have you tried using a Wacom tablet with Darktable? It needs painted raster masks like a fish needs water :slight_smile:

Didn’t see your video yet, but this sentence made it clear already, because I have one and dropped it to the shelf because of no use LOL (seems I got it) :slight_smile:

(will watch vid later, tnx)

1 Like

I’ll make the video when I’m free but look at the aurelien’s one. I’ve given him my image to try to create the edit that in Lightroom takes 2 minutes. He couldn’t do it, I couldn’t either. I knew that would require painted raster masks that’s why I asked him to edit that image. Because people always think that I don’t know how to use the program or that they could do it but I can’t even tho I’ve edited thousands of images and do that for a living xD

That said, I’ve learned A LOT from this community. More then I was ever been able to when I was just a Lr user. But I’m right on this particular issue, it’s the only feature that’s missing to take over the world xP

Tht would be one of the worst reasons to implement painted masks I’ve heard so far: “I have tool X, thus my program has to be changed so I can use it”). :stuck_out_tongue:

And what’s the problem with GIMP being destructive (whatever that means)? First off, you still keep your master raw file untouched, so you can easily regenerate the input for the GIMP if needed. Then, once you get to the stage where you need the GIMP, you either have minor edits left to do (minor in that you won’t be making enormous changes in hue/tonality/saturation values), or you can export two versions to be combined in the GIMP.

I’m not saying that painted masks aren’t useful. But are they worth the trouble to implement in darktable, when they seem to go against the way dt works internally? I know many like to have all functionality they need in one program, but that’s not always the best solution…

And one other point: how should such masks be stored? you are talking about one or more gray scale raster images, potentially the same size as the underlying raw file, and specific for that raw file. That’s not a small blob you can stuff in a sidecar file…

1 Like

I like how you conveniently evaded the whole first issue which is the main point for the painted raster masks and are now throwing baseless arguments.

You clearly never edited a protograph. It’s not just an x tool. It’s the whole another level of speed, precision and ergonomic benefits that you get by using a graphics tablet. There is a reason images are not edited or retouched with the mouse on any other program.
I’m guessing you’ve never tried a graphics tablet and think that editing with a mouse is just fine, right?

Enough said, If you don’t know what that means then why are you engaging in this thread?

Do you realise what you are saying?
You want people to spend an entire day doing an edit with Dt and Gimp that could easily be done in Lr in 2 minutes with a brush tool.

Then why do we need software at all? I bet you’d be good with a terminal tool for editing images.

Or why do we need software when you can shoot film and edit in the darkroom?

There are lots o ways to achieve anything without painted raster masks, it only depends if you want your life to be 10 times easier or 10 times harder.

I don’t know, I didn’t know it went so far against it. But since you are asking, I’d say that depends on how long will it take for vkdt to reach Darktable level of maturity. If it’s more than 3 years then I’d say it’s absolutely worth the trouble to make it now in Darktable.

You can export an XMP sidecar from Lightroom that has everything stored, so that’s probably not an issue.

You misunderstood what I said. I was NOT saying a graphics tablet is useless (I use it when needed, and then it is very useful), I was saying that adapting a program to use a tool (any tool) is wrong. You do not say “I have tool x, so I need to find a way to use it”

How many definitions of “de"structive editing” have you seen lately? I know both programs, use both of them, and know what they store. The GIMP does NOT destroy your original data (i.e. the raw file), nor the input you give it, unless you explicitly ask it to do so.

Yes.

Prove it… To be clear, show me that the time requirements are that different: 8h vs. 2 min… Yes, you will spend a bit more time using two programs (if only because you have to save an intermediate file).

====================

On second thought, don’t bother, I’ll leave you discuss this with others. Enough of the partial, misinterpreted quoting and extreme claims.

I’ll prove you, I’ll edit in Lightroom, you have to reproduce the image in Dt + Gimp. Deal?
It has to be the same quality result. No weird borders or halos.

  • If you can do it in roughly same amount of time, you win.
  • If you do it in a little longer, nobody wins. I’ll even grant you this b/c I wouldn’t be even discussing if it was a trivial time difference.
  • If you need a lot longer, I win.

OOOOh?! What, what?? xP
You’ve probably seen the video and realized it’ll take a lot more than you think to do it the way you describe it.

I know because I’ve tried and tested the workflow you are suggesting. I’m not saying this stuff just because.

Darktable and Wacom doesn’t pair well. True (at least for me). Tried, failed.

I used to watch the Luminosity Landscape series ‘masters’. Generally Dodging & Burning is still heavily in use and won’t go. Experienced photographers can show you the use it. D&B with pen is quite natural, with mouse not quite.

Yes, I can mimic it in darktable and I’m used to it. Sometimes it’s just better sometimes it’s worse (for instance time consuming). I really value the way I can blur and feather the mask. But it may appear that those 2 sliders can be replaced by properly operated pen…

I know this doesn’t solve the whole issue but … I admit that I did not know that mask feathering is guided. I think it’s quite unfortunate that it isn’t communicated clearly in the interface that you do actually have “auto mask” feature in Darktable… After seeing how turning feathering up makes mask automatically adhere to edges / shapes was quite a revelation to me and it made certain edits SO much faster.

I think mask feathering should be renamed to something like context-sensitive feathering or feathering with edge detection and the tooltip should explain it a bit further… I’m so glad the feature is in there but sad that I didn’t find it before and I’ve seen so many people miss it…

Woud it be easier just keeping the vector brush (which has also some advantages like moving the nodes after painting) and implement edge detection (perhaps just moving the current feathering to the level of each stroke) and flow control ?

it does, it’s just that performance isn’t the same as on proper GPUs. i have an old laptop from 2015 with integrated intel gpu and it runs vkdt. if you’re very interested in the raster mask performance for such a setup i can dust it off and benchmark.

as a ballpark figure, for a lower end GTX1650 Max-Q laptop gpu the (guided) painting on a 24MP image takes ~14ms, total image processing in full res with demosaic, local laplacian pyramid local contrast, tone curve, etc takes 114ms per frame (those numbers go down to 4.5/50ms if you only render for the 4k screen and not the full raw).

this low performance is mostly me being lazy though. i could properly implement the low res drawing (screen res instead of full raw res) and graph cuts to only reprocess whatever is actually needed, not always the full thing (similar to stock dt). it’s just that these devices aren’t my main focus (always happy to help if someone has a use case though). and that there’s so much wrong with the usability side of things, especially for the drawn brush masks, that i’d probably first look into that.

indeed, that helps speed up things i thought :).

First of all man, thank you. You did amazing thing with the first DT, now you’re doing it again. I just hope that it will be recognized by the entire industry. Also I hope that you don’t burn out :sweat_smile:

Of course not, I’m also mainly interested for the machines with dGPU, but you can imagine that people will run it on all types of hardware once it’s out.

Like what? You mean in general, in darktable or in vkdt? And you mean vector or raster brush?

hehe thanks for the concern, will try to remember it :slight_smile:

wrong: i mean with the user interface specifically in vkdt for the raster masks. for instance it doesn’t support varying radii or opacity or hardness, you can only pick it as a constant for all strokes in the module. i suppose this would be a minor change i should do soon. this also needs some gui wiring, best with pen pressure support (that i can’t even test for lack of device). also there’s just one shortcut button that will do dodge/burn (blend a masked exposure module). if you want to paint saturation or whatnot you’ll need to wire the nodes manually.

1 Like