After threejs upgrade, alpha value of a cube texture is always 1 in shader

I’m currently migrating from r89 to r121. (I know, it’s a big leap)

And there’s an issue I’ve been not able to solve. I really hope you can help me.

I do environment mapping using a cube texture in my custom shader. I use it’s color and alpha to implement various effects.

This is what it looks like when it’s working correctly.You can see it’s translucent because the alpha channel.

It worked fine until I ugraded my three.js. After that, textureCube(cubemap, vector) started to ignore the original texel’s alpha value and always return 1 instead. (whereas rgb value was correct)

As you can see, it lost it’s alpha and became opaque.

I haven’t changed the pipeline from original image to the uniform variable so I don’t think the alpha data is dropped in the process.

I checked the migration guide but I couldn’t find anything relatable.

What can I do in this situation?

I found the solution.

I had to set the texture’s format to THREE.RGBEFormat