Render semi-transparent volume with cycles I want to render an image of a fire in cycles, but as a png with a transparent background.
Without a transparent background, the output image looks like this:



But as soon as I tick the "Transparent" checkbox under Render->Film, all the semi-transparent parts of the image are not rendered and it looks like this



which is clearly not what I want. I've tried to add a holdout shader or a transparent shader to my smoke domain material nodes, but it didn't help. I've only found answered questions for semi-transparent glass, but none for volumes. My node setup looks like this:



but the transparent shader doesn't do anything.

Has anyone an idea how to fix this?

Thanks

Edit: I've just changed the flow type to "Fire and Smoke" instead of "Fire" and now the semi-transparent parts render too, but I don't want the smoke.
PNG images can't represent objects that emit light but not block any light, due to the way they represent transparency. For that reason, you must always have some amount of volume absorption for the emission to be visible when saved as a PNG image.

If your volume has zero density, you could use the flame to drive the volume absorption density, adding just enough to keep the flame visible.

The render and compositing image representations and EXR images can represent such objects, but this information can't be preserved when displaying in the image editor or converting to PNG. This is one of the subtle differences between associated/premultiplied and unassociated/unpremultiplied alpha.