Is there any plan to support access pixels of the all layers?

I’m a programmer and an artist. I really interesting about developing extensions for PS to improve productivity of my artworks.

I’m using my own developed CEP panels, filter plugins(C++ with C#) and Extend Scripts.
But, I think there is not ultimate way to develop an extension for PS yet. Each thing lack other things features.

  1. Read/write the pixels to all layers. Only filter plugins can write the pixels but it is allowed for one layer.
  2. Preview/update canvas in real time such like built-in filters. The filter plugin must be a modal and the API design only considered single threaded. Additionally, cannot execute actions on the way.
  3. Load platform native module. Only filter plugin allowed. As I know, the UXP planning to support opening the filter plugin. It should also support calling common native module to improve performance and extendibility.
  4. Shortcut support. Not just opening a panel or dialog, mapping in the preference and callback a function.
  5. Calling actions faster. Finally, UXP considering about it.
  6. Open and share your sources. Your extend script’s standard APIs are pretty simple and easy to use but it is really slow in some cases such like trip layer tree. Therefore I have to re-write basic APIs by ActionDescriptors with copy/paste script listener’s output. And I wonder that ‘How can I write AD code that works exactly same with standard API does?’. But I couldn’t find any of clear/official sources.
1 Like

It has been discussed a while ago in this thread:

Good news. But it is still optional.

Not really. There are some work-arounds discussed, One way is with Generator as a getter… but not sure about a setter option. The other way is using the color sample tool pixel by pixel as a getter and the fill tool pixel by pixel as a setter. that is way too slow to be a viable option though.

Maybe it is be possible to create a C++ plugin in an .8bf file and have UXP run the .8bf file???.. not 100% sure about that.

Hopefully the getter/setter will eventually be a native option in UXP :slight_smile:

I’d seen about the sampler and selection. Yes, it is absolutely slow and not fit to use for I/O whole of layer.

The Adobe had introduced a PICA that communicates Filter Plugin and UXP. But Filter Plugin’s design is very old. There are so many newer things has been developed, opened, shared and improved till these days. But Adobe did not, I think.