An option would suit me! Can you explain what you mean by not pre-multiplying layers against each other though? The only time I can see that being relevant would be if you’re exploding a PSD file into multiple textures based on group or layer, in which case yes, you wouldn’t pre-multiply against layers that will not appear in that specific individual texture result. If we had this feature it’d save me even more work.
For the current use case in addition to individual layers PSD files also provide a flattened version of all of the visible images with the correct blends calculated, so it’s almost no work to open a PSD and write the colour and alpha to a texture. The important thing is to treat the data as pre-multiplied and not do anything to it. The issue with the current importer is that it does pre-multiplication against white. All that has to be changed to fix this is to use the data without messing with it.
The only downside to not preserving pre-multiplied data is if you choose to use your image without applying the alpha channel. Then it’ll have hard, aliased edges where before there were none. But you’d get a pretty hideous image in that case due to lack of control over the eventual background colour. In that case the material using the texture should use its alpha to blend between your image and the desired background colour. This is still a better outcome than the importer deciding that you wanted white as your new pre-multiplied background colour.
Anyway, now that it looks like we have a decent feature request I’ll put in a bug report. Sorry I was grumpy everyone.