Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiika Hamalainen <blender@miikah.org>2013-05-10 20:18:00 +0400
committerMiika Hamalainen <blender@miikah.org>2013-05-10 20:18:00 +0400
commit2f9f3dd5903eeec514640de05a45cfd21d168397 (patch)
tree1afc247514d4802f72262d0859998d4533ddee6e /source/blender/makesdna
parent764420ed3dec8e65fdfda1e42401362a6878ed0b (diff)
Smoke: Add new "Full Sample" option to high resolution smoke panel.
This is hopefully the ultimate solution against smoke blockiness near emitter. Previously high resolution flow/emitter voxels were generated based on the low resolution ones. So if you had 32 resolution and 4 division high resolution, it still used smoke flow generated from those 32 resolution voxels. Now I introduced a new sampling method called "Full Sample" that generates full resolution flow for for high resolution domain as well. Read more about it in my blog post: https://www.miikahweb.com/en/blog/2013/05/10/getting-rid-of-smoke-blockiness Also changed "quick smoke" operator default voxel data interpolation mode to "Cubic B-Spline" to smoothen out it even more.
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r--source/blender/makesdna/DNA_smoke_types.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/source/blender/makesdna/DNA_smoke_types.h b/source/blender/makesdna/DNA_smoke_types.h
index fa31717b9e2..042c43c5b93 100644
--- a/source/blender/makesdna/DNA_smoke_types.h
+++ b/source/blender/makesdna/DNA_smoke_types.h
@@ -37,7 +37,7 @@
#define MOD_SMOKE_DISSOLVE (1<<2) /* let smoke dissolve */
#define MOD_SMOKE_DISSOLVE_LOG (1<<3) /* using 1/x for dissolve */
-#define MOD_SMOKE_HIGH_SMOOTH (1<<5) /* smoothens high res emission*/
+#define MOD_SMOKE_HIGH_SMOOTH (1<<5) /* -- Deprecated -- */
#define MOD_SMOKE_FILE_LOAD (1<<6) /* flag for file load */
#define MOD_SMOKE_ADAPTIVE_DOMAIN (1<<7)
@@ -62,6 +62,11 @@
#define SM_COLL_RIGID 1
#define SM_COLL_ANIMATED 2
+/* high resolution sampling types */
+#define SM_HRES_NEAREST 0
+#define SM_HRES_LINEAR 1
+#define SM_HRES_FULLSAMPLE 2
+
/* smoke data fileds (active_fields) */
#define SM_ACTIVE_HEAT (1<<0)
#define SM_ACTIVE_FIRE (1<<1)
@@ -132,7 +137,7 @@ typedef struct SmokeDomainSettings {
float vorticity;
int active_fields;
float active_color[3]; /* monitor color situation of simulation */
- int pad;
+ int highres_sampling;
/* flame parameters */
float burning_rate, flame_smoke, flame_vorticity;