[Bf-blender-cvs] [96334c0] fluid-mantaflow: fix for openvdb caching
Sebastián Barschkis
noreply at git.blender.org
Sun Aug 14 00:04:49 CEST 2016
Commit: 96334c0719bb916e9f95f01b30b3137a59cff04a
Author: Sebastián Barschkis
Date: Sat Aug 13 23:55:12 2016 +0200
Branches: fluid-mantaflow
https://developer.blender.org/rB96334c0719bb916e9f95f01b30b3137a59cff04a
fix for openvdb caching
===================================================================
M source/blender/blenkernel/intern/pointcache.c
===================================================================
diff --git a/source/blender/blenkernel/intern/pointcache.c b/source/blender/blenkernel/intern/pointcache.c
index 8b43d1c..7eaefbc 100644
--- a/source/blender/blenkernel/intern/pointcache.c
+++ b/source/blender/blenkernel/intern/pointcache.c
@@ -981,7 +981,11 @@ static void compute_fluid_matrices(SmokeDomainSettings *sds)
mul_m4_m4m4(sds->fluidmat, sds->obmat, sds->fluidmat);
+#ifndef WITH_MANTA
if (sds->wt) {
+#else
+ if (sds->fluid && sds->flags & MOD_SMOKE_HIGHRES) {
+#endif
float voxel_size_high[3];
/* construct high res matrix */
mul_v3_v3fl(voxel_size_high, sds->cell_size, 1.0f / (float)(sds->amplify + 1));
@@ -1023,11 +1027,19 @@ static int ptcache_smoke_openvdb_write(struct OpenVDBWriter *writer, void *smoke
OpenVDBWriter_add_meta_int(writer, "blender/smoke/fluid_fields", fluid_fields);
+#ifndef WITH_MANTA
if (sds->wt) {
+#else
+ if (sds->fluid && sds->flags & MOD_SMOKE_HIGHRES) {
+#endif
struct OpenVDBFloatGrid *wt_density_grid;
- float *dens, *react, *fuel, *flame, *tcu, *tcv, *tcw, *r, *g, *b;
+ float *dens, *react, *fuel, *flame, *tcu, *tcv, *tcw, *tcu2, *tcv2, *tcw2, *r, *g, *b;
+#ifndef WITH_MANTA
smoke_turbulence_export(sds->wt, &dens, &react, &flame, &fuel, &r, &g, &b, &tcu, &tcv, &tcw);
+#else
+ smoke_turbulence_export(sds->fluid, &dens, &react, &flame, &fuel, &r, &g, &b, &tcu, &tcv, &tcw, &tcu2, &tcv2, &tcw2);
+#endif
wt_density_grid = OpenVDB_export_grid_fl(writer, "density", dens, sds->res_wt, sds->fluidmat_wt, NULL);
clip_grid = wt_density_grid;
@@ -1187,10 +1199,18 @@ static int ptcache_smoke_openvdb_read(struct OpenVDBReader *reader, void *smoke_
OpenVDB_import_grid_ch(reader, "obstacles", &obstacles, sds->res);
}
+#ifndef WITH_MANTA
if (sds->wt) {
- float *dens, *react, *fuel, *flame, *tcu, *tcv, *tcw, *r, *g, *b;
+#else
+ if (sds->fluid && sds->flags & MOD_SMOKE_HIGHRES) {
+#endif
+ float *dens, *react, *fuel, *flame, *tcu, *tcv, *tcw, *tcu2, *tcv2, *tcw2, *r, *g, *b;
+#ifndef WITH_MANTA
smoke_turbulence_export(sds->wt, &dens, &react, &flame, &fuel, &r, &g, &b, &tcu, &tcv, &tcw);
+#else
+ smoke_turbulence_export(sds->fluid, &dens, &react, &flame, &fuel, &r, &g, &b, &tcu, &tcv, &tcw, &tcu2, &tcv2, &tcw2);
+#endif
OpenVDB_import_grid_fl(reader, "density", &dens, sds->res_wt);
More information about the Bf-blender-cvs
mailing list