Jump to content

Pyro fire RnD and questions.


anupamd

Recommended Posts

well Im trying to sell my team on using houdini for fire and smoke. First pass at fire here:

This is all H12, Movement is pretty good, detail and shading kind of $hit to be honest. grid size is 300x300. Fume/Maya does a better job at the shading and detail bit, Houdini seems to have more realistic movement. Next step is to see if uprezed fire looks good or not. (this fire sim is not uprezed)

Also the pyro shader is just horribly slow. Sim time here was 10 minutes which is amazing (Im using OpenCL HW acceleration) BUT..8 HOURS for rendering without any scattering???. I played with the voxel step size to no avail. Thats a bottleneck.

Does anyone out there have a decent fire shader (something just kitchen sink) that doesn't soak up gobs of time?

Link to comment
Share on other sites

Can you post the file? I know you used GPU to sim the volumes so please include as single .bgeo for a frame as well.

The render times seem excessive...

I am assuming you didn't use the default shelf tools to set up the fire but worked it up from scratch and may not have the regular fields present.

If there is no smoke being rendered (still need to define something as density), then you just need to render the fire (emission) field. In the Pyro2 shader, the fire part of the Pyro shader doesn't do any light look-ups so should be quite fast to render. It's just a simple volume look up and ramp colour applied. Note that since the opacity is set to 0 for fire emissive elements, no Stochastic Transparency is done so that's out.

I also wonder if the scene size is much larger or smaller than the defaults (usually something that fits on the default construction plane works kinda ok with the default Volume Step size of 0.1). If you render with the Micropolygon render engine, then each and every vertex on every microvoxel needs to be shaded so dialling in the Shading Quality (voxel facing area to camera where SQ of 1 is about 1pixel and 2 is about 1/4pixel in area facing the camera) and the Volume Step size which is in Camera Z-Depth scene units is critical or else you are over-shading for the quality you get. That can really kill render times and push memory way up for what the volume really is.

If you try raytracing and your render times pick up, it suggests that the Volume Step size is maybe too small. With raytracing, shading is performed when sampled so you can be more aggressive with the Volume Step Size (setting smaller than for micropolygon rendering) but it's still better to find that best value to optimize rendering with micropolygon rendering.

I really don't think it's the Pyro2 shader at this time but you never know.

As for sharp volumes, if the volume res is quite low compared to the final render resolution, then yeah it's challenging to get a sharp looking volume but you never know what's possible without resorting to doing an upres sim but it may be the only way if a very low res fire gives you the behaviour and increasing the res kills that behaviour.

The biggest factor as far as rendering goes and sharpness/blurriness is the Volume Filter and the Volume Filter Width. Default of Box and width of 1 is not that great with lowish resolution volumes. You can go two routes. Create a nice smooth soft edged volume and then try to contour sharpen in the Pyro shader or try to choose a sharpening filter such as Blackman or Sync (very harsh and prone to ringing) with filter widths from 1.0 to 1.5 or experiment to create a sharper low res volume to render.

Again please attach the scene file and a .bgeo frame of the volume geometry you are rendering.

  • Like 3
Link to comment
Share on other sites

  • 3 weeks later...

The biggest factor as far as rendering goes and sharpness/blurriness is the Volume Filter and the Volume Filter Width. Default of Box and width of 1 is not that great with lowish resolution volumes. You can go two routes. Create a nice smooth soft edged volume and then try to contour sharpen in the Pyro shader or try to choose a sharpening filter such as Blackman or Sync (very harsh and prone to ringing) with filter widths from 1.0 to 1.5 or experiment to create a sharper low res volume to render.

You always give very useful advises, thanks very much! Now I am too have a fight with a low simulation which I am trying to render on 2k and get a maximum details from it. But one problem wich I have it's a lot of noise which gives me a calculation of Stochastic Transperensy, because I have several smokes with some opacity and I can see this random pattern on the soft edges between mixing of this smokes... So this is a very big hadake, because the help told me that the one way to avoid this noise - it's increasing of Pixel Samples and as I saw - decreasing of Volume Step Size.. But the time of render is growing up to much.. And I still have a little noise with next preferenses:

Pixel Samples: 10 10

Min Ray Samples: 3

Max Ray Samples: 9

Transper Sampl: 25

And it's doesn't matter - PBR or Raytrays I try to use , one differens is only a time - PBR is slower..

If you have some advises, I will be very pleasure to hear it! :)

