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.

aghourab

High Resolution Explosion

66 posts in this topic

Hello All!

I am currently trying to get an explosion to work for a Uni assignment. I have a few problems but the main one is getting the resolution/scale of the explosion to look bigger (i.e. an explosion from a large fuel source with all the details and motion one could expect).

1. Ive scaled up the scene (a few times), but now that doesn't seem to work. Also tried upping the vorticles, playing with buoyancy, temperature, ignition etc... Currently its sort of looking like half the 'scale' of what would be appropriate.

2. The other problem I'm having (evident from video:p) is the motion of the initial blast. I'm using particles generated over 6 frames to create the initial flames. Turning on point velocity doesn't seem to be working (pyro solver & source). Any way I can get that initial motion without keying a force node?

3. Vorticles affect smoke way to much (and not so much with regards to explosion). While i (presume) need them to give the detail to the explosion, any way I can mask out their effect on cooler areas of the simulation?

Maybe I'm doing something inherently wrong, so feel free to point that out:)

Any tips/critiques would be much appreciated! (For a dry, gas explosion)

Explosion Video -> Explosion Video

Scene file attached bellow

Cheers

PWTN.rar

Edited by aghourab
1 person likes this

Share this post


Link to post
Share on other sites

I also find it a bit difficult to go BIG in pyrotools. For big fire and smoke, pyroclastic features are a must:

http://www.tboeckel.de/EFSF/efsf_wv/montserrat_10/Thorsten/IMG_6355_n.jpg

http://scienceblogs.com/startswithabang/upload/2010/03/thrusters_in_space/NHR%20Explosion.jpg

But creating such detail and animation with voxels seems to be pretty hard. Lots of detail is needed. I've only managed to make more of that soft, whispy detail than those hard rocky formations. Metaballs with volume textures seems to produce that stuff easily but then incorporating fluid like properties to them might be tricky.

Huge explosion also animates completely different compared to a small scale fireball. This though is propably solved with some clever force field thingy and retiming to slow it down.

Just thinking out loud.

Share this post


Link to post
Share on other sites

I also find it a bit difficult to go BIG in pyrotools. For big fire and smoke, pyroclastic features are a must:

http://www.tboeckel.de/EFSF/efsf_wv/montserrat_10/Thorsten/IMG_6355_n.jpg

http://scienceblogs.com/startswithabang/upload/2010/03/thrusters_in_space/NHR%20Explosion.jpg

But creating such detail and animation with voxels seems to be pretty hard. Lots of detail is needed. I've only managed to make more of that soft, whispy detail than those hard rocky formations. Metaballs with volume textures seems to produce that stuff easily but then incorporating fluid like properties to them might be tricky.

Huge explosion also animates completely different compared to a small scale fireball. This though is propably solved with some clever force field thingy and retiming to slow it down.

Just thinking out loud.

Agreed, though hopefully I figure it out soon enough. Ive been through a lot of threads, seems the focus is on smaller scale explosions, at least in the public domain (that or I havn't searched thoroughly enough:p)

I still havn't resolved all the issues, though I'm slowly getting there by keying a lot of the attributes. Rendering at 16-32bit yielded a lot more detail when it went to comp. I cant tell if that is coming from the pyro volume or the shader, and I haven't tested it over multiple frames yet to see if it rolls nicely.

Still, if anyone has any tips, please do tell!

Share this post


Link to post
Share on other sites

the solution to your question is quite long.

here is a tutorial specifically on your question.

http://www.cmivfx.com/tutorials/view/276/Houdini+Smoke+And+Dust

...Large Scale Pyro Simulation in depth

Up until now, we have been working with a smaller scale, atypical "enhancement scene" in which the hero of the shot would not be the smoke. However in this Blockbuster Film style, large scale hero smoke effect shot, we take what you have learned so far to the next level by increasing everything! Below is a simple breakdown of the steps used in the project.

vimeo teaser

Share this post


Link to post
Share on other sites

Hey Ahmad,

I asked Julien to have a look at it and he suggested the following:

In order to get your volume to expand more, you can scatter points in it on every frame and have those points add to the divergence field. You could choose to use your vorticles too. You can also scatter vorticles on the edge of the fluid at every frame to break up the edges of your smoke volume. (So you would have two sets of vorticles, 1) which flows and gets advected with the simulation and another set which just advects the edges (and gets regenerated each frame) -- basically you scatter points only on the edges where your "density < 0.3" for example.)

