Popular topics: General 3D model requirements How to prepare Bag model in Blender

Watches - current time and hands animation

How to prepare watch model to show current time

Introduction

This document describes how to prepare 3D model of a watch to ensure it shows current time, and dial hands are moving. WANNA VTO technology does it by using a single animation track, combining movements of all hands. This animation runs at 1 FPS, so that each second is a separate animation frame with correct positions of all hands. Most dials are 12 hours, thus animation consists of 43'200 frames. 

This instruction will explain how to adjust your workflow and use a dedicated Blender add-on to create models with this animation.

Important! The Blender Add-on described below supports Blender 3.3 LTS, 3.6 LTS and 4.0.

Restrictions

  • At the moment only hand dials animation is supported, not other moving elements of the watch.
    • This script only works when all three hands share the same pivot axis, it doesn't work for cases when one of the hands rotates around another pivot.
  • Texture animation is not supported.
  • Animation adds ~2MB to the model size, thus increasing download time.

Model production workflow

We suggest the following workflow:

  1. Create 3D model in a software of your choice.
  2. Texture that model in Substance Painter, using WANNA shader for Substance.
  3. Export textured model into Blender.
  4. Prepare model for the script: group/rename nodes and align the model as per requirements.
  5. Run the script.
  6. Position watch onto the wrist, as described in Watches - positioning guide.
  7. Export result to gltf/glb file.

Script installation

  1. Download Watch animation add-on here (right click and “Save Link As”)
  2. Go to Edit -> Preferences -> Add-ons -> Install, choose the file you just downloaded.
  3. Enable it by checking a respective checkbox.

Creating animation with a script

  1. Place the watch dial horizontally on Z=0 plane and place hands pivot in X=0, Y=0 with Z axis being the rotation axis. Dial hands should be pointing to 12 hrs.

 

  1. Make dedicated top level nodes, containing geometry for every dial hand. They should all point to 12 hrs.
  1. Name them as following:
    • hour_hand for hours hand
    • minute_hand for minutes hand
    • second_hand for seconds hand

  1. Make a separate node for the crystal, name it glass.
  2. Click on Analog 12 hours button, it will create animations for all three hands.
  3. Without closing Blender, position watch on the wrist using instructions from Watches - positioning guide.
  4. Click on Export to export to gltf/glb file. It will ensure that animation is exported properly for Wanna SDK

Example

We've created an example watch model that shows, how it should be prepared before running the script.

Known issues

  • This script creates animation with the stepped movement of the seconds dial. A version to create continuous animation is in progress.
  • If there’s an ambient occlusion texture on the model or the shadows are baked on albedo, an ambient occlusion texture and the shades should be backed without hands, otherwise dials will leave baked things behind.
  • Sometimes animation is exported with 24 fps, which causes very fast movement of the hands. To fix that please set animation to 1 FPS manually, as shown below.

 

Script change log

v1.92: added support for Blender 4.0

v1.91: added support for Blender 3.6 LTS

 

Was this article helpful?

Can’t find what you’re looking for?

Our award-winning customer care team is here for you.

Contact Support