Page MenuHome

colored smoke doesn't work (cycles blender 2.80)
Closed, ArchivedPublic

Description

System Information
Operating system: mac OS
Graphics card: not useful (CPU rendering)

Blender Version
Broken:

2.80, a77b63c56943, blender2.8, 2019-01-04
Worked: (optional) in blender 2.79b

Short description of error
Setting a color to a smoke flow object still renders the default, gray color. Error occurs in viewport, as well as in actual render after baking.

Exact steps for others to reproduce the error
set render engine to cycles
apply quick effect: smoke to default cube
select cube, go to physics tab
change smoke color

Details

Type
Bug

Event Timeline

Sebastian Parborg (zeddb) triaged this task as Confirmed, Medium priority.

This is because Quick Smoke does not set the smoke shader color attribute to color (so the color is not read from the smoke setting). It is instead read from the shader node.

I'm guessing this is not the intended behavior @Brecht Van Lommel (brecht) ?

It's intentionally not using the color by default, for performance reasons.

Ideally we could detect automatically if using the color is needed or if it's a fixed value, but until that is done it is too much of a performance / memory usage to use the smoke color. It's much more efficient to tweak the color in the shader.

Kobe Reygel (Arkay) added a comment.EditedJan 25 2019, 2:23 PM

Fair enough, but I feel like it's kinda weird that the option is there in plain sight, if it doesn't map by default.
@Sebastian Parborg (zeddb) you seem knowledgeable, can I ask you how I do map the smoke color attribute to the color?

I could just change the shader color, but that changes all smoke in the domain to a monochrome color. I want to have multiple objects emitting different colors, and do stuff like keymapping the emitted color to make cool effects.
(If this is not a suitable place to ask this, then I apologize, and would love being pointed to the right place to ask.)

In the domain shader, simply type in color in the Color Attribute slot

I'm a little confused. Does this mean that in Blender 2.8, we can no longer animate the smoke color to change as it's emitted while using Cycles as the renderer?

I was following along with a smoke tutorial here but in 2.8, the smoke no longer renders using the expected colors. As @Kobe Reygel (Arkay) mentioned, changing the shader color changes the smoke wholesale. Is there another way to do this in 2.8 that will still allow me to animate smoke colors from a single emitter?

@Chris Camargo (chriscamargo) you can! Like Sebastian said above, go to the smoke domain, go to its shader nodes, and type "color" in the box called "Color Attribute"

After doing this, the smoke behaved like it did in 2.79 again. (and thus being keymappable)

Apologies, I didn't make the connection initially. Thank you, @Kobe Reygel (Arkay) and @Sebastian Parborg (zeddb), that did the trick!

To animate the whole domain is not what is asked for. the emitter effect is something amazing different in Cycles where the emitting item can have changing color.