(gas particle to field will help you transfer values). Generally you want a non-divergent simulation, but with explosions you actually want the smoke to diverge hugely, so you want to add to your divegence field.

Also the vorticles that get advected by the sim can inject heat into the sim. You make sure that the default cooling rate is quite high, so the smoke cools down quickly, that way when you keep adding "hot spots" within the volume you get the "bubbling smoke" feeling. The rolling clouds come from the hot core to the outside edge.

Divergence is a float field (like density). And in the fluid sim the gradient of the divergence field will be used to advect your fields. In simple terms: think about density, the difference from a point with high density and low density will give you a vector. This vector is added/blended with the existing velocity. Generally density can be used for divergence, but as I said, you can add to your divergence field manually and make it expand a lot more. The difference between the high and low value is called "the gradient" (not just in fluid sims).

In the files that came with my thesis I use custom fields to manipulate the velocity, temperature and color and I build my own gradient vector based on custom volumes and add it to the velocity directly, so you can have a look at that for an example.

Not sure if I'm convinced by the cmivfx tutorial. It looks ok - haven't seen it yet, so can't really comment. If he's using default pyro it might be a bit slow.

My computer lies in pieces as I'm doing watercooling atm, but Julien might post you a file tomorrow.

If you have questions about the above, please ask as I don't know exactly how detailed I should explain.

4 people like this

Share this post


Link to post
Share on other sites

Hey Ahmad,

I asked Julien to have a look at it and he suggested the following:

In order to get your volume to expand more, you can scatter points in it on every frame and have those points add to the divergence field. You could choose to use your vorticles too. You can also scatter vorticles on the edge of the fluid at every frame to break up the edges of your smoke volume. (So you would have two sets of vorticles, 1) which flows and gets advected with the simulation and another set which just advects the edges (and gets regenerated each frame) -- basically you scatter points only on the edges where your "density < 0.3" for example.)

(gas particle to field will help you transfer values). Generally you want a non-divergent simulation, but with explosions you actually want the smoke to diverge hugely, so you want to add to your divegence field.

Also the vorticles that get advected by the sim can inject heat into the sim. You make sure that the default cooling rate is quite high, so the smoke cools down quickly, that way when you keep adding "hot spots" within the volume you get the "bubbling smoke" feeling. The rolling clouds come from the hot core to the outside edge.

Divergence is a float field (like density). And in the fluid sim the gradient of the divergence field will be used to advect your fields. In simple terms: think about density, the difference from a point with high density and low density will give you a vector. This vector is added/blended with the existing velocity. Generally density can be used for divergence, but as I said, you can add to your divergence field manually and make it expand a lot more. The difference between the high and low value is called "the gradient" (not just in fluid sims).

In the files that came with my thesis I use custom fields to manipulate the velocity, temperature and color and I build my own gradient vector based on custom volumes and add it to the velocity directly, so you can have a look at that for an example.

Not sure if I'm convinced by the cmivfx tutorial. It looks ok - haven't seen it yet, so can't really comment. If he's using default pyro it might be a bit slow.

My computer lies in pieces as I'm doing watercooling atm, but Julien might post you a file tomorrow.

If you have questions about the above, please ask as I don't know exactly how detailed I should explain.

Hey Peter,

Thanks, this is definitely working better already. I had a play around and Ive managed to get particles advecting (divergence?) the pyro system. My main stumbling block has been the vorticle emission along the edge of the fluids.

Gas Vorticle DOP does not seem to import vorticles every frame, only the start frame, any way around that? Am I right in thinking the scattered points need to be connected to the third (not fourth) input of the pyro solver? Ive currently resorted to a sop geometry dop, though that doesn't get evaluated the same way as vorticles does it?

I'll attach a file soon!

Thanks a load:)

p.s. And watercooling, you overclocking ;) (Was able to get an extra 1.5ghz out of 975 with watercooling, should be fun, now all you need to do is connect it to your graphic cards aswell:p)

Edited by aghourab

Share this post


Link to post
Share on other sites

