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:
authorDaniel Genrich <daniel.genrich@gmx.net>2009-09-09 22:39:40 +0400
committerDaniel Genrich <daniel.genrich@gmx.net>2009-09-09 22:39:40 +0400
commit8e2d86169599d652170ebe8b2564650f00f70077 (patch)
tree2989704f3a877b652453bdbcc566417c11d75575 /release
parentace94617c73651e78a8d65cbca83400f867a961e (diff)
Smoke:
* Enable cache for high res + new preview * Bugfix for smoke banding (in cooperation with N_T) Hint: Work-in-progress regarding collision objects so can be broken, didn't test Hint2: jahka enabled a general particle panel but * bake button doesn't work * step is not supported for cloth * several other things there ;)
Diffstat (limited to 'release')
-rw-r--r--release/ui/buttons_physics_smoke.py82
1 files changed, 19 insertions, 63 deletions
diff --git a/release/ui/buttons_physics_smoke.py b/release/ui/buttons_physics_smoke.py
index c87f71bff42..83c1ffc2e9a 100644
--- a/release/ui/buttons_physics_smoke.py
+++ b/release/ui/buttons_physics_smoke.py
@@ -3,11 +3,6 @@ import bpy
from buttons_particle import point_cache_ui
-def smoke_panel_enabled_low(smd):
- if smd.smoke_type == 'TYPE_DOMAIN':
- return smd.domain.point_cache.baked==False
- return True
-
class PhysicButtonsPanel(bpy.types.Panel):
__space_type__ = 'PROPERTIES'
__region_type__ = 'WINDOW'
@@ -45,8 +40,6 @@ class PHYSICS_PT_smoke(PhysicButtonsPanel):
split.itemL()
if md:
-
- # layout.enabled = smoke_panel_enabled(md)
layout.itemR(md, "smoke_type", expand=True)
if md.smoke_type == 'TYPE_DOMAIN':
@@ -66,7 +59,7 @@ class PHYSICS_PT_smoke(PhysicButtonsPanel):
col.itemR(domain, "dissolve_smoke", text="Dissolve")
sub = col.column()
sub.active = domain.dissolve_smoke
- sub.itemR(domain, "dissolve_speed", text="Speed")
+ sub.itemR(domain, "dissolve_speed", text="Time")
sub.itemR(domain, "dissolve_smoke_log", text="Slow")
elif md.smoke_type == 'TYPE_FLOW':
@@ -90,14 +83,17 @@ class PHYSICS_PT_smoke(PhysicButtonsPanel):
#elif md.smoke_type == 'TYPE_COLL':
# layout.itemS()
-
+
class PHYSICS_PT_smoke_groups(PhysicButtonsPanel):
__label__ = "Smoke Groups"
__default_closed__ = True
def poll(self, context):
md = context.smoke
- return md and (md.smoke_type == 'TYPE_DOMAIN')
+ if md:
+ return (md.smoke_type == 'TYPE_DOMAIN')
+
+ return False
def draw(self, context):
layout = self.layout
@@ -116,7 +112,7 @@ class PHYSICS_PT_smoke_groups(PhysicButtonsPanel):
col = split.column()
col.itemL(text="Collision Group:")
col.itemR(group, "coll_group", text="")
-
+
class PHYSICS_PT_smoke_cache(PhysicButtonsPanel):
__label__ = "Smoke Cache"
__default_closed__ = True
@@ -129,7 +125,7 @@ class PHYSICS_PT_smoke_cache(PhysicButtonsPanel):
layout = self.layout
md = context.smoke.domain_settings
- cache = md.point_cache
+ cache = md.point_cache_low
point_cache_ui(self, cache, cache.baked==False, 0, 1)
@@ -152,7 +148,7 @@ class PHYSICS_PT_smoke_highres(PhysicButtonsPanel):
md = context.smoke.domain_settings
split = layout.split()
-
+
col = split.column()
col.itemL(text="Resolution:")
col.itemR(md, "amplify", text="Divisions")
@@ -161,66 +157,26 @@ class PHYSICS_PT_smoke_highres(PhysicButtonsPanel):
col.itemL(text="Noise Method:")
col.row().itemR(md, "noise_type", text="")
col.itemR(md, "strength")
- col.itemR(md, "show_highres")
+ sub.itemR(md, "viewhighres")
class PHYSICS_PT_smoke_cache_highres(PhysicButtonsPanel):
- __label__ = "Smoke Cache"
+ __label__ = "Smoke High Resolution Cache"
__default_closed__ = True
def poll(self, context):
- return (context.smoke)
+ md = context.smoke
+ return md and (md.smoke_type == 'TYPE_DOMAIN') and md.domain_settings.highres
def draw(self, context):
layout = self.layout
- md = context.smoke
-
- cache = md.point_cache
-
- layout.set_context_pointer("PointCache", cache)
-
- row = layout.row()
- row.template_list(cache, "point_cache_list", cache, "active_point_cache_index")
- col = row.column(align=True)
- col.itemO("ptcache.add_new", icon='ICON_ZOOMIN', text="")
- col.itemO("ptcache.remove", icon='ICON_ZOOMOUT', text="")
-
- row = layout.row()
- row.itemR(cache, "name")
-
- row = layout.row()
- row.itemR(cache, "start_frame")
- row.itemR(cache, "end_frame")
-
- row = layout.row()
-
- if cache.baked == True:
- row.itemO("ptcache.free_bake", text="Free Bake")
- else:
- row.item_booleanO("ptcache.bake", "bake", True, text="Bake")
-
- subrow = row.row()
- subrow.enabled = cache.frames_skipped or cache.outdated
- subrow.itemO("ptcache.bake", "bake", False, text="Calculate to Current Frame")
-
- row = layout.row()
- #row.enabled = smoke_panel_enabled(psys)
- row.itemO("ptcache.bake_from_cache", text="Current Cache to Bake")
-
- row = layout.row()
- #row.enabled = smoke_panel_enabled(psys)
-
- layout.itemL(text=cache.info)
-
- layout.itemS()
+ md = context.smoke.domain_settings
+ cache = md.point_cache_high
- row = layout.row()
- row.itemO("ptcache.bake_all", "bake", True, text="Bake All Dynamics")
- row.itemO("ptcache.free_bake_all", text="Free All Bakes")
- layout.itemO("ptcache.bake_all", "bake", False, text="Update All Dynamics to current frame")
-
+ point_cache_ui(self, cache, cache.baked==False, 0, 1)
+
bpy.types.register(PHYSICS_PT_smoke)
bpy.types.register(PHYSICS_PT_smoke_cache)
+bpy.types.register(PHYSICS_PT_smoke_highres)
bpy.types.register(PHYSICS_PT_smoke_groups)
-#bpy.types.register(PHYSICS_PT_smoke_highres)
-#bpy.types.register(PHYSICS_PT_smoke_cache_highres)
+bpy.types.register(PHYSICS_PT_smoke_cache_highres)