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

Open
opened 2 years ago by rs2128 · 76 comments
rs2128 commented 2 years ago

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
rs2128 commented 2 years ago
Poster

Added subscriber: @rs2128

Added subscriber: @rs2128
Collaborator

#103934 was marked as duplicate of this issue

#103934 was marked as duplicate of this issue
Collaborator

#101918 was marked as duplicate of this issue

#101918 was marked as duplicate of this issue
Collaborator

#100983 was marked as duplicate of this issue

#100983 was marked as duplicate of this issue
Collaborator

#99276 was marked as duplicate of this issue

#99276 was marked as duplicate of this issue
Collaborator

#97102 was marked as duplicate of this issue

#97102 was marked as duplicate of this issue
Collaborator

#96200 was marked as duplicate of this issue

#96200 was marked as duplicate of this issue
Collaborator

#96106 was marked as duplicate of this issue

#96106 was marked as duplicate of this issue
Collaborator

#95813 was marked as duplicate of this issue

#95813 was marked as duplicate of this issue
Collaborator

#95568 was marked as duplicate of this issue

#95568 was marked as duplicate of this issue
Collaborator

#95160 was marked as duplicate of this issue

#95160 was marked as duplicate of this issue
Collaborator

#95066 was marked as duplicate of this issue

#95066 was marked as duplicate of this issue
Collaborator

#92782 was marked as duplicate of this issue

#92782 was marked as duplicate of this issue
Collaborator

#91506 was marked as duplicate of this issue

#91506 was marked as duplicate of this issue
Collaborator

#91178 was marked as duplicate of this issue

#91178 was marked as duplicate of this issue
Collaborator

#88884 was marked as duplicate of this issue

#88884 was marked as duplicate of this issue
Collaborator

#87717 was marked as duplicate of this issue

#87717 was marked as duplicate of this issue
Collaborator

#87731 was marked as duplicate of this issue

#87731 was marked as duplicate of this issue
Collaborator

#85119 was marked as duplicate of this issue

#85119 was marked as duplicate of this issue
Collaborator

#82145 was marked as duplicate of this issue

#82145 was marked as duplicate of this issue
Collaborator

#81681 was marked as duplicate of this issue

#81681 was marked as duplicate of this issue
Collaborator

Added subscriber: @Jeroen-Bakker

Added subscriber: @Jeroen-Bakker
Collaborator

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.
rs2128 commented 2 years ago
Poster

@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?
Collaborator

What happens if you open the exr file in blender?

What happens if you open the exr file in blender?
rs2128 commented 2 years ago
Poster

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)
jenkm commented 2 years ago

Added subscriber: @jenkm

Added subscriber: @jenkm
jenkm commented 2 years ago

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.
Collaborator

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 2 years ago
Collaborator

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

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

Added subscriber: @brecht

Added subscriber: @brecht
Collaborator

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)
EAW commented 2 years ago

Added subscriber: @EAW

Added subscriber: @EAW
Collaborator

Added subscribers: @ZachHixson, @lichtwerk

Added subscribers: @ZachHixson, @lichtwerk
Jeroen-Bakker removed their assignment 2 years ago
iss commented 2 years ago
Collaborator

Added subscriber: @Hongyu

Added subscriber: @Hongyu
fclem commented 2 years ago
Collaborator

Added subscribers: @reed2000, @antoniov, @fclem

Added subscribers: @reed2000, @antoniov, @fclem

Added subscriber: @XensorZishi

Added subscriber: @XensorZishi
Collaborator

Added subscriber: @Monaime

Added subscriber: @Monaime
Collaborator

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

Added subscribers: @sigma.17-1, @rjg
EAW commented 2 years ago

Added subscriber: @ToxicTuba

Added subscriber: @ToxicTuba
Gehrig commented 2 years ago

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
Collaborator

Added subscriber: @SomeAB

Added subscriber: @SomeAB
lichtwerk 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) 1 year ago
iss commented 1 year ago
Collaborator

Added subscribers: @pseudoua, @iss

Added subscribers: @pseudoua, @iss
sbchild commented 1 year ago

Added subscriber: @sbchild

