Some effects [bloom, smoke, fire, ..] still don't save in PNG with transparent background (occlusion vs. emission) #81199

Open
opened 2020-09-26 10:32:04 +02:00 by Ruslan · 76 comments

System Information
Operating system: Windows-10-10.0.18362-SP0 64 Bits
Graphics card: Radeon RX 570 Series ATI Technologies Inc. 4.5.13587 Core Profile Context 20.4.2 26.20.15029.27017

Blender Version
Broken: version: 2.91.0 Alpha, branch: master, commit date: 2020-09-25 20:54, hash: 83dc97ccc0
Worked: (newest version of Blender that worked as expected)

Short description of error
https://www.youtube.com/watch?v=mQqV77PaOVs&t=84s
Here this function of preserving BLOOM effect was released, and now it work both on View mode and render mode. BUT! When you will try save PNG after rendering - you will have same result as in past, without blooming effect saved on alpha channel.
Here is example: 1601108715146.png

Exact steps for others to reproduce the error
1 - open file BLOOM BUG.blend
2 - press F12 [render]
3 - save result in PNG
4 - open result in any paint software and put under result layer any colour

**System Information** Operating system: Windows-10-10.0.18362-SP0 64 Bits Graphics card: Radeon RX 570 Series ATI Technologies Inc. 4.5.13587 Core Profile Context 20.4.2 26.20.15029.27017 **Blender Version** Broken: version: 2.91.0 Alpha, branch: master, commit date: 2020-09-25 20:54, hash: `83dc97ccc0` Worked: (newest version of Blender that worked as expected) **Short description of error** https://www.youtube.com/watch?v=mQqV77PaOVs&t=84s Here this function of preserving BLOOM effect was released, and now it work both on View mode and render mode. BUT! When you will try save PNG after rendering - you will have same result as in past, without blooming effect saved on alpha channel. Here is example: ![1601108715146.png](https://archive.blender.org/developer/F8923921/1601108715146.png) **Exact steps for others to reproduce the error** 1 - open file [BLOOM BUG.blend](https://archive.blender.org/developer/F8923932/BLOOM_BUG.blend) 2 - press F12 [render] 3 - save result in PNG 4 - open result in any paint software and put under result layer any colour
Author

Added subscriber: @rs2128

Added subscriber: @rs2128

#103934 was marked as duplicate of this issue

#103934 was marked as duplicate of this issue

#101918 was marked as duplicate of this issue

#101918 was marked as duplicate of this issue

#100983 was marked as duplicate of this issue

#100983 was marked as duplicate of this issue

#99276 was marked as duplicate of this issue

#99276 was marked as duplicate of this issue

#97102 was marked as duplicate of this issue

#97102 was marked as duplicate of this issue

#96200 was marked as duplicate of this issue

#96200 was marked as duplicate of this issue

#96106 was marked as duplicate of this issue

#96106 was marked as duplicate of this issue

#95813 was marked as duplicate of this issue

#95813 was marked as duplicate of this issue

#95568 was marked as duplicate of this issue

#95568 was marked as duplicate of this issue

#95160 was marked as duplicate of this issue

#95160 was marked as duplicate of this issue

#95066 was marked as duplicate of this issue

#95066 was marked as duplicate of this issue

#92782 was marked as duplicate of this issue

#92782 was marked as duplicate of this issue

#91506 was marked as duplicate of this issue

#91506 was marked as duplicate of this issue

#91178 was marked as duplicate of this issue

#91178 was marked as duplicate of this issue

#88884 was marked as duplicate of this issue

#88884 was marked as duplicate of this issue

#87717 was marked as duplicate of this issue

#87717 was marked as duplicate of this issue

#87731 was marked as duplicate of this issue

#87731 was marked as duplicate of this issue

#85119 was marked as duplicate of this issue

#85119 was marked as duplicate of this issue

#82145 was marked as duplicate of this issue

#82145 was marked as duplicate of this issue

#81681 was marked as duplicate of this issue

#81681 was marked as duplicate of this issue
Member

Added subscriber: @Jeroen-Bakker

Added subscriber: @Jeroen-Bakker
Member

Don’t use png. That file format doesn’t support pure emissive colors. Best to use openexr or any other format that stores colors premultiplied.

We could modify png export to convert the colors, but I Wouldn’t recommend to use these pngs due to other alpha space compositing.

Don’t use png. That file format doesn’t support pure emissive colors. Best to use openexr or any other format that stores colors premultiplied. We could modify png export to convert the colors, but I Wouldn’t recommend to use these pngs due to other alpha space compositing.
Author

