Ocean Sim modifier patch
by Matt Ebb, Hamed Zaghaghi This adds a new Modifier "Ocean" to simulate large-scale wave motion. Details can be found in the wiki documentation [1], the project homepage [2] and the patch tracker [3] The modifier is disabled by default for now. To enable it, the WITH_OCEANSIM (cmake) / WITH_BF_OCEANSIM (scons) flags have to be set. The code depends on fftw3, so this also has to be enabled. [1] http://wiki.blender.org/index.php/Doc:2.6/Manual/Modifiers/Simulation/Ocean [2] http://www.savetheoceansim.com [3] http://projects.blender.org/tracker/?group_id=9&atid=127&func=detail&aid=28338
This commit is contained in:
@@ -414,6 +414,74 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
||||
row.operator("object.multires_external_save", text="Save External...")
|
||||
row.label()
|
||||
|
||||
def OCEAN(self, layout, ob, md):
|
||||
col = layout.column()
|
||||
|
||||
if not md.build_enabled:
|
||||
col.label("Built without OceanSim modifier")
|
||||
return
|
||||
|
||||
col.prop(md, "geometry_mode")
|
||||
|
||||
if md.geometry_mode == 'GENERATE':
|
||||
row = col.row()
|
||||
row.prop(md, "repeat_x")
|
||||
row.prop(md, "repeat_y")
|
||||
|
||||
col.separator()
|
||||
|
||||
col.prop(md, "time")
|
||||
col.prop(md, "resolution")
|
||||
colflow = col.column_flow()
|
||||
colflow.prop(md, "spatial_size")
|
||||
colflow.prop(md, "depth")
|
||||
|
||||
|
||||
col.label("Waves:")
|
||||
col.prop(md, "choppiness")
|
||||
col.prop(md, "wave_scale", text="Scale")
|
||||
|
||||
col.prop(md, "wave_alignment", text="Alignment")
|
||||
row = col.row()
|
||||
row.active = md.wave_alignment > 0
|
||||
row.prop(md, "wave_direction", text="Direction")
|
||||
row.prop(md, "damp")
|
||||
|
||||
col.prop(md, "smallest_wave")
|
||||
col.prop(md, "wind_velocity")
|
||||
|
||||
|
||||
col = layout.column()
|
||||
col.separator()
|
||||
|
||||
col.prop(md, "generate_normals")
|
||||
|
||||
split = col.split()
|
||||
split.column().prop(md, "generate_foam")
|
||||
|
||||
col = split.column()
|
||||
col.active = md.generate_foam
|
||||
col.prop(md, "foam_coverage", text="Coverage")
|
||||
|
||||
|
||||
col = layout.column()
|
||||
col.separator()
|
||||
|
||||
if md.is_cached:
|
||||
col.operator("object.ocean_bake", text="Free Bake").free=True
|
||||
else:
|
||||
col.operator("object.ocean_bake")
|
||||
row = col.row()
|
||||
row.enabled = not md.is_cached
|
||||
row.prop(md, "bake_start", text="Start")
|
||||
row.prop(md, "bake_end", text="End")
|
||||
col.prop(md, "cachepath")
|
||||
|
||||
#col.prop(md, "bake_foam_fade")
|
||||
|
||||
|
||||
|
||||
|
||||
def PARTICLE_INSTANCE(self, layout, ob, md):
|
||||
layout.prop(md, "object")
|
||||
layout.prop(md, "particle_system_index", text="Particle System")
|
||||
|
Reference in New Issue
Block a user