diff --git a/backend/app/domains/rendering/workflow_runtime_services.py b/backend/app/domains/rendering/workflow_runtime_services.py index 4ad95f7..f5c1ba3 100644 --- a/backend/app/domains/rendering/workflow_runtime_services.py +++ b/backend/app/domains/rendering/workflow_runtime_services.py @@ -953,7 +953,7 @@ def build_order_line_render_invocation( output_filename=output_filename, output_path=str(output_dir / output_filename), is_animation=bool(output_type and output_type.is_animation), - is_cinematic=bool(output_type and render_settings.get("cinematic")), + is_cinematic=bool(output_type and output_type.render_settings and output_type.render_settings.get("cinematic")), width=width, height=height, engine=str(engine) if engine not in (None, "") else None, diff --git a/backend/app/services/render_blender.py b/backend/app/services/render_blender.py index d42e7e5..23a0203 100644 --- a/backend/app/services/render_blender.py +++ b/backend/app/services/render_blender.py @@ -566,6 +566,9 @@ def render_turntable_to_file( t0 = time.monotonic() + if isinstance(usd_path, str) and usd_path.strip(): + usd_path = Path(usd_path) + # 1. GLB conversion (OCC) — skipped when usd_path is provided use_usd = bool(usd_path and usd_path.exists()) @@ -804,6 +807,9 @@ def render_cinematic_to_file( t0 = time.monotonic() + if isinstance(usd_path, str) and usd_path.strip(): + usd_path = Path(usd_path) + # 1. GLB conversion (OCC) — skipped when usd_path is provided use_usd = bool(usd_path and usd_path.exists())