UI: add a message to indicate when using a modifier that wasn't

compiled.

This adds a short message to the smoke, remesh and boolean modifiers' UI
when trying to use them when their compilation was turned off. This was
already implemented for the fluid and ocean simulation modifiers.

This also makes the 'quick fluid' and 'quick smoke' operator abort and
report when trying to use them when unavailable.
This commit is contained in:
Kévin Dietrich 2016-12-05 23:33:21 +01:00
parent 7471f09f2b
commit fe0520e2c8
3 changed files with 20 additions and 0 deletions

View File

@ -317,6 +317,10 @@ class QuickSmoke(Operator):
)
def execute(self, context):
if not bpy.app.build_options.mod_smoke:
self.report({'ERROR'}, "Build without Smoke modifier support")
return {'CANCELLED'}
fake_context = context.copy()
mesh_objects = [obj for obj in context.selected_objects
if obj.type == 'MESH']
@ -562,6 +566,10 @@ class QuickFluid(Operator):
)
def execute(self, context):
if not bpy.app.build_options.mod_fluid:
self.report({'ERROR'}, "Build without Fluid modifier support")
return {'CANCELLED'}
fake_context = context.copy()
mesh_objects = [obj for obj in context.selected_objects
if (obj.type == 'MESH' and 0.0 not in obj.dimensions)]

View File

@ -146,6 +146,10 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
layout.row().prop(md, "offset_type", expand=True)
def BOOLEAN(self, layout, ob, md):
if not bpy.app.build_options.mod_boolean:
layout.label("Built without Boolean modifier")
return
split = layout.split()
col = split.column()
@ -1077,6 +1081,10 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
col.prop(md, "narrowness", slider=True)
def REMESH(self, layout, ob, md):
if not bpy.app.build_options.mod_remesh:
layout.label("Built without Remesh modifier")
return
layout.prop(md, "mode")
row = layout.row()

View File

@ -45,6 +45,10 @@ class PHYSICS_PT_smoke(PhysicButtonsPanel, Panel):
def draw(self, context):
layout = self.layout
if not bpy.app.build_options.mod_smoke:
layout.label("Built without Smoke modifier")
return
md = context.smoke
ob = context.object