Photoshop: Non-destructive filter layers instead of smart-filters

  • 12
  • Idea
  • Updated 2 years ago
  • Not Planned
  • (Edited)
the smart-filter functionality should be kicked.

i want photoshop to create a filter-layer (exactly like an adjustment layer)
to be able to really edit non destructive in an easy way.

i assume it would eat up cpu to calculate filters all the time in real-time.
if so, to avoid this, integrate a freeze button:

http://feedback.photoshop.com/photosh...
Photo of Tommy Szewczuk

Tommy Szewczuk

  • 6 Posts
  • 2 Reply Likes
  • excited

Posted 7 years ago

  • 12
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 818 Reply Likes
Some apps get away with the concept on screen size images, but at higher resolutions - the computational complexity kills usability. If you do the math, you quickly figure out that live "filter layers" just can't work well on anything but tiny screen rez documents (and even then only if you use a few filters, stack more than 2 or 3 up and it gets painful to use).

Smart Filters give you the re-editability, an explicit update step (since realtime updates would kill performance and usability), and have the benefit of work on real world image sizes.
Photo of Tommy Szewczuk

Tommy Szewczuk

  • 30 Posts
  • 2 Reply Likes
well... please find a way because smart-filters are really killing the workflow!
Photo of Tommy Szewczuk

Tommy Szewczuk

  • 30 Posts
  • 2 Reply Likes
well i said nothing bad or unpolite? it`s the truth.
Photo of christoph pfaffenbichler

christoph pfaffenbichler, Champion

  • 1221 Posts
  • 170 Reply Likes
No issue with politeness, I just seem to perceive Smart Filters and/or their benefits differently.
Please forgive me being snide.

And, Mx.Cox, I hope you forgive for referring to you unnecessarily in a thread that you are involved in anyway.
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 813 Reply Likes
No problem Christoph. Yes, it is frustrating when someone confuses opinions based on a lack of information with truth.
Photo of Tommy Szewczuk

Tommy Szewczuk

  • 30 Posts
  • 2 Reply Likes
as i said, i`m not a programmer. i just don`t think smart-filters are the perfect solution ;-) if you read my messages, try to imagine me being a nice guy :) without accentuation its often hard to understand written text the right way.
Photo of dav3punk

dav3punk

  • 42 Posts
  • 5 Reply Likes
Yeah, like apply a filter the EXACT same way that you can apply a filter In After Effects. Adobe does make that app too, assuming that all Adobe apps share a common core and UI, I would think this should be "easy" but I'm willing to bet that they are a mess of legacy code.
Photo of Tommy Szewczuk

Tommy Szewczuk

  • 30 Posts
  • 2 Reply Likes
no professional digital artist or retoucher in germany i met - and i know lots - uses smart-objects regularly. because it`s not even close to user-friendly enough to fit in our workflow. it just plain stinks. the only reason to use it, is when you need to downscale images within a composing and want it to be non-destructive.

by the way - smart-filters also take ages to calculate if you use 2 or 3 of them.

i`m sure there are way better possibilities.
Photo of Tommy Szewczuk

Tommy Szewczuk

  • 30 Posts
  • 2 Reply Likes
hey christoph, i use smart-objects myself for the reasons mentioned in your link. it`s great while composing because it`s maintaining color space, vector data, and so on... all i`m saying is, smart-filters don`t kick it.
Photo of Tommy Szewczuk

Tommy Szewczuk

  • 30 Posts
  • 2 Reply Likes
i`m not saying smart-objects should be kicked. smart-FILTERS should be :)
Photo of conroy

conroy

  • 40 Posts
  • 5 Reply Likes
"Smart Filters take a while to calculate, because that's how long the filter takes to run on the size document you are using - they don't add anything to the time it would take to run them manually. It would actually be slower if you tried to use those same filters as "filter layers", and if you tried to work under the filter layer, it would be painfully slow (or just offer a bad UI by disabling and re-enabling the filters all the time). "

Smart filters could run hundreds to thousands of times faster if Photoshop updated its ancient filters to alternatives being evaluated by the GPU. There are other applications which do utilise the GPU to provide multiple stacked filters with which you interact with no perceptible lag, whereas Photoshop has to disable upper filters while you adjust one within the stack and then takes up to several seconds to refresh the image.

