Suggested improvements for channel handling and packing in PhotoLine

Hier diskutieren die Betatester von PhotoLine untereinander und mit den Entwicklern
User avatar
Herbert123
Mitglied
Posts: 2370
Joined: Sat 12 May 2012 21:38

Suggested improvements for channel handling and packing in PhotoLine

Post by Herbert123 »

Throughout the years of working with PhotoLine and working in game dev, the way PhotoLine handles channels can both be super easy, or incredibly frustrating.

On the one hand having channels directly available in most tools is a time-saver. And it allows for non-destructive channel handling, which is brilliant.

Yet the other side of the coin is having to deal with PhotoLine's obstinate refusal to work directly with the channels in the Channel panel and the lack of an alpha channel displayed in the channels - those things can drive me up the wall at times. And there are inconsistencies in how PhotoLine works with channels because of this.

For example, the ALPHA channel is referred to everywhere in the tools. But when the user checks the channels, that alpha channel is nowhere to be seen! :shock:
channels.jpg
The user does get a "special channel" when a mask is selected. But that is quite confusing, in particular because every single other major image editor ALWAYS represents the overall transparency as an Alpha channel.

As can be seen in the above mockup: a preferred solution would be to display the Alpha channel and display the selected mask as a "Selected" channel - because that is what is happening: a mask is selected. So a selected mask channel.

Editing a channel can be a joy but also a trial in patience in PhotoLine. It is great that we often do not need to work directly in the channel panel, and merely select the channel to work in via the tools or adjustment layer settings.

But larger edits of these channels is frustrating:
- it is not easy to copy and paste parts/selections/lassos of channels to other channels. It requires a lot of steps. The lasso tool does not work with individual channels like other tools do.
- it is not easy to copy and paste a channel from another file into a channel of the current file. The user will have to use the Change Channels dialog for that.
- not all tools have channel tools options: the selection tools miss these.

Another missing part is custom channels in PhotoLine. Yes, we can define spot colours. But it is not easily possible to create a custom channels for various purposes in print and game design, because PhotoLine's channel design doesn't accommodate for those easily. That is also why custom channels are loaded as regular layers. There is no clear distinction between custom channels as they are understood and used in the print and game dev industries and "layers" in PhotoLine.

Loading image files with multiple custom channels results in these channels to be converted to regular layers.
I still haven't figured out a way in PhotoLine to save the same file with these channels intact. There probably is a way, but if there is it is obscure.

In short: the workflow becomes arbitrarily harder because of this. And complex to understand.

For example, suppose I want to pack channels. Channel packing is a standard technique in game design/development: instead of using separate texture image files that comprise a material for texture mapped 3d objects, different texture maps are placed in a specific RGB channel.

The orm standard for this works like follows:
  • The Base Color, Normal, and Emission textures are saved as individual files (as TGA, PNG, or BMP)
  • The Ambient Occlusion, Roughness, and Metallic textures are saved in a single channel-packed texture to reduce the number of texture loads.
This image explains how the standard works:
Image

Ideally I'd just be able to simply copy and paste these image maps into one of the channels. Show only one channel, paste into it in the view. Make selections of parts of images, and paste those directly in the channels.

And I do use the Change Channels command a lot, but it seems to break when I try to copy 16bit greyscale images into a RGB file. It doesn't always want to work. Simply copying and pasting data from and to channels would make life a thousand times simpler :)

Some suggestions how channel handling would become a joy to work with would be:

Essential:
  • Allow for direct copy and paste from and in channels between files, etc. when only that one channel is visible/active.
  • When only one or a limited number of channels are active in the channel list, automatically switch all tools (that allow for it such as drawing and selection tools, and tools with channel options) to work with those channels instead of requiring the user to manually switch to those channels in the tools.
Important:
  • Add an Alpha channel to the channel list.
  • Edit individual channels directly with the core tools when one channel is active and displayed.
  • Improve file export support for these custom channels.
Nice to have:
  • The ability to create custom channels in the channel panel.
  • Save selections as a custom channel
If nothing else, I'd just want to be be able to copy and paste stuff between channels directly.
You do not have the required permissions to view the files attached to this post.
/*---------------------------------------------*/
System: Win10 64bit - i7 920@3.6Ghz, p6t Deluxe v1, 48gb (6x8gb RipjawsX), Nvidia GTX1080 8GB, Revodrive X2 240gb, e-mu 1820, 2XSamsung SA850 (2560*1440) and 1XHP2408H 1920*1200 portrait
User avatar
Herbert123
Mitglied
Posts: 2370
Joined: Sat 12 May 2012 21:38

Re: Suggested improvements for channel handling and packing in PhotoLine

Post by Herbert123 »

Just discovered a really simple method for channel packing: add each texture map as a layer, then set the correct Channel option in the layer properties.

So that solves that part.

