not a request - but does Pixelitor have a roadmap for adjustment layers/editable filters? #219
Replies: 42 comments 5 replies
-
Yes, adjustment layers are planned, in fact I once half-implemented them. I don't know which proprietary image editors you mean. In Photoshop adjustment layers are filters that automatically run every time when the image has to recalculated (because some other layer changed). For this reason Photoshop allows only a small number of fast filters to be used as adjustment layers - everything would become slow, if a slow filter was allowed as an adjustment layer. What you describe here seems to be more similar to Photoshop's "smart filters" and "smart objects". These "smart filters" don't have to run every time, because the "smart objects" behave like regular raster layers, their result is saved in memory, and the filter has to run only when the "smart object" is edited. This way a "smart object" can have any number of slow "smart filters" without slowing everything down. Something like this is also planned. |
Beta Was this translation helpful? Give feedback.
-
Wow, I am surprised to hear that. I didn't want to request AL because Gimp is at a up hill battle to do it, and I figured a project like Pixelitor had no chance. I was referencing some old commercial software from archive.org. It was not Adobe and it only had "smart object like" adjustment layers. You could not ever draw on the filter unless you make everything raster. I though smart objects have to do with things like Gimp's unified transform, 3d transform, and perspective transform being instructed to put an image on a transformation and then evoking the original non-modified image to edit it. However, I guess I mis-defined smart objects. But yeah it does like that. I am aware certain slow filters would be costly. Gimp has had adjustment layers planned since the year 2000 and still has failed to implement them outside of weird tricks with GEGL graph. If you beat Gimp at AL I will be insanely impressed. |
Beta Was this translation helpful? Give feedback.
-
Slow filters would be costly with always-running adjustment layers, but not with smart objects/filters. A smart object is essentially another (potentially multi-layer) composition inside the main composition, but one that behaves as a regular raster layer as long as the smart object itself is not edited. By behaving as a regular raster layer I mean that its output image is not recalculated all the time (when editing other layers), it's cached. Smart objects can have a lot of different benefits, for example (1) they can have "smart filters", which are also not recalculated all the time, because their output can be included in the cached image (2) the original non-modified image can be edited non-destructively, when the smart object itself is edited (what you said) (3) the embedded composition can reference a (potentially multi-layer) image on the disk (4) multiple smart layers can reference the same hidden composition (but with different smart filters they could look different). The downside is that the concept of a "smart object" is hard to explain, I guess many Photoshop users don't fully get it. Krita has instead "file layers", "clone layers", "transform masks" and "filter masks", which basically try to reproduce the benefits of "smart objects" in other ways, but I'm not sure that these concepts are less confusing. Neither adjustment layers nor smart objects/smart filters should be hugely difficult goals. I don't know what takes Gimp 20 years, but other image editors did implement them. They are planned for Pixelitor 5.0.0, but maybe I can create a basic implementation of smart objects (that would cover your current needs, like described in the original post) very soon. |
Beta Was this translation helpful? Give feedback.
-
Gimp is a sad story. It is open source software that has very good options for photography, healing, inpainting, matting, transformation, warp deformation, but lacks the critical feature that makes everything work. "adjustment layers". It is basically like using image editing software from the early 2000s except with a few modern tools. Gimp has serious professional design options but almost everything you do is 100% committal/destructive Here is an example of the adjustment layer like system in Gimp. it is basically chaining multiple GEGL filters together. |
Beta Was this translation helpful? Give feedback.
-
I checked in a version (db7f7c0) which should enable the basic nondestructive workflow described in the original post.
The biggest limitation is that although the smart objects can be saved to pxc files and they can be reloaded from them, there is no guarantee that future versions of Pixelitor will still be able to open these pxc files, because as I add more features to smart objects, I will probably organize the internals differently. So if you want to save as pxc, you might also want to save a copy of the jar that can open these files. Another caveat is not to use the functionality under the Image menu (Resize, Flip...) or cropping while one of the layers is a smart object, because this isn't implemented yet. It might seem to work at first, but unexpected things would happen later. For now you have to decide the size of your image before or after using smart objects. |
Beta Was this translation helpful? Give feedback.
-
Amazing. Here is an example of Pixelitor's smart objects in application. |
Beta Was this translation helpful? Give feedback.
-
My second test of Smart objects This is amazing because I don't have to commit to my editing. Now I have a valid reason to use Pixelitor's pxc format What I usually do is make a bunch of renders and save my favorites. |
Beta Was this translation helpful? Give feedback.
-
the pxc files stop working for an unknown reason. They don't reopen sometimes and I don't know what triggers it. |
Beta Was this translation helpful? Give feedback.
-
https://cdn.discordapp.com/attachments/640348421437521943/881647241729810492/smart_object_NEW.pxc Here is an example of a pxc file that will not open |
Beta Was this translation helpful? Give feedback.
-
Here is the original file I showed in my edits. It has some errors that occur with the pixelize filter. Maybe you can trouble shoot it. |
Beta Was this translation helpful? Give feedback.
-
https://cdn.discordapp.com/attachments/640348421437521943/881723613265420288/smart_test.pxc Here is another. It does not open . https://streamable.com/jchv8m |
Beta Was this translation helpful? Give feedback.
-
I committed a new version which should fix these problems. The pxc format is still compatible, so you should be able to open the pxc files with smart objects saved yesterday, including the files that didn't open until now. A small new feature is that smart objects' names automatically get a "smart " prefix during conversion ("layer 2" becomes "smart layer 2"), and if they still have this prefix during rasterization, they lose it. This makes it easier to see if something is a smart object. I didn't use underscores, because it should be perfectly safe to use spaces in layer names. Layer names have no impact on the functionality, you can still use any layer name you wish, this is just a default. |
Beta Was this translation helpful? Give feedback.
-
The smart object filter loses its ability to access normal filter presets after Pixelitor is closed. a JH in front of the filter's title name is also present. |
Beta Was this translation helpful? Give feedback.
-
okay, all the pxc files appear to open now in the new 4.30x beta. It would be cool if a key binding like ctrl shift E opened the smart object filter edit. Instead of having to click on a tiny thumbnail and select. Or the ability to change filters without rasterizing again. These things seem to be giving pixelitor a ton of new depth. |
Beta Was this translation helpful? Give feedback.
-
I was trying to duplicate a radial waves smart object and got this error ` Message: |
Beta Was this translation helpful? Give feedback.
-
yes, I understand what gradient overlays are. They will be an enormous buff. I will have to tinker to understand the concept of color layers. |
Beta Was this translation helpful? Give feedback.
-
Program Error Message: |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
The newest commit adds experimental gradient fill layers, which are a kind of nondestructive editing for gradients. Currently a gradient fill layer can be added using the Layer menu (Layer/Gradient Fill/New Gradient Fill Layer), or with the shortcut Ctrl-G. They are created a bit differently from text layers and color fill layers because when added, there is no dialog window which doesn't let you do anything until you set the contents of the new layer. Instead, an "empty" gradient fill layer is created and the Gradient Tool is activated, and you should create a gradient using the normal controls of the gradient tool. As soon as the layer is fully created (it's not "empty" anymore), a layer icon also appears. Gradient fill layers can also be edited later simply using the gradient tool. Selecting one of the gradient fill layers automatically activates the gradient tool, and if the layer is not "empty", then the gradient tool loads the settings (the tool settings, the foreground/background colors, and the gradient arrow) from the layer, so in a way the gradient fill layer also acts as a preset for the gradient tool in addition to rendering a gradient. A known limitation is that undo/redo doesn't work yet with gradient fill layers (and other experimental features). |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
Here is the tool in action. |
Beta Was this translation helpful? Give feedback.
-
I found two bugs but no error message is displayed Gradients are not rasterized correctly when exported to ORA. This makes it tedious for Gimp to share a workflow. I know the gradients can't keep non-destructive editability in ORA, but they should at least appear so Gimp and Krita can work with the image. Ctrl G sometimes does nothing. I have no idea why. |
Beta Was this translation helpful? Give feedback.
-
After the last "small improvements" commit, files saved in ORA format contain rasterized versions of text layers, smart objects, color fill layers, and gradient fill layers. The layer masks are also applied to these rasterized images, so even if the ORA format can't have layer masks, their effects are there, and everything should look the same in Gimp. I'm surprised about Ctrl-G not always working, because this is a menu shortcut, and they usually work. Are other menu-based shortcuts (like Ctrl-N) working when Ctrl-G doesn't? (if not, also make sure that the Pixelitor window is the active one) |
Beta Was this translation helpful? Give feedback.
-
NM, the key is working. I was hitting ctrl H without realizing it. lol |
Beta Was this translation helpful? Give feedback.
-
With the latest commit, now there's undo while using gradient fill and color fill layers. If something doesn't work, please report it as a bug. Also there's an improvement to the undo system (just contributed by Anirudh Sharma): for some kinds of changes ("lightweight edits") there's practically unlimited undo (independently from the undo level set in preferences, which is just a minimum level now). Changing the gradient fill and color fill layers is "lightweight" (storing the undo information doesn't require much memory), so you can have hundreds of such edits, and still go back in time to the beginning. |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
The latest commit should fix the darkening of the "foreground to transparent" gradients. |
Beta Was this translation helpful? Give feedback.
-
wow. I didn't expect it to be fixed. Yeah, back in like the early 2000s (long before I used Gimp or computers) Gimp had that bug and it was infamous. |
Beta Was this translation helpful? Give feedback.
-
These two files were saved with smart objects and gradient fills but fail to reopen https://cdn.discordapp.com/attachments/640348421437521943/888879840281886770/pixelitor_best.pxc |
Beta Was this translation helpful? Give feedback.
-
Sadly what I wrote on 29th of August is still true, and will be true until 5.0.0 is released: pxc files containing experimental features are not guaranteed to reopen, and therefore if you do serious work, it's best to save the Pixelitor jar file that you used for creating them together with the pxc (or save as ora). I can modify the code so that a particular file opens again, but then other pxc files will be broken... I can convert such files to ora (by temporarily tuning the source code for a particular file), I am attaching the converted "pixelitor_best" (you wrote about two files, but attached only one). If you send other files, it should be easy for me to convert them, I just can't modify Pixelitor in a way that it opens any older file. You can also send file by email (my address is in the About dialog), if you don't want to attach them here. Sorry for the trouble! BTW, if you use discord (as your link suggests), then feel free to join the Pixelitor discussions there: https://discord.gg/SXaxYnBSTv |
Beta Was this translation helpful? Give feedback.
-
Certain proprietary image editors do a trick to get limited adjustment layers. They have filter layers that are locked from manual raster editing. (Such as Pixelitor's text layer) but a given filter can still be applied or opened later for adjusting.
https://streamable.com/scjuvq
I am using ctrl alt F to evoke the starburst filters last setting. The starburst layer would be treated as a "filter layer" and it would not permit multiple filters or raster editing on that layer. But the filter can always be tweaked or "adjusted".
Would something like this be possible in Pixelitor? I'm just asking out of curiosity.
Beta Was this translation helpful? Give feedback.
All reactions