Skip to content

Motion Templates

Creating Motion Graphics Templates (.mogrt) with Essential Graphics.

What are Motion Templates?

Motion Graphics Templates are After Effects compositions with exposed properties that editors can modify in Premiere Pro without opening After Effects.

Compdown lets you:

  1. Define compositions with editable properties
  2. Expose those properties via Essential Graphics
  3. Export back to Compdown text preserving the property mappings

Basic template

A simple title card template:

yaml
compositions:
  - name: Title Card Template
    width: 1920
    height: 1080
    duration: 5
    layers:
      - name: title
        type: text
        text: Your Title Here
        fontSize: 72
        fillColor: FFFFFF
        justification: center
        transform:
          position: [960, 500]

      - name: subtitle
        type: text
        text: Subtitle text
        fontSize: 36
        fillColor: CCCCCC
        justification: center
        transform:
          position: [960, 580]

      - name: background
        type: solid
        color: 1a1a2e

    essentialGraphics:
      - property: title.text
        name: Main Title
      - property: subtitle.text
        name: Subtitle
      - property: title.transform.position
        name: Title Position

Lower third template

Editable lower third for interviews:

yaml
compositions:
  - name: Lower Third Template
    width: 1920
    height: 1080
    duration: 5
    layers:
      - name: name
        type: text
        text: Person Name
        fontSize: 36
        fillColor: FFFFFF
        justification: left
        transform:
          position: [100, 905]
          opacity:
            - time: 0.3
              value: 0
            - time: 0.6
              value: 100
            - time: 4.4
              value: 100
            - time: 4.7
              value: 0

      - name: title
        type: text
        text: Job Title
        fontSize: 24
        fillColor: EEEEEE
        justification: left
        transform:
          position: [100, 945]
          opacity:
            - time: 0.4
              value: 0
            - time: 0.7
              value: 100
            - time: 4.3
              value: 100
            - time: 4.6
              value: 0

      - name: bar
        type: solid
        color: 3498db
        width: 500
        height: 80
        transform:
          position: [250, 920]
          anchorPoint: [0, 40]
          scale:
            - time: 0
              value: [0, 100]
            - time: 0.5
              value: [100, 100]
              easing: easeOut
            - time: 4.5
              value: [100, 100]
            - time: 5
              value: [0, 100]

    essentialGraphics:
      - property: name.text
        name: Name
      - property: title.text
        name: Title
      - property: bar.transform.scale
        name: Bar Width

Template with effects

Expose effect properties for customization:

yaml
compositions:
  - name: Blur Title Template
    width: 1920
    height: 1080
    duration: 5
    layers:
      - name: title
        type: text
        text: TITLE
        fontSize: 120
        fillColor: FFFFFF
        justification: center
        transform:
          position: [960, 540]
        effects:
          - name: Glow
            matchName: ADBE Glo2
            properties:
              Glow Threshold: 50
              Glow Radius: 30
              Glow Intensity: 1

      - name: background
        type: solid
        color: 000000
        effects:
          - name: Gaussian Blur
            matchName: ADBE Gaussian Blur 2
            properties:
              Blurriness: 0

    essentialGraphics:
      - property: title.text
        name: Title Text
      - property: title.effects.Glow.Glow Radius
        name: Glow Amount
      - property: background.effects.Gaussian Blur.Blurriness
        name: Background Blur

Call-to-action template

End screen with multiple editable elements:

yaml
compositions:
  - name: CTA Template
    width: 1920
    height: 1080
    duration: 10
    layers:
      - name: heading
        type: text
        text: SUBSCRIBE
        fontSize: 80
        fillColor: FFFFFF
        justification: center
        transform:
          position: [960, 400]

      - name: channel name
        type: text
        text: "@YourChannel"
        fontSize: 48
        fillColor: FF0000
        justification: center
        transform:
          position: [960, 500]

      - name: cta text
        type: text
        text: Click the bell for notifications
        fontSize: 32
        fillColor: CCCCCC
        justification: center
        transform:
          position: [960, 600]

      - name: button
        type: shape
        transform:
          position: [960, 720]
        shapes:
          - type: rectangle
            size: [300, 60]
            roundness: 30
            fill:
              color: FF0000

      - name: button text
        type: text
        text: SUBSCRIBE
        fontSize: 24
        fillColor: FFFFFF
        justification: center
        transform:
          position: [960, 720]

      - name: background
        type: solid
        color: 1a1a2e

    essentialGraphics:
      - property: heading.text
        name: Heading
      - property: channel name.text
        name: Channel Name
      - property: cta text.text
        name: Call to Action
      - property: button text.text
        name: Button Text
      - property: heading.transform.position
        name: Heading Position

Tips for templates

Keep it simple

Expose only the properties editors actually need to change:

yaml
essentialGraphics:
  - property: title.text
    name: Title
  # Don't expose every single property

Use clear names

Make property names obvious:

yaml
essentialGraphics:
  - property: name.text
    name: Person's Name  # Clear
  # Not: name: text_01   # Confusing

Order properties logically:

yaml
essentialGraphics:
  # Text content first
  - property: title.text
    name: Main Title
  - property: subtitle.text
    name: Subtitle
  # Then positioning
  - property: title.transform.position
    name: Title Position
  # Then styling
  - property: background.effects.Gaussian Blur.Blurriness
    name: Background Blur

Test round-trip

  1. Create the template from Compdown text
  2. Modify values in AE
  3. Export back to text
  4. Verify the properties are preserved

Exporting as .mogrt

After creating the template:

  1. Select the composition
  2. Go to Animation > Export as Motion Graphics Template
  3. Choose destination and settings
  4. Click OK

The exported .mogrt can be used in Premiere Pro, where editors can modify the exposed properties without After Effects.

Released under the MIT License.