archipack: background renderer use factory-startup to prevent other addon issues

This commit is contained in:
stephen leger 2017-09-01 13:31:09 +02:00
parent 184cd288d9
commit f4d6aad738
2 changed files with 18 additions and 2 deletions

View File

@ -48,13 +48,18 @@ class ARCHIPACK_OT_render_thumbs(Operator):
def background_render(self, context, cls, preset):
generator = path.dirname(path.realpath(__file__)) + path.sep + "archipack_thumbs.py"
addon_name = __name__.split('.')[0]
matlib_path = context.user_preferences.addons[addon_name].preferences.matlib_path
# Run external instance of blender like the original thumbnail generator.
cmd = [
bpy.app.binary_path,
"--background",
"--factory-startup",
"-noaudio",
"--python", generator,
"--",
"addon:" + addon_name,
"matlib:" + matlib_path,
"cls:" + cls,
"preset:" + preset
]

View File

@ -42,7 +42,10 @@ def generateThumb(context, cls, preset):
render = context.scene.cycles
render.progressive = 'PATH'
render.samples = 24
render.use_square_samples = True
try:
render.use_square_samples = True
except:
pass
render.preview_samples = 24
render.aa_samples = 24
render.transparent_max_bounces = 8
@ -179,5 +182,13 @@ if __name__ == "__main__":
cls = arg[4:]
if arg.startswith("preset:"):
preset = arg[7:]
if arg.startswith("matlib:"):
matlib = arg[7:]
if arg.startswith("addon:"):
module = arg[6:]
try:
bpy.ops.wm.addon_enable(module=module)
bpy.context.user_preferences.addons[module].preferences.matlib_path = matlib
except:
raise RuntimeError("module name not found")
generateThumb(bpy.context, cls, preset)