It doesn't change the overall argument: custom channels and copying/pasting data between channels is still really awkward to achieve. And the lack of a Alpha channel is very confusing. So hopefully those things can be improved.
/*---------------------------------------------*/
System: Win10 64bit - i7 920@3.6Ghz, p6t Deluxe v1, 48gb (6x8gb RipjawsX), Nvidia GTX1080 8GB, Revodrive X2 240gb, e-mu 1820, 2XSamsung SA850 (2560*1440) and 1XHP2408H 1920*1200 portrait
User avatar
Hoogo
Betatester
Posts: 4106
Joined: Sun 03 Jul 2005 13:35
Location: Deutschland

Re: Suggested improvements for channel handling and packing in PhotoLine

Post by Hoogo »

Once upon a time I imagined 2 things:
- Open a layer to see its channels, like you open a group to see its layers.
- Have an "output filter" that changes the output to screen with filters that help retouching. Showing channels would be an option, but also false colors, tonal range, frequency stuff... But some adjustment layers on top of teh document can do that, too.
----------------
Herr Doktor, ich bin mir ganz sicher, ich habe Atom! /Doctor, doctor, I'm sure, I've got atoms!
Martin Huber
Entwickler
Entwickler
Posts: 4249
Joined: Tue 19 Nov 2002 15:49

Re: Suggested improvements for channel handling and packing in PhotoLine

Post by Martin Huber »

Herbert123 wrote: Fri 30 Aug 2024 23:44 Yet the other side of the coin is having to deal with PhotoLine's obstinate refusal to work directly with the channels in the Channel panel and the lack of an alpha channel displayed in the channels - those things can drive me up the wall at times. And there are inconsistencies in how PhotoLine works with channels because of this.

For example, the ALPHA channel is referred to everywhere in the tools. But when the user checks the channels, that alpha channel is nowhere to be seen! :shock:

(...)

The user does get a "special channel" when a mask is selected. But that is quite confusing,in particular because every single other major image editor ALWAYS represents the overall transparency as an Alpha channel.
Really? IIRC Ps doesn't show a merged alpha channel of a document, and it also shows layer masks as "special" channel.
Herbert123 wrote: Fri 30 Aug 2024 23:44 As can be seen in the above mockup: a preferred solution would be to display the Alpha channel and display the selected mask as a "Selected" channel - because that is what is happening: a mask is selected. So a selected mask channel.
24.40B19 shows a combined alpha channel. However, I don't understand your point with the "Selected" channel. If the active layer is a layer mask, the corresponding channel is already selected. Do you mind the naming?
Herbert123 wrote: Fri 30 Aug 2024 23:44 Editing a channel can be a joy but also a trial in patience in PhotoLine. It is great that we often do not need to work directly in the channel panel, and merely select the channel to work in via the tools or adjustment layer settings.

But larger edits of these channels is frustrating:
- it is not easy to copy and paste parts/selections/lassos of channels to other channels. It requires a lot of steps. The lasso tool does not work with individual channels like other tools do.
- it is not easy to copy and paste a channel from another file into a channel of the current file. The user will have to use the Change Channels dialog for that.
- not all tools have channel tools options: the selection tools miss these.
If I understand your orm picture correctly, your original data are gray pictures and you combine them to RGB. I might not understand that completely, but isn't it rather complicated to work with this combined RGB image? Wouldn't it be much easier to work with the gray images (or groups of layers that make up the gray image) and only combine them into an RGB image in the final step before exporting it?
Herbert123 wrote: Fri 30 Aug 2024 23:44Another missing part is custom channels in PhotoLine. Yes, we can define spot colours. But it is not easily possible to create a custom channels for various purposes in print and game design, because PhotoLine's channel design doesn't accommodate for those easily. That is also why custom channels are loaded as regular layers. There is no clear distinction between custom channels as they are understood and used in the print and game dev industries and "layers" in PhotoLine.

Loading image files with multiple custom channels results in these channels to be converted to regular layers.
I still haven't figured out a way in PhotoLine to save the same file with these channels intact. There probably is a way, but if there is it is obscure.
PhotoLine doesn't support custom channels.
There isn't a problem with printing, because PhotoLine's handling of spot colors is compatible with printing/PDF.

I don't know the gaming industry, though.

But below you name TGA, PNG and BMP which don't support custom channels.
So how do you use custom channels?
Herbert123 wrote: Fri 30 Aug 2024 23:44In short: the workflow becomes arbitrarily harder because of this. And complex to understand.

For example, suppose I want to pack channels. Channel packing is a standard technique in game design/development: instead of using separate texture image files that comprise a material for texture mapped 3d objects, different texture maps are placed in a specific RGB channel.

The orm standard for this works like follows:
  • The Base Color, Normal, and Emission textures are saved as individual files (as TGA, PNG, or BMP)
  • The Ambient Occlusion, Roughness, and Metallic textures are saved in a single channel-packed texture to reduce the number of texture loads.
(...)

Ideally I'd just be able to simply copy and paste these image maps into one of the channels. Show only one channel, paste into it in the view. Make selections of parts of images, and paste those directly in the channels.
As I said before: Isn't working with 3 gray images much easier? And then combining and exporting them. A script may be helpful there.
Herbert123 wrote: Fri 30 Aug 2024 23:44And I do use the Change Channels command a lot, but it seems to break when I try to copy 16bit greyscale images into a RGB file. It doesn't always want to work.
It worked with my tests here. When you have a reproducible test case, you can send us the details.
Herbert123 wrote: Fri 30 Aug 2024 23:44Simply copying and pasting data from and to channels would make life a thousand times simpler :)

