Documentation for Mantaflow Gas needs more examples and better descriptions #74353

Open
opened 2020-03-02 06:26:39 +01:00 by Andrew Price · 10 comments

After voicing this on twitter, Aaron Carlisle suggested I report it as a bug.

The manual entry for mantaflow gas is, in my opinion, rather incomplate. In most cases, a description is not enough to understand what a setting does, which means the user ends up running all their own comparisons locally. Comparisons are the most helpful thing to understanding simulation settings, so ideally there would be one for every setting. Furthermore, some of the current entries are misleading or even wrong.

For example:

  • How does Fuel function? The manual says "Amount of “fuel” being burned per second..." but this isn't helpful for anything beyond a candle. The "fuel" of any fire is size of the emitting object or life of a particle. So would increasing from 1 either; A) burn faster, B) occupy more voxels by default (like particle size setting), or C) expand to consume more area outside of the original emitter? In my test it seems both A and C is true. A developer needs to explain what it's actually doing. Fuel Rendered.mp4

  • **What is CFL?**The manual says that lower values give more accurate simulations, yet I find the opposite to be true. It needs far more documentation to explain how this relates to time stepping (as I'm still confused).

  • Resolution Divisions The manual needs to explicitly state that the resolution will also affect the scale (and therefore perceived speed) of the smoke. It's important because most artists test at low-res till happy, then bake at higher res, then get frustrated that the smoke appears to move slower. Eg. if a 128 res smoke rises 5m, a 256 res smoke with the same settings might rise only 3.5m. Furthermore if the smoke is hitting the top of your domain box, you should try increasing the resolution along with making the box taller.
    Divisions.mp4

  • Scale - It would be helpful if real-world scale is discussed somewhere in the doc. If I use the same settings from a 2x2m then scale it to 200x200m, would that change the behaviour?

  • Time- Is the Time field based on the FPS settings in the project or is it independant? Eg. If I need to bake something for a 60FPS video, should I change the Time to 0.4 AND change the FPS to 60 in the output settings?

  • Flame Smoke "This smoke is best visible when using a “Fire + Smoke” Flow Object." Not true. Fire + Smoke makes the emitter emit both, whereas Fire alone is actually what would allow you to see the Flame Smoke created by the fire more clearly.

  • Geometry vs Inflow Particles - Both types of Flow objects allow you to set the source as a Particle System, but the documentation makes no mention of what the difference is.

  • Noise is completely missing - Very essential feature that didn't get a mention. What does each level of noise do? Is it subdividing it by the amount of levels, for each division? eg. Is a 256 res with 2 levels of noise the equivalent geometry of 1024 res domain?

  • Noise Scale - Does this change in relation to the real-world size of the domain, the number of divisions or both? I find a lot of inconsistency with this for almost every bake. Needs a developer's input.

  • Noise Time - I can't see what this does. I've tried everything from 0.1, 5, and 10 and saw no difference. Needs developer input.

After voicing this on twitter, [Aaron Carlisle suggested I report it as a bug. ](https://twitter.com/Blendify1/status/1234291120303157248) The manual entry for [mantaflow gas](https://docs.blender.org/manual/en/latest/physics/fluid/type/domain/settings.html#smoke) is, in my opinion, rather incomplate. In most cases, a description is not enough to understand what a setting does, which means the user ends up running all their own comparisons locally. Comparisons are the most helpful thing to understanding simulation settings, so ideally there would be one for every setting. Furthermore, some of the current entries are misleading or even wrong. For example: - **How does Fuel function?** The manual says *"Amount of “fuel” being burned per second..."* but this isn't helpful for anything beyond a candle. The "fuel" of any fire is size of the emitting object or life of a particle. So would increasing from 1 either; A) burn faster, B) occupy more voxels by default (like particle size setting), or C) expand to consume more area outside of the original emitter? In my test it seems both A and C is true. A developer needs to explain what it's actually doing. [Fuel Rendered.mp4](https://archive.blender.org/developer/F8382846/Fuel_Rendered.mp4) - **What is CFL?**The manual says that lower values give more accurate simulations, yet I find [the opposite to be true](https://imgur.com/a/AwTC6c9). It needs far more documentation to explain how this relates to time stepping (as I'm still confused). - **Resolution Divisions** The manual needs to explicitly state that the resolution will also affect the scale (and therefore perceived speed) of the smoke. It's important because most artists test at low-res till happy, then bake at higher res, then get frustrated that the smoke appears to move slower. Eg. if a 128 res smoke rises 5m, a 256 res smoke with the same settings might rise only 3.5m. Furthermore if the smoke is hitting the top of your domain box, you should try increasing the resolution along with making the box taller. [Divisions.mp4](https://archive.blender.org/developer/F8382951/Divisions.mp4) - **Scale** - It would be helpful if real-world scale is discussed somewhere in the doc. If I use the same settings from a 2x2m then scale it to 200x200m, would that change the behaviour? - **Time**- Is the Time field based on the FPS settings in the project or is it independant? Eg. If I need to bake something for a 60FPS video, should I change the Time to 0.4 AND change the FPS to 60 in the output settings? - **Flame Smoke** *"This smoke is best visible when using a “Fire + Smoke” Flow Object."* Not true. Fire + Smoke makes the emitter emit both, whereas Fire alone is actually what would allow you to see the Flame Smoke created by the fire more clearly. - **Geometry vs Inflow Particles** - Both types of Flow objects allow you to set the source as a Particle System, but the documentation makes no mention of what the difference is. - **Noise is completely missing** - Very essential feature that didn't get a mention. What does each level of noise do? Is it subdividing it by the amount of levels, for each division? eg. Is a 256 res with 2 levels of noise the equivalent geometry of 1024 res domain? - **Noise Scale** - Does this change in relation to the real-world size of the domain, the number of divisions or both? I find a lot of inconsistency with this for almost every bake. Needs a developer's input. - **Noise Time** - I can't see what this does. I've tried everything from 0.1, 5, and 10 and saw no difference. Needs developer input.
Author

Added subscriber: @AndrewPrice

Added subscriber: @AndrewPrice
Member

Added subscribers: @sebbas, @Blendify

Added subscribers: @sebbas, @Blendify
Member

Changed status from 'Needs Triage' to: 'Confirmed'

Changed status from 'Needs Triage' to: 'Confirmed'
Member

I will make a detailed reply later.

I will make a detailed reply later.

Added subscriber: @rlguy

Added subscriber: @rlguy
Member

I still want to write a lengthier comment but I want to address the point on:

Noise is completely missing - Very essential feature that didn't get a mention. What does each level of noise do? Is it subdividing it by the amount of levels, for each division? eg. Is a 256 res with 2 levels of noise the equivalent geometry of 1024 res domain?

https://docs.blender.org/manual/en/2.82/physics/fluid/type/domain/gas/noise.html says:

Factor by which to enhance the resolution of the noise. The scaling factor is coupled to the Resolution Divisions.

So its similar to the detail setting on the noise texture node. It is coupled the resolution so yes it does work how you describe but I believe 256 res with 2 levels noise would be equivalent to 512 domain res not "1024".

Perhaps the description can be expanded to make that connection more clear by giving an example with numbers but I would not say that "Noise is completely missing".

I still want to write a lengthier comment but I want to address the point on: > Noise is completely missing - Very essential feature that didn't get a mention. What does each level of noise do? Is it subdividing it by the amount of levels, for each division? eg. Is a 256 res with 2 levels of noise the equivalent geometry of 1024 res domain? https://docs.blender.org/manual/en/2.82/physics/fluid/type/domain/gas/noise.html says: > Factor by which to enhance the resolution of the noise. The scaling factor is coupled to the Resolution Divisions. So its similar to the detail setting on the noise texture node. It is coupled the resolution so yes it does work how you describe but I believe 256 res with 2 levels noise would be equivalent to 512 domain res not "1024". Perhaps the description can be expanded to make that connection more clear by giving an example with numbers but I would not say that "Noise is completely missing".
Author

Thanks! I completely missed that page.

Your description makes sense. Though if 256 with 2 levels of noise is 512, then what would 1 level of noise be?

Also, if you have time now could you specifically answer my question on Scale and Noise Scale? Coz I need to know that for my tutorial this week :P

Thanks! I completely missed that page. Your description makes sense. Though if 256 with 2 levels of noise is 512, then what would 1 level of noise be? Also, if you have time now could you specifically answer my question on Scale and Noise Scale? Coz I need to know that for my tutorial this week :P
Member

Noise Time

Think of this as a seed value for noise, if you are familiar with 4D textures this will make sense.
If you want to understand this play with the 4D Noise texture node. Altering the W value is the same as "Time" here.

This is explained in the manual see also this comment https://blenderartists.org/t/lets-talk-about-mantaflow/644346/676
Which discusses CFL number also.

> Noise Time Think of this as a seed value for noise, if you are familiar with 4D textures this will make sense. If you want to understand this play with the 4D Noise texture node. Altering the W value is the same as "Time" here. This is explained in the manual see also this comment https://blenderartists.org/t/lets-talk-about-mantaflow/644346/676 Which discusses CFL number also.
Author

Very true, sorry I didn't read through that page clearly enough. Thanks Aaron!

Very true, sorry I didn't read through that page clearly enough. Thanks Aaron!
Member

I have asked @sebbas the developer of Mantaflow integration to comment of some of these vague areas.

Noise Scale will work a similar scale on a noise texture node, I am unsure if it is dependent on domain size.


@sebbas Particular feedback on "How does Fuel function?", "Resolution Divisions", "Time/FPS Scale (how is scene fps influenced)", object scale and what other scale factors are/are not affected by domain scale.

I have asked @sebbas the developer of Mantaflow integration to comment of some of these vague areas. Noise Scale will work a similar scale on a noise texture node, I am unsure if it is dependent on domain size. ----- @sebbas Particular feedback on "How does Fuel function?", "Resolution Divisions", "Time/FPS Scale (how is scene fps influenced)", object scale and what other scale factors are/are not affected by domain scale.
Sign in to join this conversation.
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender-manual#74353
No description provided.