The best way to avoide all this - to use Micropoly and Shadow Map, but recaults have a very huge difference in good looking in comparing with Raytrayse.. So.. this is a close circle :)

Forgot. You usually don't see this problem with Stocastic Transperensy if you have only one smoke.. and preferences can be lower in a 2-3 times, but when you have several intersection smokes - you have my case..

Edited by llldemonlll
Link to comment
Share on other sites

That should render in no time at all. All you need is a custom shader. you can start with the basic smoke a tweak it.

And use micropolygon render, not PBR. and since it's only fire, you don't need shadows.

Edited by bunker
Link to comment
Share on other sites

That should render in no time at all. All you need is a custom shader. you can start with the basic smoke a tweak it.

And use micropolygon render, not PBR. and since it's only fire, you don't need shadows.

I use pyro shader and I have only smoke without fire.. Mikropolygon render with ray trace shadows gives some noise too.. not with that preferences which I wrote above, with a bit lower. But smoke looks very blured and the cause of noise in this case on my opinion is the noise in the shadows.. In that case about which I wrote - the cause is calculation of St. Transperency and this noise has a different looking.. like some pixel noise..

I tryed some time ago to use custom shader but I didn't see a big difference in speed.

Link to comment
Share on other sites

post-3635-134025221149_thumb.png

This takes 52 sec on my 2.66 i7 laptop:

Micropolygon render, motion blur on, Dicing 1.25

Pixel sample 3x3, volume step size 0.1, opacity limit 0.9

Volume filter : Blackman 1.1, motion factor 1

the shader is a modified "basic smoke"

It's not a full HD render, but it wouldn't take 8 hours for the whole sequence B)

Edited by bunker
Link to comment
Share on other sites

even raytracing is not that slow (2mins35s) and produce more details :

post-3635-134025589824_thumb.png

(stochastic transparency off).

I also re-run the micropolygon render also with stochastic transparency turned off and it's now 33s. :)

Edited by bunker
Link to comment
Share on other sites

Hey guys, thanks for all the replies.

Ok Im doing more testing this week (I was away on holiday).

So to answer some previous questions: im just using basic pyroFX2.0 features... nothing modified in the solver.

I was also using the PyroFX2.0 shader. and micropoly rendering. Yea I thought it was pretty bizzare that I was getting such slow rendering times.

Bunker, could you share your shader? Or are you basically just doing a ramp based on heat/temperature in the shader?

In general though I think what Im getting form this threat is.. .. build my own shader for Fire and start from the simple smoke shader :)

Im going to try a few things and get back to you guys.

post-3635-134025221149_thumb.png

This takes 52 sec on my 2.66 i7 laptop:

Micropolygon render, motion blur on, Dicing 1.25

Pixel sample 3x3, volume step size 0.1, opacity limit 0.9

Volume filter : Blackman 1.1, motion factor 1

the shader is a modified "basic smoke"

It's not a full HD render, but it wouldn't take 8 hours for the whole sequence B)

Link to comment
Share on other sites

Awesome! thanks for sharing.

- take a "basic smoke" shader.

- rename density to heat.

- create a parameter named "opacity"

then :

heat > fit_range > color ramp > Cf

_new Of * opacity > Of

0.1-0.2 is a normally a good value for fire opacity.

Link to comment
Share on other sites

It's really interesting topic! I've never tried to do fire in houdini, so this is my first test. There is custom shader based on basic smoke(thanks bunker).

Raytrace, mb, pixels samples 3*3, grid size 209*233*430.

Render time 3 minutes(it can be faster).

post-4804-134057311769_thumb.jpg

Link to comment
Share on other sites

  • 1 year later...
  • 1 month later...

- take a "basic smoke" shader.

- rename density to heat.

- create a parameter named "opacity"

then :

heat > fit_range > color ramp > Cf

_new Of * opacity > Of

0.1-0.2 is a normally a good value for fire opacity.

Hi I really want to work this out but I am still really new to all of this.

Is there anyone who could explain this in a little bit of detail. I have done a whole bunch of tutorials but none of them showed me how to get good looking fire that didn't take year to render.

Link to comment
Share on other sites

  • 4 months later...
  • 2 years later...

- take a "basic smoke" shader.

- rename density to heat.

- create a parameter named "opacity"

then :

heat > fit_range > color ramp > Cf

_new Of * opacity > Of

0.1-0.2 is a normally a good value for fire opacity.

Got it Many thanks

Edited by Sankar Kumar
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...