Aller au contenu principal
Révélation

Sortie en direct du vrai moteur de rendu — modifiez les réglages et elle se met à jour instantanément.

Compte à rebours de lancement

motion design

La date de lancement se tape toute seule, puis jours, heures et minutes défilent sur trois tuiles.

Idéal pour : Un lancement, un webinaire, une promo qui se termine.

Réglages

Police
Thème
Taille
Humeur

L'utiliser dans un film

Ce que vous pouvez changer :kickerdateunits
Pour les développeurs (MCP et JSON)

Voici la scène exacte à envoyer à create_animation (MCP) : gardez la structure, changez les mots et écrivez la narration — c'est la voix qui fixe la durée de la scène. Collez-la dans update_storyboard avec set_data pour modifier un film déjà fait.

{
  "visual": "motion",
  "heading": "Countdown",
  "narration": "Write the sentence the voice says over this scene; its length is the scene's.",
  "data": {
    "motion": {
      "spec": {
        "version": 1,
        "name": "Launch countdown",
        "intent": "how long until the launch",
        "exit": "mirror",
        "params": [
          {
            "name": "kicker",
            "type": "text",
            "label": "Eyebrow",
            "default": "Save the date",
            "maxLength": 24
          },
          {
            "name": "date",
            "type": "text",
            "label": "Date",
            "default": "Live on 21 October",
            "maxLength": 24
          },
          {
            "name": "units",
            "type": "list",
            "items": "record",
            "label": "Units (value, label)",
            "min": 3,
            "max": 3,
            "default": [
              {
                "value": "09",
                "label": "days"
              },
              {
                "value": "14",
                "label": "hours"
              },
              {
                "value": "36",
                "label": "minutes"
              }
            ]
          }
        ],
        "layers": [
          {
            "id": "kicker",
            "kind": "text",
            "text": "{{kicker}}",
            "role": "label",
            "uppercase": true,
            "color": "c2",
            "align": "center",
            "maxLines": 1,
            "box": {
              "col": 0,
              "row": 0.1,
              "cols": 12,
              "rows": 1
            },
            "tall": {
              "col": 0,
              "row": 0.4,
              "cols": 12,
              "rows": 0.9
            },
            "enter": {
              "primitive": "fadeUp",
              "distance": "nudge"
            }
          },
          {
            "id": "date",
            "kind": "text",
            "text": "{{date}}",
            "role": "headline",
            "align": "center",
            "maxLines": 1,
            "box": {
              "col": 0,
              "row": 1.4,
              "cols": 12,
              "rows": 2.4
            },
            "tall": {
              "col": 0,
              "row": 1.6,
              "cols": 12,
              "rows": 2.2
            },
            "enter": {
              "primitive": "typewriter"
            }
          },
          {
            "id": "tile",
            "kind": "shape",
            "shape": "rect",
            "fill": "surface",
            "radius": "lg",
            "elevation": 2,
            "repeat": {
              "param": "units",
              "flow": "row",
              "gap": "lg"
            },
            "box": {
              "col": 0.6,
              "row": 4.4,
              "cols": 10.8,
              "rows": 7.4
            },
            "tall": {
              "col": 1,
              "row": 4.4,
              "cols": 10,
              "rows": 7.4
            },
            "enter": {
              "primitive": "fadeUp",
              "order": 1
            }
          },
          {
            "id": "value",
            "kind": "number",
            "value": "{{item.value}}",
            "role": "display",
            "color": "gradient",
            "align": "center",
            "repeat": {
              "param": "units",
              "flow": "row",
              "gap": "lg"
            },
            "box": {
              "col": 0.6,
              "row": 4.9,
              "cols": 10.8,
              "rows": 4.2
            },
            "tall": {
              "col": 1.3,
              "row": 4.4,
              "cols": 4.8,
              "rows": 7.4
            },
            "enter": {
              "primitive": "countUp",
              "order": 2
            }
          },
          {
            "id": "unit",
            "kind": "text",
            "text": "{{item.label}}",
            "role": "title",
            "color": "sub",
            "align": "center",
            "uppercase": true,
            "maxLines": 1,
            "repeat": {
              "param": "units",
              "flow": "row",
              "gap": "lg"
            },
            "box": {
              "col": 0.6,
              "row": 9.4,
              "cols": 10.8,
              "rows": 1.8
            },
            "tall": {
              "col": 6.4,
              "row": 4.4,
              "cols": 4.3,
              "rows": 7.4
            },
            "enter": {
              "primitive": "fadeUp",
              "distance": "nudge",
              "order": 2
            }
          }
        ]
      },
      "name": "Launch countdown"
    }
  }
}

Réutilisez-la : enregistrez data.motion.spec une fois avec save_motion_spec (vérifiée comme avec validate_motion_spec), puis toute scène peut utiliser le visuel « motion » avec data.motion.specId et ses propres paramètres. Nom de la spec : « Launch countdown ».

Autres animations Révélation