Page MenuHome

Mantaflow: changing 'upres' value for noise destroys sim bake (using 'modular' cache)
Closed, ResolvedPublicBUG


System Information
Operating system: Windows-10-10.0.18362-SP0 64 Bits
Graphics card: GeForce GTX 1060/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 446.14

Blender Version
Broken: version: 2.83.0, branch: master, commit date: 2020-06-03 14:38, hash: rB211b6c29f771
Worked: 2.82a and previous versions

Short description of error
[Any change from the default upres value in Domain settings kills/frees the sim bake]

Exact steps for others to reproduce the error
[Bake the attached, then check 'noise'; if you then change the upres setting at all you will lose the bake, and have to re-bake before you can bake the noise pass.

I don't know if this is a fault or a feature, but it certainly isn't an improvement to the 'modular' cache workflow (if anything it's back to the old 2.79/2.8 smoke sim 'do everything at once, and if it's not what you want- do the whole thing again' type of workflow). And it's not how the upres setting behaved in 2.82a or previous incarnations of Mantaflow in Blender.

I'd say this is a great shame if it is a feature, as the ability to bake the sim, then try different upres settings was, what I previously thought was fantastic, compared to the 'old' smoke sim.

Here's the difference between 2.82a (first) and 2.83-



I also tried this in 2.9 Alpha (24th June build) and it behaves the same as 2.83 release version, i.e. not like 2.82a or previous versions.

Event Timeline

Philipp Oeser (lichtwerk) changed the task status from Needs Triage to Confirmed.Jun 25 2020, 6:30 PM

Not totally sure, but to me clearing the sim also seems unneccessary?

@Sebastián Barschkis (sebbas): shouldnt the following actually be enough?

3diff --git a/source/blender/makesrna/intern/rna_fluid.c b/source/blender/makesrna/intern/rna_fluid.c
4index b4fa791362f..5bb727c739b 100644
5--- a/source/blender/makesrna/intern/rna_fluid.c
6+++ b/source/blender/makesrna/intern/rna_fluid.c
7@@ -1547,7 +1547,7 @@ static void rna_def_fluid_domain_settings(BlenderRNA *brna)
8 "The noise simulation is scaled up by this factor (compared to the "
9 "base resolution of the domain)");
10 RNA_def_property_clear_flag(prop, PROP_ANIMATABLE);
11- RNA_def_property_update(prop, NC_OBJECT | ND_MODIFIER, "rna_Fluid_domain_reset");
12+ RNA_def_property_update(prop, NC_OBJECT | ND_MODIFIER, "rna_Fluid_noisecache_reset");
14 prop = RNA_def_property(srna, "noise_type", PROP_ENUM, PROP_NONE);
15 RNA_def_property_enum_sdna(prop, NULL, "noise_type");
16@@ -1555,7 +1555,7 @@ static void rna_def_fluid_domain_settings(BlenderRNA *brna)
17 RNA_def_property_ui_text(
18 prop, "Noise Method", "Noise method which is used during the high-res simulation");
19 RNA_def_property_clear_flag(prop, PROP_ANIMATABLE);
20- RNA_def_property_update(prop, NC_OBJECT | ND_MODIFIER, "rna_Fluid_domain_reset");
21+ RNA_def_property_update(prop, NC_OBJECT | ND_MODIFIER, "rna_Fluid_noisecache_reset");
23 prop = RNA_def_property(srna, "use_noise", PROP_BOOLEAN, PROP_NONE);
24 RNA_def_property_boolean_sdna(prop, NULL, "flags", FLUID_DOMAIN_USE_NOISE);

It is a bit hard to test atm, since after the VDB cache commits, the noise baking seems to be broken...?
Anyways, I tested this on a commit before rB9fe64948abe9, and it seems to work fine (I might be missing something though...)

It is a bit hard to test atm, since after the VDB cache commits, the noise baking seems to be broken...?

see T78272: Mantaflow - Bake not showing (when noise is used)

Mark Spink (marks) closed this task as Resolved.Jul 2 2020, 3:05 AM
Mark Spink (marks) claimed this task.
This comment was removed by Mark Spink (marks).

Marked as resolved by mistake! Sorry! Can't change it back to 'open'...

Philipp Oeser (lichtwerk) reopened this task as Confirmed.Jul 2 2020, 7:20 AM

I've tried today to play with resolutions of particles in liquid and noise in gas and after the commit by @Sebastián Barschkis (sebbas) in he seems to have fixed every cache problem in mantaflow. Go take a look and mark as Resolved.

Ok good, closing now!