@Jeroen-Bakker I tried do so(saving in openexr).. and have same result, when opened it in photoshop. If be correct I can get two results. 1st one same as with PNG. Second one with BLOOM but without aplha channel stored (it compleatly dark). What I'm doing wrong?

@Jeroen-Bakker I tried do so(saving in openexr).. and have same result, when opened it in photoshop. If be correct I can get two results. 1st one same as with PNG. Second one with BLOOM but without aplha channel stored (it compleatly dark). What I'm doing wrong?
Member

What happens if you open the exr file in blender?

What happens if you open the exr file in blender?
Author

If I simply draf-n-drop to the viewport - it looks like this: http://joxi.ru/zANYDG1CvLnQK2?d=1
If i open it from camera settings as iimage: same.
Unfortunately I don' know how to open it from UI or Compositor or other places

But if i'm opening saved exr from Image editor - it looks as supposed to be. All as should be (with bloom on transperent BG)

If I simply draf-n-drop to the viewport - it looks like this: http://joxi.ru/zANYDG1CvLnQK2?d=1 If i open it from camera settings as iimage: same. Unfortunately I don' know how to open it from UI or Compositor or other places But if i'm opening saved exr from Image editor - it looks as supposed to be. All as should be (with bloom on transperent BG)

Added subscriber: @jenkm

Added subscriber: @jenkm

Note that this exr file is "premultiplied alpha". Which most likely Photoshop doesn't support at all.

UPD. There is, for example, the "Exr-IO" plugin for photoshop, it has the "opacity correction to support transparent light emitters" option.

Note that this exr file is "premultiplied alpha". Which most likely Photoshop doesn't support at all. UPD. There is, for example, the "Exr-IO" plugin for photoshop, it has the "opacity correction to support transparent light emitters" option.
Member

I think we should do some research on other file formats. Identify areas of the pipeline that could support this. In user point of view they just expect it to work. But I need to dive deeper in the image loading writing pipeline. Last time I looked at it it was still very fixed. In that case we could add a different conversion to convert to sRGB

I think we should do some research on other file formats. Identify areas of the pipeline that could support this. In user point of view they just expect it to work. But I need to dive deeper in the image loading writing pipeline. Last time I looked at it it was still very fixed. In that case we could add a different conversion to convert to sRGB
Jeroen Bakker self-assigned this 2020-09-27 08:17:10 +02:00
Member

Changed status from 'Needs Triage' to: 'Confirmed'

Changed status from 'Needs Triage' to: 'Confirmed'
Member

Added subscriber: @brecht

Added subscriber: @brecht
Member

Did some research and had a design discussion with @Brecht.

It seems that we can add a similar conversion we do for the image editor when storing images to disk for RGB files. When exporting to RGBA there are still some issues at the borders what makes them unusable. I doubt we this could be mathematically removed.

Loading an RGBA PNG back in Blender shows that there are artifacts near the edges.
Screenshot from 2020-09-28 13-52-18.png

  • T81199_rgba_16.png
  • T81199_rgb_16.png
  • T81199_rgba.png
  • T81199_rgb.png
