Skip to main content
Version: 1.0.0

Animation

Author: Rossana Mazza Creation Date: 01/10/2025
Last Reviewer: Vincenzo Mossuto

Animation is a critical step that transforms static 3D models into functional digital assets. The following workflow ensures that every product is validated for technical correctness and prepared for optimal Virtual Try-On (VTO) and 3D visualization experiences.

Bulk Animation vs. Signature Animation

The animation workflow is built upon a principle of scalability and efficiency, differentiating between standardized and unique design animations.
The main approach is to create template animations that can be applied in bulk to all models following the naming rules.
When this is not possible, custom animations are developed specifically for the non-standard case.

Bulk Animation (Standardized Animation)

Bulk Animation is the primary practice and covers the vast majority of asset production.

  • Definition: This refers to the creation of Template Animations (such as temple opening/closing or basic component movement) that are reusable across all models adhering to the standardized naming conventions (FF_, TM_SX, HN_*, etc.).
  • Mechanism: The system relies on Blender's NLA (Non-Linear Animation) functionalities. Actions are saved as Blender files and appended to any model, using the Spaarkly Scripts.
  • Primary Advantage: Maximum Production Efficiency. An animation is created once and applied to hundreds of models without further intervention, ensuring visual consistency across the entire catalog.

Signature Animation (Tailored Animation)

Signature Animation is necessary when the product design deviates from the standard model and requires a tailored approach.

  • Definition: These are custom animations created to highlight unique design features, complex mechanisms (e.g., articulated temples or special hinges), or for flagship models.
    They can also start from a template animation and then be adapted for a specific situation.
  • Mechanism: These unique actions still relies on Blender's NLA (Non-Linear Animation) functionalities but just to make sure the export file has the same internal structure to avoiding compatibility issues.
  • Primary Advantage: Technical Flexibility. Animations are applied directly to the 3D model without relying on bulk templates, avoiding compatibility issues and allowing more complex or design-driven movements.

Animation in Blender with NLA

Blender’s Non Linear Animation (NLA) system is at the core of this process.
It allows you to:

  • Store standard actions.
  • Reuse those actions across models with the same nomenclature.
  • Use specific strip names to make them easy to call in ThreeJS or in the VTO.

This approach makes animations scalable and ensures consistency in production, while still leaving flexibility for special cases.

Role of Spaarkly Scripts

The Spaarkly Animation Scripts add-on automates the preparation of models for NLA-based animation.
It ensures that rigs, bones, and transformations are aligned with naming conventions, making bulk reuse possible.

Key tools include:

  • Create Armature (Standard) → Creates one bone per component, using names to match vertex groups automatically.
  • Flexible Armature Generator (Gummy Armature) → Builds deformation-ready rigs for temples, tips, and frame parts, tied to component naming.
  • All the Animation scripts → Apply templates to selected object such as Clip-on, Interchangeable lenses or Explosion Animation.

Suggested Workflow

  1. Prepare the model

    • Run the Final Setup (Full or Cut).
    • Confirm that components follow the naming rules (FF_, TM_SX, TM_DX, etc.).
  2. Generate the rig

    • Using scripts or by manually adding bones to the scene.
  3. Animate bones

    • If the template has been correctly appended the animation should be already there.
    • In case of a new rig, you can add keyframes to the bones, and then store them as reusable actions in the NLA Editor tab.
    • Organize them with consistent naming for bulk reuse.
  4. Custom adjustments (if needed)

    • If a model lacks certain components or has unique features, create or edit custom actions.