Some suggestions how channel handling would become a joy to work with would be:

Essential:
[*] Allow for direct copy and paste from and in channels between files, etc. when only that one channel is visible/active.
Currently the Pate command doesn't directly paste in an image. You can just paste a new layer and merge it with active one. Only Change Planes can directly paste to a channel.
So your proposal is to create command, that does the same as Change Planes with the source set to the clipboard, but does automatically set the destination to the channel(s) selected in the Channel List?
Herbert123 wrote: Fri 30 Aug 2024 23:44[*] When only one or a limited number of channels are active in the channel list, automatically switch all tools (that allow for it such as drawing and selection tools, and tools with channel options) to work with those channels instead of requiring the user to manually switch to those channels in the tools.
Doesn't it already work this way?
Herbert123 wrote: Fri 30 Aug 2024 23:44Important:
[*] Add an Alpha channel to the channel list.
Implemented in 24.40B19.
Herbert123 wrote: Fri 30 Aug 2024 23:44[*] Edit individual channels directly with the core tools when one channel is active and displayed.
I don't understand this. What are the core tools?
Herbert123 wrote: Fri 30 Aug 2024 23:44[*] Improve file export support for these custom channels.
As I wrote above: The file formats you mentioned do not support custom channels. So what's the meaning of these custom channels and how do you want to export them?
User avatar
Herbert123
Mitglied
Posts: 2370
Joined: Sat 12 May 2012 21:38

Re: Suggested improvements for channel handling and packing in PhotoLine

Post by Herbert123 »

Hi Martin,

I will respond to your questions in the upcoming week, but I am overwhelmed by work at the moment, and I'd like to sit down and take time to answer them.

Cheers!
/*---------------------------------------------*/
System: Win10 64bit - i7 920@3.6Ghz, p6t Deluxe v1, 48gb (6x8gb RipjawsX), Nvidia GTX1080 8GB, Revodrive X2 240gb, e-mu 1820, 2XSamsung SA850 (2560*1440) and 1XHP2408H 1920*1200 portrait
User avatar
Herbert123
Mitglied
Posts: 2370
Joined: Sat 12 May 2012 21:38

Re: Suggested improvements for channel handling and packing in PhotoLine

Post by Herbert123 »

...and we're back! :D

It's been a while since I started this thread - just encumbered with work and daily stuff.

I figured out a workflow that mostly works.

Here is an example of how texture packing works for a game texture:
.
Image
.
I'd like to recreate the top example: metal, ao, decals, and mask, and save to a PNG (or TGA, Tiff, etc).
.
2025-0~2.jpg
Which all works fine for the three first channels R, G, and B. Really well, as a matter of fact! :D I can create placeholders out of each to work on the textures individually and this master packed texture map file will update with the changes without me having to re-create the packed texture.

One point scored for PhotoLine! 8)

...now I'd like the top layer to affect the ALPHA CHANNEL only. So I activate the A channel only.
.
no_alpha.jpg
.
...But nothing happens!? Where is my alpha channel? Why doesn't it affect the overall transparency?

R, G, and B work as expected. Yet the A channel doesn't. Which I do not understand. It seems in PhotoLine the A channel merely functions as a 'protect underlying transparency" True/False switch.

I also tried various tricks to force an alpha channel (which according to you Martin was added to 24.40B) by setting the top Decal mMask layer to a clipping mask:
.
alpha02.jpg
.
Which still doesn't work.

So my questions: why doesn't that layer (set to A only) affect the alpha (transparency) channel just like the R,G, and B ones? More importantly: Where is my alpha channel in the Channels list?

Finally: How do I get PhotoLine to store that top layer's information in the alpha / transparency channel?
You do not have the required permissions to view the files attached to this post.
Last edited by Herbert123 on Thu 27 Feb 2025 08:11, edited 1 time in total.
/*---------------------------------------------*/
System: Win10 64bit - i7 920@3.6Ghz, p6t Deluxe v1, 48gb (6x8gb RipjawsX), Nvidia GTX1080 8GB, Revodrive X2 240gb, e-mu 1820, 2XSamsung SA850 (2560*1440) and 1XHP2408H 1920*1200 portrait
User avatar
Herbert123
Mitglied
Posts: 2370
Joined: Sat 12 May 2012 21:38

Re: Suggested improvements for channel handling and packing in PhotoLine

Post by Herbert123 »

Here is the demo file for those who want to play around with it.

https://gofile.io/d/ElVUv1
/*---------------------------------------------*/
System: Win10 64bit - i7 920@3.6Ghz, p6t Deluxe v1, 48gb (6x8gb RipjawsX), Nvidia GTX1080 8GB, Revodrive X2 240gb, e-mu 1820, 2XSamsung SA850 (2560*1440) and 1XHP2408H 1920*1200 portrait