Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

How to save a png, from Photoshop, with Alpha Channel?

Discussion in 'General Graphics' started by moosefetcher, Oct 14, 2016.

  1. moosefetcher

    moosefetcher

    Joined:
    Sep 23, 2015
    Posts:
    74
    Hi there. I'm trying to make a threadbare carpet material so I don't want any specular reflection.
    I've been searching the Adobe Photoshop pages (and google) for an explanation, without luck. I've even downloaded an old 'Super PNG' plugin, which also hasn't worked.

    This Unity page...

    https://docs.unity3d.com/Manual/shader-NormalSpecular.html

    ..says 'the alpha channel of the main texture acts as a Specular Map'. I have tried, in Photoshop, to add an alpha channel which is just black (0 specular), but the image does not save with that alpha channel included!

    I have tried using both the metallic and specular versions of the standard shader, but even when I set the specular to colour to black, or added a black texture to the specular texture, I'm still getting specular reflections off my carpet!

    I've tried the legacy 'save for web' option, even saving the file as a psd, with (allegedly) the Alpha Channel included, but still the carpet's got specular.

    What's the deal? How do I save an image with a black alpha channel?

    Any help, much appreciated!
     
  2. Torbach78

    Torbach78

    Joined:
    Aug 10, 2013
    Posts:
    296
    Ghosthowl, M995 and mdud99 like this.
  3. fffMalzbier

    fffMalzbier

    Joined:
    Jun 14, 2011
    Posts:
    3,276
    PNG do only save transparency and not an alpha channel.
    Working with a fully transparent image is not really nice in PS so using a alpha channel in Photoshop and using SuperPNG to pipe the alpha channel into the transparency part of the png at save time seems to be like a good way.

    psd files work fine for me.
    At least they show a proper alpha channel in the importer.
     
  4. JamesArndt

    JamesArndt

    Joined:
    Dec 1, 2009
    Posts:
    2,932
    You won't use the "Save for Web" feature for a PSD file, it's not a web format. Ideally use a PSD saved out natively or use a TGA file saved natively. You don't need to use the Save for Web feature as it will add needless compression. You can always check the texture import settings for the small rainbow icon down there by the texture image preview. Click that little rainbow icon and it will show you if you have an alpha channel. Also ensure on the texture settings here that you've set the texture to an RGBA type. This will allow the texture to utilize the alpha channel (it's the "A" in RGBA). If you see that it's an RGB type and not RGBA you won't see or have an alpha channel usable in Unity!