Even working with a single filter (except the recent introductions which are GPU-based) in standard non-Smart mode, Photoshop is a cross between a dinosaur and a sloth. There are alternative apps costing under $50 which make Photoshop look pitiful (in both performance and provided controls) when it comes to filters other than those which Ps does implement via the GPU - Liquify and Shift-Tilt Blur, for example, which are excellent.
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 813 Reply Likes
No, use of the GPU has nothing to do with this.
And "filter layers" as a concept only work for trivial filters on small images before the computation costs explode. That math doesn't change with the GPU, it just makes the explosion a small percentage less painful.

And because we allow third party filters, not all filters will be using the GPU. Also, many of the existing Photoshop filters would run slower on current and forseeable GPUs because of the operations being used.

Sorry, but GPUs are not a panacea. They have their own problems, and they don't solve the basic math involved here.
Photo of conroy

conroy

  • 40 Posts
  • 5 Reply Likes
I never tried to suggest that GPUs are a panacea. My post was truthful in what it actually does say.
Photo of Tommy Szewczuk

Tommy Szewczuk

  • 30 Posts
  • 2 Reply Likes
okay - i believe you've tried. but if i add smart-objects to my files the get slow as hell. and this is a common problem all retouchers i know have. everyone is like: oh there are smart-objects in there, thats why.
Photo of Tommy Szewczuk

Tommy Szewczuk

  • 30 Posts
  • 2 Reply Likes
and nearly all of the books by your so called professionals with photoshop secrets and great professional stuff are lame. for most of the stuff they hype, there are better, faster easier ways that are used in professional businesses. nobody thinks smart-objects are user-friendly. graphic designers use them a lot i heard. but not retouchers. i know nearly every single professional retoucher in germany by name - i talked to nearly all of them because i started writing a book about how people use photoshop in such different ways creating their own techniques - and i wanted to pick the best workarounds for this book. i have no chapter about smart-objects.
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 814 Reply Likes
Retouchers use them quite frequently. Just because some of your acquaintances have no knowledge, or misinformation, about Smart Objects - that doesn't make them bad, just poorly understood.
Photo of Tommy Szewczuk

Tommy Szewczuk

  • 30 Posts
  • 2 Reply Likes
no don`t get me wrong we use smart-objects for the reasons i mentioned before - i mean smart-filters! we all know them, we`ve all tried them they just don`t fit in our workflow. maybe american retouchers have a different approach :-) ha
Photo of Tommy Szewczuk

Tommy Szewczuk

  • 30 Posts
  • 2 Reply Likes
adobe doesn`t even mention retouchers on their website as their target/user group :-)))
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 814 Reply Likes
Nor do we mention all the other 300 known market segments....
Photo of Edward

Edward

  • 92 Posts
  • 22 Reply Likes
This reply was created from a merged topic originally titled
Effect Filters / Adjustment Layers for effects.


In the same way you can create filters to change level, brightness, color, etc, it would be great to be able to create filters that apply effects such as blur, sharpen, etc. With masking it would be a great way to losslessly retouch photos and apply depth/soft focus to illustrations.

Photo of christoph pfaffenbichler

christoph pfaffenbichler, Champion

  • 1232 Posts
  • 177 Reply Likes
As Mr.Cox has explained (might have been in another thread) Adjustment Layers can work fast because the calculate their effect for each pixel based on that pixel’s values alone, Filters on the other hand can derive the resulting values for a pixel from a huge number of (other) pixels, so the task is much more complex and does not lend itself to a Filter Layer implementation easily.
Photo of Edward

Edward

  • 92 Posts
  • 22 Reply Likes
Thank you for merging this Chris.

I think this would be very powerful and helpful even if there's a "slow" responses, and even if there needs to be a "render" button or sorts.

Just like when you try to resize a smart object with smart filters and it warns you that the smart filters won't display until the transformation is done, the same could apply when you move a layer under the adjustment layer.
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 818 Reply Likes
We actually tried the idea at one time.. and prerelease users used a lot of expletives and creative invective to describe how slow and unwieldy it was.
It's not just slow, it's too EXPLITIVE slow to use.
Photo of fezzinate

fezzinate

  • 4 Posts
  • 2 Reply Likes