Added subscriber: @sbchild
SomeAB commented 1 year ago

@Jeroen-Bakker any update on this issue?

@Jeroen-Bakker any update on this issue?
brecht commented 1 year ago
Owner

Added subscribers: @CosmcJar, @ThomasDinges

Added subscribers: @CosmcJar, @ThomasDinges

Added subscriber: @Bradley_G

Added subscriber: @Bradley_G
Collaborator

Added subscribers: @Vido, @mano-wii

Added subscribers: @Vido, @mano-wii
Vido commented 1 year ago

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
Collaborator

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.
Collaborator

Added subscribers: @Rui_Martins, @PratikPB2123

Added subscribers: @Rui_Martins, @PratikPB2123
blix409 commented 1 year ago

Added subscriber: @blix409

Added subscriber: @blix409
blix409 commented 1 year ago

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.
Collaborator

Added subscriber: @Zoni

Added subscriber: @Zoni
iss commented 12 months ago
Collaborator

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)
Collaborator
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)|
Collaborator

Added subscriber: @P387-1

Added subscriber: @P387-1
Yuro commented 8 months ago

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.
Collaborator

Added subscriber: @baoyu

Added subscriber: @baoyu
Collaborator

Added subscriber: @DoNotCare

Added subscriber: @DoNotCare

Added subscriber: @Nico-Traber

Added subscriber: @Nico-Traber

Added subscriber: @Lin-Hsu

Added subscriber: @Lin-Hsu
Collaborator

Added subscriber: @Arken

Added subscriber: @Arken
iss commented 3 weeks ago
Collaborator

Added subscriber: @JanErik

Added subscriber: @JanErik
zargul commented 3 weeks ago

Added subscriber: @zargul

Added subscriber: @zargul
zargul commented 3 weeks ago

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
lichtwerk removed the
legacy module/Rendering & Cycles
label 1 day ago
lichtwerk removed the
legacy module/Core
label 5 hours ago
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/Collada
Interest/Compositing
Interest/Core
Interest/Cycles
Interest/Dependency Graph
Interest/Development Management
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/Modeling
Interest/Modifiers
Interest/Motion Tracking
Interest/Nodes & Physics
Interest/Overrides
Interest/Performance
Interest/Performance
Interest/Physics
Interest/Pipeline, Assets & I/O
Interest/Platforms, Builds, Tests & Devices
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
legacy module/Animation & Rigging
legacy module/Core
legacy module/Development Management
legacy module/Eevee & Viewport
legacy module/Grease Pencil
legacy module/Modeling
legacy module/Nodes & Physics
legacy module/Pipeline, Assets & IO
legacy module/Platforms, Builds, Tests & Devices
legacy module/Python API
legacy module/Rendering & Cycles
legacy module/Sculpt, Paint & Texture
legacy module/Triaging
legacy module/User Interface
legacy module/VFX & Video
legacy project/1.0.0-beta.2
legacy project/Asset Browser (Archived)
legacy project/BF Blender: 2.8
legacy project/BF Blender: After Release
legacy project/BF Blender: Next
legacy project/BF Blender: Regressions
legacy project/BF Blender: Unconfirmed
legacy project/Blender 2.70
legacy project/Code Quest
legacy project/Datablocks and Libraries
legacy project/Eevee
legacy project/Game Animation
legacy project/Game Audio
legacy project/Game Data Conversion
legacy project/Game Engine
legacy project/Game Logic
legacy project/Game Physics
legacy project/Game Python
legacy project/Game Rendering
legacy project/Game UI
legacy project/GPU / Viewport
legacy project/GSoC
legacy project/Infrastructure: Websites
legacy project/LibOverrides - Usability and UX
legacy project/Milestone 1: Basic, Local Asset Browser
legacy project/Nodes
legacy project/OpenGL Error
legacy project/Papercut
legacy project/Pose Library Basics
legacy project/Retrospective
legacy project/Tracker Curfew
legacy project/Wintab High Frequency
Meta/Good First Issue
Meta/Papercut
migration/requires-manual-verification
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 & Devices
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 Information 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

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#81199
Loading…
There is no content yet.