B3.2 fire scaling

Hi all !

What is the fire/smoke parameters rules for making a fire look the same whatever the 3D scale is ?

thanks and happy blending !

If it is okay to scale the objects (and not the meshes), nothing on the sim, and density on the shader (scale by the same amount as the objects).

If you scale the meshes, for ‘smoke only’ scaling the time scale on the domain seems to suffice. With fire, hmm, really don’t know, but apparently quite a few parameters.

hi @omgold :slight_smile:

I think i made amistake by editing the domain in edit mode ( so that it’s not too big ).

what i did is quite straightforward:

  • make a great fire with objects
  • select all and scale to .1
  • admire the fucked-up result

i still have to dig in this to know and tell more here. i think i’ll post a blend and screenshots…

About the time scale, i’m not sure i can change it as the fire will be part of a global animation that needs a proper time scale ( eg: stones falling… ). I’ll have to confirm this though…

It appears that the ( obfuscated ) params legion of mantaflow are unable to achieve what users need… As usual, it seems an amazing blender feature that is half-finished :face_with_symbols_over_mouth:

i be back soon with more real info :wink:

happy blending !

Back there with a file:
fire-questions.blend (2.6 MB)

1st of all can anybody explain me why this ‘quick smoke’ shows nothing ?

2nd, is there a way to disable this stupid cache that is less than useless ( boring ) when playing around with parameters ?
I have to delete the files each time i change a parameter in source or domain if i want this parameter to be taken in account.

Simple answer: the emitter/flow object is too small (for the grid resolution).

We can agree on that point, at least until the behavior is fixed :slight_smile:

What I currently do is set cache type to modular and bake it every time after a change. Mostly using a quite reduced frame range suffices, so baking doesn’t take too long.

1 Like

Thanks a bunch @omgold ! :smiley:

After some hours of struggle, i came to the conclusion that the resolution is a key parameter, and growing it finally gives some result.
Therefore you confirm what i thought.
As often, there’s no obvious info or tutos that explain this clearly.

About the cache ( bake ) I’m glad to see i’m not the only one feeling it is a burden when user want to change parameters. I sincerely don’t understant why devs did not remove this sh*t as a complete bake is necessary at each parameter change… But i guess this is a dev-team way-of-life, to never finish properly things.
Hopefully my cpu is a Ryzen7 and is muscled enough for a bake in 90sec at each change…

Again, i did the same as you mentioned ( just because the SHIFT+SPACE always use the baked data and often disfunction when you delete the files in the bake data folder ), so you also confirm i’m in the right way…

I have to say that ( like many blender features in the past, terminator, shitty-normals, knife, cycles noise ( that are back in 3.2 ), bad high count lights handling, etc etc etc… ) this fluid part ( that i’m discovering since few days ) is also a pain.
Maybe i should consider that discovering and using blender features can never be done without great pain and a big pack of hacks/workaround ? :rofl:
Blender is however still my best choice ( some say that love is blind :stuck_out_tongue: )

I’ll be back soon with pictures and a blend on the setup i used :slight_smile:

Thanks for your answers and happy blending !

EDIT: so, here’s my 1st result:

It’s not perfectly what i want but it’s a start :smiley:

I’d like the flames more vertical and less noisy, and with more details…
here’s my setup:
Emitter

Domain

If anyone got ideas, all are welcome :smiley:

Note that the fire physics MUST be previously baked for beeing rendered in an anim. Fire can’t be calculated on the fly while rendering frames…

Back there with another simple question:

Now that i baked the 500 frames of my fire physics from 1 to 500, with a resolution of 1024 ( bake lasting for 1582 years… :rofl: ) i’d like to display this short in my global animation at frames 2101 to 2600.

Is there a way to do this ?

Or should i waste 1582 years again, at baking the physics from frame 2101 to 2600 ? :cold_face:

Thanks and happy blending !

EDIT: okay, i think i got it with the offset parameter :slight_smile:

Maybe you could have more detail by breaking the simulation into multiple smaller domains that better fit the shape of the vilage? You would need to move them a tiny bit vertically if they touch each other, Cycles doesn’t like when 2 smoke domains have overlapping faces.

Or, with the size of scene, maybe the smoke simulation is not the best way to do it?
Some other ways that could work:

  • Procedural fire materials. There are versions for both flat and volumetric materials.

  • Rendering an animation of a flame, then placing it on flat planes on the houses as an animated texture. (this technique would need to have the flame and smoke rendered separately, because their transparency works differently, the flames being additive).

Hi @etn249 :smiley:

I’m glad you talk about this: spliting domains.

I thought about this and it’s obvious this should be the right way ( smaller domains + higher resolution = less useless domain cells and better result ).

My try on this was a total mess ( probably not a bug but a mess in my parameters ) that resulted almost always in a blender hang&crash. So i gave-up…

The impostor solution is the old-fashion way to go but i thought that blender’s physics was mature enough for avoiding the ‘same-flame-on-every-house’ problem…

So here’s an interresting result of a 512 resolution domain…

I guess i lowered vorticity too much but i 1st have to add a noise texture in the shader before i change anything…

I be back soon… happy blending ! :slight_smile:

1 Like

At least, with multiple domains, you can prototype on only one of them before extending the simulation! You seem to have a nice amount of detail here, with a bit of playing in the settings, it can probably be even better.

1 Like

oh for sure !
I managed to get a proper result with a small domain and one lil house ! :smiley:
The house at the very right of the pic was my ‘tryout’ house. and it gave really nice results.

The problem is that when i added same domain on every house —> crash
and a big domain on all houses ( what i have for the previous post image ) the result is completely different.

I guess i can get what i want but this needs high res domain and looooong bake time ( this is what i rumble on ) but i get close to what i want.

When i’m ok with the result, i’ll post the blend. i think it can help lots of people :blush:

1 Like

I come with one new question.

when i lower domain size to more suited one, and i also lower resolution so that the lil cube in one corner has the same size as previous domain, theoretically i should get the same result ! shouldn’t i ?

EDIT: in practice, the answer is NO… but there still remains a question: what is the proper way for resizing domain ? object mode ( eg scale != 1 ) or edit mode ?

EDIT2: finally i got a result that will look fine for what i need :smiley:

I will post the blend ASAP…

Thanks and happy blending !

EDIT3: so here’s the blend :slight_smile:
my_fire.blend (3.0 MB)

As far as I know, the proper way to do it is in edit mode (or in object mode, but you apply the scale after).

In theory, the result should be the same if the size of a single cell is the same. However, the behavior of the fire is going to be influenced by the amount of empty area around the flame. That’s because the empty area is not actually empty: the cells without smoke still contain speed values. If you have lots of empty space around a flame, that empty space will be used to simulate the swirling air flows and this will affect the shape of the visible fire. This also applies to adaptive domain, it’s faster to simulate but it affects the shape of the fire a little bit.

1 Like