p.s. And watercooling, you overclocking ;) (Was able to get an extra 1.5ghz out of 975 with watercooling, should be fun, now all you need to do is connect it to your graphic cards aswell:p)

I'll join the geek-blurp: I got watercooling at work but my home aircooling is almost identical in performance. Perhaps even better on hot days. It seems to me that watercooling hits a level and stays there. Ah, but if I remember well, it never gets hot in Britain, and there's a lot of water around. Except in, was it Devon? That's apparently a desert according to the met office.

post-4013-129886278443_thumb.jpg

Edited by Macha

Share this post


Link to post
Share on other sites

I'll join the geek-blurp: I got watercooling at work but my home aircooling is almost identical in performance. Perhaps even better on hot days. It seems to me that watercooling hits a level and stays there. Ah, but if I remember well, it never gets hot in Britain, and there's a lot of water around. Except in, was it Devon? That's apparently a desert according to the met office.

/Offtopic\

All depends on the watercooling:) Generally the highest end aircoolers are better than the lower end watercoolers.

Its when you have an insane case that supports 4 120mm fans for your radiators, and all the thicker tubes that allows for a larger water flow do you really start to see a massive leap in cooling. Not to mention the fact that you can have 1 water cooler that plugs into everything (proc, graphic card, ram) which is just plain neat:D

\End Offtopic/

Share this post


Link to post
Share on other sites

Wow, this is turning into a watercooling thread :lol:

Anyway, this is my setup for adding some details to an explosion (or to some volcano smoke):

volcano_001.zip

Quite simple, as Peter explained. Just think about hot ashes in volcano smoke, with cold air around.

Those hot ashes makes the air expand (positive divergence).

That gives you the basic expansion and rolling motion, that you can break up with vorticles.

let me know if you have any question.

have fun :)

7 people like this

Share this post


Link to post
Share on other sites

Julien, that is a cool file, thanks for sharing, you should keep that for your stash of goodies :).

Edited by pclaes

Share this post


Link to post
Share on other sites

Anyway, this is my setup for adding some details to an explosion (or to some volcano smoke):

Great file, thanks! I was playing with heavy smoke yesterday. This is a result of a purely noise based simulation. I used pyro fx "Billowy Smoke" with alligator noise of roughness 1.0 making turbulence. Lowres simulated in 100^3 voxels and upres in 600^3 voxels.

While a still image looks decent, animation has some weird behavior in it since the noise can produce also negative values causing smoke features to born but then dissappear into a vacuum. Vorticles scattered along the smoke boundary is the way to go. I'll continue my research for rocky smoke.

Here's the result of noise only -solution:

nuke01.jpg

Share this post


Link to post
Share on other sites

That's quite a nice explosion there, it evolves so beautifully. You're the indisputed volume master, Bunker!

We have a volcano eruption here at the moment. This one, a couple of weeks ago, broke windows several kilometers away:

and this:

There was another brilliant one just a few days ago where a violent explosion caused lava to shoot out of a dust cloud, but I cant find a video of it! And at night the static in the dust clouds creates violent thunderbolts zapping through.

Aaaaragh! I so wish I was there now! Fresh rocks!

Edited by Macha

Share this post


Link to post
Share on other sites

Check out that one :

:)

Edited by bunker

Share this post


Link to post
Share on other sites

Here is a quick lowres I did using the same technique I posted

( with 4 point lights and a default basicSmoke shader with raytracing )

post-3635-129890301718_thumb.jpg

Edited by bunker

Share this post


Link to post
Share on other sites

Man, you are having too much fun :)! Great stuff!

Share this post


Link to post
Share on other sites

very cool example!

but I don't understand the use of the vorticles. I thought that they are generated inside the smoke solver, so I don't understand why you added them. I'm missing something.

just for clarity: vorticles are points used to add detail and "vorticity" to the simulation, and the "vortex confinement" parameter in the smoke solver adjust how much vortex force is transferred from those points. It's right?

Share this post


Link to post
Share on other sites

Wow, this is turning into a watercooling thread :lol:

Anyway, this is my setup for adding some details to an explosion (or to some volcano smoke):

volcano_001.zip

Quite simple, as Peter explained. Just think about hot ashes in volcano smoke, with cold air around.

Those hot ashes makes the air expand (positive divergence).

That gives you the basic expansion and rolling motion, that you can break up with vorticles.

