Page MenuHome

Alpha Channel Darkens the Colors
Closed, ResolvedPublicBUG

Description

Blender Version

I now have this problem in all Blender applications. 2.79, 2.80, 2.81, 2.81alpha

Short description of error
I want to use a map with colors and alpha channel in the Blender. But I want to use only the Colors(RGB) of this map.
But for some reason, RGB colors are always premultiplied by Alpha. Making the image dark when alpha is less than 1.0

In the picture you can see:
On the left - mesh with the material using the texture but not using alpha.
In the UV/Image editor - How the RGB and Alpha channel are.
In the Node Editor - The nodes of the Mesh material.

Here is the result in Eevee when alpha channel is used (problem "solved"):

Exact steps for others to reproduce the error
Open file:

  • Do tests on Eevee and Cycles and check the result.

Event Timeline

I get the same issue. Good find! See attached image for clarification

System Information
Operating system: Windows-10-10.0.17763-SP0 64 Bits
Graphics card: GeForce GTX 1080/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 432.00

Blender Version
Broken: version: 2.82 (sub 6), branch: master, commit date: 2019-12-24 16:58, hash: rB33eabb82207e

It wasn't just me. 🤔A general problem?
I have two different computers, one desktop and one laptop, but both get the same error.

System Information for laptop

Operating System: Windows 10 Home Single Language 64-bit (10.0, Build 18362) (18362.19h1_release.190318-1202)
Processor: Intel(R) Core(TM) i5-3230M CPU @ 2.60GHz (4 CPUs), ~2.6GHz
Memory: 8192MB RAM
Card name: Intel(R) HD Graphics 4000
Card name: NVIDIA GeForce GT 740M
Dedicated Memory: 2009 MB

Like I said, it's weird. Because the same problem began to appear in versions of the old blender. So this isn't just the current Blender's problem.

Could it be from updates? So after the updates of Nvidia or Microsoft. (I updated all the drivers.)

Regarding the picture you show ...

  • Yes, linking the alpha channel to any shaders eliminates this problem.

  • The good thing is, if I remove the alpha link, it works as if it were okay.

  • But what you already said doesn't work in the Cycles engine. Nothing at all.

Germano Cavalcante (mano-wii) changed the task status from Needs Triage to Confirmed.EditedJan 9 2020, 9:29 PM

The manual says:

the color is premultiplied with alpha if the alpha output is used

But at Eevee it seems the opposite. The image is premultiplied by alpha if this is not being used.
In cycles the image is always premultiplied.

I can confirm that the behavior in cycles was the same in 2.79.

Bastien Montagne (mont29) changed the subtype of this task from "Report" to "Bug".Jan 15 2020, 11:08 AM

I am in a few confusion about this. I am not sure that there may be a lack of information as well. Blender 2.7x and blender 2.8x are slightly different from each other.

But there are inconsistencies in some issues.

I use Color and Alpha. As if there was no problem. As if the problem is solved. (This texture Alpha channel is actually on a specular map. But I don't want to separate them into two different textures.)

But I can't say the same for hair.


The black parts are still where they are. There was no change.

In Blender 2.7x, they were more stable.
This time I will use only color. But as you ca n see, there are still black parts. As I said first.

But there is an option to use the alpha map. You no longer see the alpha channel. (The downside is that the alpha map is completely disabled. So now he acts as if there is no alpha channel. )
But I don't think Blender 2.8x will have such an option. At least I couldn't find it. Is there an option like not using the alpha map like this?

I want to use a map with colors and alpha channel in the Blender. But I want to use only the Colors(RGB) of this map.
But for some reason, RGB colors are always premultiplied by Alpha. Making the image dark when alpha is less than 1.0

So you want to use the R,G,B channels for color and the Alpha channel as a specular map, right?

You have to set the alpha channel to channel packed.

In the node editor, select the Image Texture node. Then open the side panel by pressing N. In the Item tab change the alpha to channel packed.

@Selman (TSelman61) Does that solve your issue?

This option was added May 18th 2019 in rB7aaa7aa9dd79, so any blender build after that will have it. rB909b0ac16c26 fixed an issue on May 26th with how Cycles handles this new feature.



Channel packed alpha as specular



Channel packed, alpha not connected


Channel packed, alpha as specular and clearcoat using Cycles. I increased the size of the light to 1.0 in order to better show the different specular reflections in each section.


@Germano Cavalcante (mano-wii) it appears that section of the manual has not been updated since 2.79.
@Bastien Montagne (mont29) Is this a bug or just a case of the documentation never being updated?
@Aaron Carlisle (Blendify) Something to add to the Undocumented changes list?

@Evan Wilson (EAW)
How stupid I am. I was just expecting a button, as in 2.79. My fault.

This is really good. It separates the color and alpha and I can use the two separately.
I tried it on the models I had problems with, it works perfectly. I think that's what I wanted.
Thanks everyone. 😀

I believe this is a case where the documentation just needs to be updated, I created T73436 to keep track of this.

Aaron Carlisle (Blendify) closed this task as Resolved.Mon, Feb 10, 7:08 PM
Aaron Carlisle (Blendify) claimed this task.