This reply was created from a merged topic originally titled PHOTOSHOP - Pixel Bender adjustment layer.

Adjustment layers are one of the most powerful tools in Photoshop.  I love them, but they have a pretty limited selection.  As a game developer I have often come across the need for the ability to write my own to accomplish my goals more efficiently - specifically with the ability to see the results of the filter in real-time like adjustment layers.  Use cases include visualizing/authoring texture channel data for shaders, or a real-time indexed palette filter (as described in my blog http://danfessler.com/blog/hd-index-painting-in-photoshop)

My suggestion is to create an API to create custom adjustment layers.  It turns out Adobe has already done quite a bit of the legwork with pixel-bender.  If there were a new adjustment layer type that accepted pixel bender files, then this would be a perfect solution (and is GPU accelerated to boot)

would this be a reasonable feature?
Photo of fezzinate

fezzinate

  • 4 Posts
  • 2 Reply Likes
Hey Chris, thanks for the response in the other thread.

"1) No, you can't have filters as adjustment layers, the math just doesn't work in the user's favor (i.e.: too slow to be useful)"

I understand that filters would be too slow, which is why I didn't request filters (also why it doesn't make sense to merge my topic with this one, I read up on previous posts regarding smart filter requests).  This feature would need to be it's own API independent of filters that operate purely on individual pixels within a single pass given provided inputs.  This would have the same performance footprint as any other adjustment layer.

"2) PixelBender is gone and will not be coming back."

The former is why I suggested PixelBender specifically - it meets the performance criteria and can be limited to single-passes.  I'm not sure of the reasons why pixel bender died, it sounds unfortunate, but the premise of my suggestion still stands.  If not Pixel Bender, then simply a dedicated API that has limitations which favor performance would suffice.

Would this approach to the problem resolve any technical resistance to adding such a feature?

thanks!
-Dan
(Edited)
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 813 Reply Likes
It is basically the same request.
No, PixelBender is still a filtering operation and cannot be used like an adjustment layer - the performance would be horrid.

An adjustment layer API might be possible, but not easy. We've shown some third party developers the limitations we have to live with to keep high performance and stability - and they had a lot of trouble trying to understand and deal with those limitations.
Photo of fezzinate

fezzinate

  • 4 Posts
  • 2 Reply Likes
You would definitely know more about pixel bender's performance limitations than I would but my understanding of it was it was basically a fragment shader language whose very purpose is generally for high performance real-time redraw via the GPU which I'm quite familiar with (hello from the Zynga building from across the street). As with any tool though, you of course can abuse it past the point of usefulness if you're careless.  This even includes the existing tools in photoshop of course.  But discussion about pixel bender is moot I suppose because, as you've mentioned, it's dead.

In any case, I would absolutely LOVE to see a dedicated API for this.  I can think of many applications - even with the limitations.  Every year or so I check to see if one exists and am disappointed.
(Edited)
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 813 Reply Likes
Pixel Bender was a GPU library.  Real-time was not really part of it's design, and it was a very general filter system.

If you're in San Jose, we could meet and go over more of the "it's more complex than you think" details.
Photo of oscar losan

oscar losan

  • 89 Posts
  • 6 Reply Likes
Solution: applying filters to folders or as in adjustment layers
Smart objects is slow. You need to be grouping into smart objects to apply the same effect.
Adobe we need more productivity. This solution would be great.
Photo of oscar losan

oscar losan

  • 89 Posts
  • 6 Reply Likes
This program uses smart objects directly without having to convert each image. Also uses non-destructive layer filters that affect more than one layer. He also has a layer mask for each filter.
Photo of oscar losan

oscar losan

  • 89 Posts
  • 6 Reply Likes
I like photoshop, but AP is incredible in its first version. I also like its Price.
Photo of Rayek Elfin

Rayek Elfin

  • 13 Posts
  • 7 Reply Likes
Yup, PhotoLine has also been applying live filters to layers without the need for smart objects for years and years now.

However, Chris Cox is correct in stating that at a certain point of complexity live filters do slow down things. At that point smart objects can alleviate performance bottlenecks in your layer stack. Affinity Photo does not yet support smart objects. PhotoLine does, which gives it the best of both worlds.