let me know if you have any question.

have fun :)

Hah, sweet! Thats great:) I sort of (partially (sort off)) managed to get something working, but this is great:)

I think this answers all of my questions, thanks for the share Julian! :)

(p.s. Watercooling + overclocking = faster Pyro! Now if only Sidefx could allow me to tap into the dormant 1600 cuda cores in my pc...)

Edited by aghourab

Share this post


Link to post
Share on other sites

very cool example!

but I don't understand the use of the vorticles. I thought that they are generated inside the smoke solver, so I don't understand why you added them. I'm missing something.

just for clarity: vorticles are points used to add detail and "vorticity" to the simulation, and the "vortex confinement" parameter in the smoke solver adjust how much vortex force is transferred from those points. It's right?

Although they have a similar purpose you are mixing two different elements here:

The goal: introduce extra swirl:

1) vorticity confinement: compensate for potentially lost swirl due to rounding/averaging of your velocity. This depends purely on fields, so no points or no geometry. Have a look inside the "gas vortex confinement" digital asset. This will show you how the vorticity confinement really works: It's based on the cross product between the vortex direction and the curl:

(vortex_direction X curl) => curl is similar to a curvature calculation on a polygon mesh, but then for volumes... so you then calculate the length of those curl vectors and only apply the confinement where there is high curl.

The vortex_direction = gradient(length(curl))

This is controlled on the smoke solver with the vortex confinement parameter.

2) vorticles: "artificial" or artistic influence objects. These are points (particles) that you can add to your system and be advected along with your sim. (They are geometry, and you can advect geometry fairly easily if you add it to the sim. Advect any mesh by a sim, it's quite fun to see stuff melt.) These are controlled by their "mag" attribute (magnitude). Hmm, just noticed that on the smoke solver, doesn't really make sense to me to control it through the smoke solver. Probably that gets linked when you add them through the shelf.

-> makes much more sense to me to do it like in Julien's file. Control their influence yourself, per particle.

2 people like this

Share this post


Link to post
Share on other sites

Oh I found that lava-explosion video. It's quite bad quality though.

http://www.47news.jp/movie/general_national/post_2353/

And some pics of the same volcano with lightning.

Now, there's something Bunker can play with!

Is that real Macha??? :D Didn't know you get lightning in a volcano (then again I am no physics expert).

That said, smoke in the video needs upres :P

Explosion shot getting there now, come Friday I should have a video to share + files.

Share this post


Link to post
Share on other sites

pretty fantastic solution by bunker. its like an aggregation system based in fluids, which makes a lot of sense for that kind of effect

Share this post


Link to post
Share on other sites

pretty fantastic solution by bunker. its like an aggregation system based in fluids, which makes a lot of sense for that kind of effect

Agreed. It really does the trick.

Sidefx should produce example files like this demonstrating the real capabilities of the pyrotools and that sophisticated, deeper control for volumes you get only in Houdini. All in all, DOPs remaing extremely blurry area when it goes beyond the "pick a sphere and click pyro fx from the shelf". Various data, their solving order etc. are difficult to perceive. Thus files like Bunker's -not too large but not too simple- would be most welcome.

Share this post


Link to post
Share on other sites

Wow, this is turning into a watercooling thread :lol:

Anyway, this is my setup for adding some details to an explosion (or to some volcano smoke):

volcano_001.zip

Quite simple, as Peter explained. Just think about hot ashes in volcano smoke, with cold air around.

Those hot ashes makes the air expand (positive divergence).

That gives you the basic expansion and rolling motion, that you can break up with vorticles.

let me know if you have any question.

have fun :)

Nice stuff! Thanks for sharing :)

Share this post


Link to post
Share on other sites

Thanks Bunker and Peter.

Really nice DOP's custom stuff!!!

Share this post


Link to post
Share on other sites

Thanks Peter for the explanation, I will study better how the vorticles works now..

In the bunker's file example there isa a gas recycle vorticles, but in reality inside it's entirely replaced with a custom sop solver to generate points with attributes (the vorticles).

I tried to put the sop solver outside the gas vorticle recycle and in fact it works.

can I ask why bunker started from the gas recycle vorticles?

The points are generated in the same fashion as the points in the other sop solver to generate the divergence field.

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