Did some research and had a design discussion with @Brecht. It seems that we can add a similar conversion we do for the image editor when storing images to disk for RGB files. When exporting to RGBA there are still some issues at the borders what makes them unusable. I doubt we this could be mathematically removed. Loading an RGBA PNG back in Blender shows that there are artifacts near the edges. ![Screenshot from 2020-09-28 13-52-18.png](https://archive.blender.org/developer/F8931661/Screenshot_from_2020-09-28_13-52-18.png) * ![T81199_rgba_16.png](https://archive.blender.org/developer/F8931603/T81199_rgba_16.png) * ![T81199_rgb_16.png](https://archive.blender.org/developer/F8931602/T81199_rgb_16.png) * ![T81199_rgba.png](https://archive.blender.org/developer/F8931601/T81199_rgba.png) * ![T81199_rgb.png](https://archive.blender.org/developer/F8931600/T81199_rgb.png)
Member

Added subscriber: @EAW

Added subscriber: @EAW
Member

Added subscribers: @ZachHixson, @lichtwerk

Added subscribers: @ZachHixson, @lichtwerk
Jeroen Bakker removed their assignment 2020-10-20 13:54:24 +02:00

Added subscriber: @Hongyu

Added subscriber: @Hongyu

Added subscribers: @reed2000, @antoniov, @fclem

Added subscribers: @reed2000, @antoniov, @fclem

Added subscriber: @XensorZishi

Added subscriber: @XensorZishi
Member

Added subscriber: @Monaime

Added subscriber: @Monaime
Member

Added subscribers: @sigma.17-1, @rjg

Added subscribers: @sigma.17-1, @rjg
Member

Added subscriber: @ToxicTuba

Added subscriber: @ToxicTuba

Added subscriber: @Gehrig

Added subscriber: @Gehrig

Added subscriber: @Francesco-Della-Torre

Added subscriber: @Francesco-Della-Torre

A similar issue is happening in this video: https://youtu.be/kxgH2whhc8g?t=41

A similar issue is happening in this video: https://youtu.be/kxgH2whhc8g?t=41

Added subscriber: @AlphaVDP2

Added subscriber: @AlphaVDP2
Member

Added subscriber: @SomeAB

Added subscriber: @SomeAB
Philipp Oeser changed title from GLOWING BLOOM effect still don't saves in PNG with transparency background to Some effects [bloom, smoke, fire, ..] still don't save in PNG with transparent background (occlusion vs. emission) 2021-09-06 10:56:06 +02:00

Added subscribers: @pseudoua, @iss

Added subscribers: @pseudoua, @iss

Added subscriber: @sbchild

Added subscriber: @sbchild

@Jeroen-Bakker any update on this issue?

@Jeroen-Bakker any update on this issue?

Added subscribers: @CosmcJar, @ThomasDinges

Added subscribers: @CosmcJar, @ThomasDinges

Added subscriber: @Bradley_G

Added subscriber: @Bradley_G

Added subscribers: @Vido, @mano-wii

Added subscribers: @Vido, @mano-wii

I tried to save render to .exr, .tga and .tif all I get is empty image, just check board

I tried to save render to .exr, .tga and .tif all I get is empty image, just check board

Added subscriber: @iulian.flester

Added subscriber: @iulian.flester

I believe this problem can be easily solved if you do what Photoshop is doing. Merge the layer that has the overlay with an empty one, or how is it called? rasterize? Because if I hit render I can see the final result perfect. The problem starts to show up when you do the saving. So what if you could add a node that will rasterize the image. Then you could save it or do whatever else you need.

I believe this problem can be easily solved if you do what Photoshop is doing. Merge the layer that has the overlay with an empty one, or how is it called? rasterize? Because if I hit render I can see the final result perfect. The problem starts to show up when you do the saving. So what if you could add a node that will rasterize the image. Then you could save it or do whatever else you need.

Added subscribers: @Rui_Martins, @PratikPB2123

Added subscribers: @Rui_Martins, @PratikPB2123

Added subscriber: @blix409

Added subscriber: @blix409

Has this issue been solved for Blender 3.1? I'm having the same issue and not sure why i'm not able to save png with emissive fire.

Has this issue been solved for Blender 3.1? I'm having the same issue and not sure why i'm not able to save png with emissive fire.
Member

Added subscriber: @Zoni

Added subscriber: @Zoni

Added subscriber: @Ulf3000

Added subscriber: @Ulf3000

Added subscriber: @zachnfine

Added subscriber: @zachnfine

Eevee's bloom doesn't seem to affect the resulting alpha channel of any exported file format that supports alpha -- I've tried ffmpeg->QuickTime->Animation, png, and OpenEXR from Blender 3.0.1 on Windows 10 Pro (10.0.19044 Build 19044). My test project includes some bright emissive objects that look very anemic without bloom.

When writing multilayer OpenEXR files, with a Bloom pass encoded as one of the layers, the resulting 'combined' layer has an alpha channel and no visible bloom effect, and the Bloom layer has no alpha channel and is just on black.

As a workaround I tried using AfterEffects to add the Bloom back over the Combined layers of a multilayer EXR export, but I couldn't get it to look exactly like my temp comp inside of Blender.

Now I'm giving this workflow that uses Blender's compositor to add the Bloom layer to the alpha channel a try. (https:*blender.stackexchange.com/questions/200068/blender-eevee-how-to-render-bloom-effect-when-using-transparent-background)

Eevee's bloom doesn't seem to affect the resulting alpha channel of any exported file format that supports alpha -- I've tried ffmpeg->QuickTime->Animation, png, and OpenEXR from Blender 3.0.1 on Windows 10 Pro (10.0.19044 Build 19044). My test project includes some bright emissive objects that look very anemic without bloom. When writing multilayer OpenEXR files, with a Bloom pass encoded as one of the layers, the resulting 'combined' layer has an alpha channel and no visible bloom effect, and the Bloom layer has no alpha channel and is just on black. As a workaround I tried using AfterEffects to add the Bloom back over the Combined layers of a multilayer EXR export, but I couldn't get it to look exactly like my temp comp inside of Blender. Now I'm giving [this workflow ](https:*blender.stackexchange.com/questions/200068/blender-eevee-how-to-render-bloom-effect-when-using-transparent-background) that uses Blender's compositor to add the Bloom layer to the alpha channel a try. (https:*blender.stackexchange.com/questions/200068/blender-eevee-how-to-render-bloom-effect-when-using-transparent-background)
Added subscribers: @AndreasBecker, @Ethan-Hall, @OmarEmaraDev
Added subscriber: @Iago-Diogo-de-Vasconcelos-Mota

In #81199#1023863, @Jeroen-Bakker wrote:
Don’t use png. That file format doesn’t support pure emissive colors. Best to use openexr or any other format that stores colors premultiplied.

We could modify png export to convert the colors, but I Wouldn’t recommend to use these pngs due to other alpha space compositing.

This is very true.

The standard way that the PNG alpha is interpreted is "unassociated" or "non-premultiplied."
This type of alpha blending, only allows the PNG to darken the underlying image.

PNG Alpha Blend Proper Bloom
alpha_blend_bloom.png proper_bloom.png
> In #81199#1023863, @Jeroen-Bakker wrote: > Don’t use png. That file format doesn’t support pure emissive colors. Best to use openexr or any other format that stores colors premultiplied. > > We could modify png export to convert the colors, but I Wouldn’t recommend to use these pngs due to other alpha space compositing. This is very true. The standard way that the PNG alpha is interpreted is "unassociated" or "non-premultiplied." This type of alpha blending, only allows the PNG to darken the underlying image. |PNG Alpha Blend|Proper Bloom| | -- | -- | |![alpha_blend_bloom.png](https://archive.blender.org/developer/F12954777/alpha_blend_bloom.png)|![proper_bloom.png](https://archive.blender.org/developer/F12954863/proper_bloom.png)|
Member

Added subscriber: @P387-1

Added subscriber: @P387-1

Added subscriber: @Yuro

Added subscriber: @Yuro

Trying to render out images for a website, where the image needs to be separate from the background and can't use an Add blend mode.

I couldn't find a solution when using eevee bloom to achieve this result. Ultimately we need the glow in the alpha of the saved image. The goal should be to save from Blender, achieving the same result as adding glows manually in a 2D package. Is the way Blender is storing the glow internally preventing it from being saved in a particular way?

I had to render my glowing objects in a separate pass then recreate the glows in a 2D package. As Blender is a tool for multiple uses -not just film and compositing- addressing this would be really helpful.

Trying to render out images for a website, where the image needs to be separate from the background and can't use an Add blend mode. I couldn't find a solution when using eevee bloom to achieve this result. Ultimately we need the glow in the alpha of the saved image. The goal should be to save from Blender, achieving the same result as adding glows manually in a 2D package. Is the way Blender is storing the glow internally preventing it from being saved in a particular way? I had to render my glowing objects in a separate pass then recreate the glows in a 2D package. As Blender is a tool for multiple uses -not just film and compositing- addressing this would be really helpful.

Added subscriber: @baoyu

Added subscriber: @baoyu
Member

Added subscriber: @DoNotCare

Added subscriber: @DoNotCare

Added subscriber: @Nico-Traber

Added subscriber: @Nico-Traber

Added subscriber: @Lin-Hsu

Added subscriber: @Lin-Hsu
Member

Added subscriber: @Arken

Added subscriber: @Arken

Added subscriber: @JanErik

Added subscriber: @JanErik

Added subscriber: @zargul

Added subscriber: @zargul

This issue still stands as of Blender 3.4.1, Snap package. Using the glare node in compositing instead of EEVEE bloom does not fix the issue, and it is consistent across EEVEE and Cycles, so it has to do render saving, and not EEVEE particularly.

This issue still stands as of Blender 3.4.1, Snap package. Using the glare node in compositing instead of EEVEE bloom does not fix the issue, and it is consistent across EEVEE and Cycles, so it has to do render saving, and not EEVEE particularly.

Added subscriber: @dursunumit

Added subscriber: @dursunumit
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
31 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#81199
No description provided.