Index: release/scripts/op/presets.py =================================================================== --- release/scripts/op/presets.py (revision 28254) +++ release/scripts/op/presets.py (working copy) @@ -202,13 +202,41 @@ preset_subdir = "interaction" + +class AddPresetParticleFluid(AddPresetBase): + '''Add a Particle Fluids Physics Preset''' + bl_idname = "particles.pphys_fluid_add" + bl_label = "Add fluid physics Preset" + name = AddPresetBase.name + + preset_values = [ + "bpy.context.active_object.active_particle_system.settings.brownian_factor", + "bpy.context.active_object.active_particle_system.settings.drag_factor", + "bpy.context.active_object.active_particle_system.settings.damp_factor", + "bpy.context.active_object.active_particle_system.settings.size_deflect", + "bpy.context.active_object.active_particle_system.settings.die_on_collision", + "bpy.context.active_object.active_particle_system.settings.fluid.fluid_radius", + "bpy.context.active_object.active_particle_system.settings.fluid.stiffness_k", + "bpy.context.active_object.active_particle_system.settings.fluid.stiffness_knear", + "bpy.context.active_object.active_particle_system.settings.fluid.rest_density", + "bpy.context.active_object.active_particle_system.settings.fluid.viscosity_omega", + "bpy.context.active_object.active_particle_system.settings.fluid.viscosity_beta", + "bpy.context.active_object.active_particle_system.settings.fluid.spring_k", + "bpy.context.active_object.active_particle_system.settings.fluid.rest_length", + "bpy.context.active_object.active_particle_system.settings.fluid.buoyancy" + ] + + preset_subdir = "pphys_fluid" + + classes = [ ExecutePreset, AddPresetRender, AddPresetSSS, AddPresetCloth, AddPresetSunSky, - AddPresetInteraction] + AddPresetInteraction, + AddPresetParticleFluid] def register(): @@ -223,4 +251,4 @@ unregister(cls) if __name__ == "__main__": - register() + register() \ No newline at end of file Index: release/scripts/ui/properties_particle.py =================================================================== --- release/scripts/ui/properties_particle.py (revision 28254) +++ release/scripts/ui/properties_particle.py (working copy) @@ -353,6 +353,13 @@ sub.prop(part, "angular_velocity_factor", text="") +class PARTICLE_MT_fluid_presets(bpy.types.Menu): + bl_label = "Fluid Physics Presets" + preset_subdir = "pphys_fluid" + preset_operator = "script.python_file_run" + draw = bpy.types.Menu.draw_preset + + class PARTICLE_PT_physics(ParticleButtonsPanel): bl_label = "Physics" @@ -400,6 +407,12 @@ elif part.physics_type == 'FLUID': fluid = part.fluid + row = layout.row().split() + sub = row.row(align=True).split(percentage=0.75) + + sub.menu("PARTICLE_MT_fluid_presets", text=bpy.types.PARTICLE_MT_fluid_presets.bl_label) + sub.operator("particles.pphys_fluid_add", text="", icon="ZOOMIN") + split = layout.split() sub = split.column() @@ -1057,6 +1070,7 @@ PARTICLE_PT_velocity, PARTICLE_PT_rotation, PARTICLE_PT_physics, + PARTICLE_MT_fluid_presets, PARTICLE_PT_boidbrain, PARTICLE_PT_render, PARTICLE_PT_draw, @@ -1080,4 +1094,4 @@ unregister(cls) if __name__ == "__main__": - register() + register() \ No newline at end of file