Hi Ataur Sujon,
A typical example for an premultiplied image is a layer in photoshop (transparent) and a soft brush stroke is applied. The soft-ness of the stroke has not a direct accessible alpha information. I see it sometimes in tutorials, that a CMD click on the layer will produce a layer mask (or the selection thereof), but it doesn’t prevent the double transparency problems. It certainly doesn’t create a straight alpha image! So, lots of confusion here and based on that I understand your request for an tutorial. It can drive the quality down if done wrongly.
If I understand the question/quote correctly, you need a tutorial that allows for the creation of “straight-alpha” RGB files from premultiplied files (from Photoshop transparency layer, merged to something…).
In a nutshell, just to give a little bit of information: Sometimes the “transparency” information of an RGB file is already stored and the process is called “premultiplied”. Why multiplied? The idea of transparency is normally given with the idea of an value of zero/black (=transparent) and one/white (=opaque). If the resulting value is for example 0.5 then we have a semi transparent. (I use here the term resulting, as sometimes a gamma value might change the result.)
Each R,G and B value is then multiplied with such an alpha value for transparency.
If an application expect an un-multiplied RGB image and the transparency information in a separate channel, e.g. the alpha channel, then a problem can occur if the image was already pre-multiplied. Simply said, the alpha information is then twice applied. This leads to artifacts. Typically in a seam around the image. As this is certainly not the best practice, many compositing books take on this theme. It is not trivial, but somehow even today often ignored.
The link that you quoted shows clearly that Unity needs pure RGB values, not premultiplied. Hence—premultiplied files have more information, realtime application have no interest in large files, hence the realtime idea.
So, if someone needs transparency in an object, then this is extra work for the real time engine.
To get an RGB file without that premultiplication is discussed in the tutorial inside the link.
I have explained the straight alpha vs premultiplied in the Multi-pass tutorials.
The tutorial in the link suggest to use an Action script that they provide. The action script is simple, it just creates new layers and moves them, so the problem areas of the edges become opaque again.
Alternative, you can duplicate the layer, protect transparency and fill the layer with black. Then take the original one do two copies and merge them, copy again and merge the two. Do this as often as your image has a bit depth, eight times for 8 bit or 16 times for integer images. Make an Action script, and for floating point images run it several times.
The idea is, that if the transparency was as low as “one” (0-255 for 8bit) then 2, 4, 8, 16, 32, 64, 128, 256 would be the result of eight repetitions. This should help for textures to get transparency areas opaque. The stored black layer needs one more step to work as alpha, it needs a white layer below and merged as well. Now you have both RGB and Alpha. That is the only real “procedure I found is working. In the past I had others, but I do not like to share them anymore.
All the best