Welcome to od|forum

Register now to gain access to all of our features. Once registered and logged in, you will be able to contribute to this site by submitting your own content or replying to existing content. You'll be able to customize your profile, receive reputation points as a reward for submitting content, while also communicating with other members via your own private inbox, plus much more! This message will be removed once you have signed in.

R_cyph

emit smoke color from a texture

Hey,

I've searched the forums/ houdini help docs and i'm having trouble finding anything on emitting smoke color from a textured plane. I found an example of what I mean. Any help would be greatly appreciated!

http://vimeo.com/65370346

Share this post


Link to post
Share on other sites

If you have plane with uvs, scatter bunch of points, inherit uvs, apply color through colormap vop/ texture vop to the points. Create vector volume from these points using fluid source sop. Then import this volume as vector field in your smoke object and don't forget to advect it every step (using gas field advect dop or adding your field to same node inside solver).

Then import it back in sops and render (some shaders automatically use Cd volume as color so name it accordingly) with other fields.

Share this post


Link to post
Share on other sites

hi,

it's very good explanation but could you make a hip for us to study this.

thanks for advance

Share this post


Link to post
Share on other sites

Give this file a try. This should shows the basic idea to add color (Cd.x/Cd.y/Cd.z) to your smoke sim and advect it.

edit: re-uploaded hipnc file.

post-3604-0-88538400-1367729543_thumb.jp

post-3604-0-92790300-1367729555_thumb.jp

emitSmokeFromTexture.hipnc

Edited by melazoma

Share this post


Link to post
Share on other sites

I downloaded your file and everything makes sense. But, for some reason the shader isn't picking up the Cd its just using the billowsmoke color :P

Share this post


Link to post
Share on other sites

Nice trick, melazoma - thanks for sharing.

R_cyph - cache the sim to disk with the ROP provided, and make sure the render flag is on the file read node, you should see it render as displayed

Share this post


Link to post
Share on other sites

Hi ryew, thanks for helping out. I should have cleaned the file before uploading.

Given enough hardware power, I'd like to take a stab at something a little more elaborate, but my 3 years old MacBook Air was enough for this little exercise.

Share this post


Link to post
Share on other sites

Recemtly saw this FumeFX test too and made the same in Houdini. But in my case, after my smoke sim was done I made a source with point color match texture I want, and go with advection particles by vel field in POPs(we can do the simple advection setup in DOPs). After when you have your points you just bring them to a smoke shader using Point Cloud Open + Point Cloud Filter by Cd attribute and simply add to your smoke color. Got the same effect like you.

One thing which I want to spot, that important thing to do this like post sim otherwise this advection during the main sim make the sim time slow down and you get more control for playing with color. And using Point Clouds gives you control under filtering(bluring) your color, so you can control in shader - do you want more soft or more sharpness color. Also sharpness dependd on how many points you advected. I tryed both way, both way are good but personally I prefered the way with Point Clouds.

1 person likes this

Share this post


Link to post
Share on other sites

Give this file a try. This should shows the basic idea to add color (Cd.x/Cd.y/Cd.z) to your smoke sim and advect it.

edit: re-uploaded hipnc file.

If you advect Cd for certain amount of frames, the color will be very rough, so the good way is to add gas blur and blur the cd with small radius. I've just added this gas blur to your sim. You can compare. :)

emitSmokeFromTexture02.hipnc

Share this post


Link to post
Share on other sites

If you look at the first smoke sim in the video that R_cyph posted, the density is being emitted for multiple frames and always emits with the texture's colors. In this hip file that has been posted, it looks like the color field is just an additional field that is put into the sim on the first frame and then advected with the velocity.

How would you go about actually having the density sourced with the texture's colors? or have the color field at least be emitted for multiple frames to match something that emits more than just one frame?

thanks!

Share this post


Link to post
Share on other sites

I'm trying this way to advect the color vector field but I have a problem that i don't know how to solve.

In my setup i don't have dissipation and what i get in the end is black smoke.

the problem is that the color (the density of each channel) is loosing density as the simulation goes, resulting in a darker color on the less dense and more diffuse areas.

just try to disable the dissipation on the file dark_cry posted (i checked the last posted file, not the one melazoma posted).

How this could be solved?

I'm gonna try advect particles.

About the particle advection method I think it's good because of the flexibility that gives you, but in the advection process you have to be very careful because it could be possible that some areas doesn't get enough particles, or some particles never reach some part of the sim.

Share this post


Link to post
Share on other sites

i didn't tried yet, but maybe scattering new points (grid aligned) in the density field each timestep, and attrib transfer the color from the advected point cloud of the step before could be a way to be sure that all the voxels are always filled up with the color and there are no missing areas. Since at each timestep all the points are readvected starting from a uniform grid there's no fear that there are empty areas.

Not sure about the color diffusion, maybe using parameters on attrib transfer is enough to control it.

Though using only one advected point cloud has the advance that colors can be easily tweaked and maniulated after the advection.

<_< hmmm

Share this post


Link to post
Share on other sites

Hey everyone 

I tried downloading "emitSmokefromTexture 03" and tried rendering it with the way it was setup straight from download (houdini 13)

However the result is just blackness. I checked the cache, autodop, emitter etc for possible errors, but everything is set to "go".

But the result is always a empty render.

 

 

Also in a further question regarding the setup.

Does anyone know a way to copy the color over an already existing value?

Basically I would like to have the color from the texture be present at the start but fade away into whitish/grey smoke with age/density of the smoke.

So far the ways of dealing with smoke and color, that I have found, always result in the smoke turning black or like with the setup from here and with this post http://forums.odforce.net/topic/17741-fluid-with-colour-field-problems/page-1 stay permanent.

 

I really hope someone can help me here with these issues!

 

Cheers!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now