Making the Perfect MOGRT: What I Learned Animating for a 100-Video Series

Tasked with making a series of 100 videos, I knew that building some MOGRTs, or Motion Graphics Templates, would be essential to speeding up my editing process. MOGRTs are a feature in Adobe Premiere Pro that lets you create template animations usually involving text animating on. The most useful MOGRTs have responsive designs so they can work in a variety of contexts. This article outlines some tips I learned along the way.

Making MOGRTs isn’t always glamorous, but they can have a huge impact on the cost of making videos.
— Some producer, probably

The Problem

My instructional video series needed a LOT of lists to animate on as the speaker talked about them. Unfortunately, adding text that’s evenly spaced apart, has a custom animation, and is timed perfectly for when the speaker needs to introduce it isn’t really easy with vanilla Adobe Premiere Pro. Premiere’s Essential Graphics tool gives you some templates that get you part of the way there, but there isn’t a great way to time your lines of text while retaining the ability to distribute them evenly.

Evenly spaced bullet point text from my instructional video series

An example from my video series showing the kind of lists we’re talking about.

The Solution

This is where Adobe After Effects comes in. I wanted to build a MOGRT that would let me dynamically space my lists apart, accounting for the size of the font, and include a slider for line spacing. It also needed to let me left- or right-justify my text depending on how the speaker was positioned in the frame.

Single Line or Multiple Lines?

At first, you may want to make a MOGRT that can handle multiple lines of text at once. If you don’t need strict timing control for each line, this is a good option. However, if you’re making anything like a bulleted list where you want each line to come on as a speaker says it, then it’s much more effective to design the MOGRT for a single line and handle the timing over in Premiere by dragging the clip edges.

Animated gif showing MOGRT clips being retimed in Premiere

Adding Text Spacing Controls

The problem with designing a single-line MOGRT is that Premiere has no built-in controls for evenly spacing each instance of your MOGRT’s text. If you build the MOGRT using After Effects, Premiere cannot “see” that it’s bringing over text data, and instead sees it basically as a pre-comp with whatever controls you add to the Essential Graphics panel.

To solve this problem, I added a master Null with slider controls to affect the text positioning and a position expression on each of my text layers that used the sliders to help calculate the final position. To keep things simple I gave just two controls for the Line Number and Line Spacing. That way, instead of having to eyeball each line’s position in Premiere, you could just set these two values and ensure your text wound up in the right spot.

After Effects position expression to evenly space text for a MOGRT

The text position expression that referenced my controller Null.

The trickiest part was writing a conditional that wouldn’t shift the first line in the list, but make the subsequent lines shift according to the amount of line spacing set. Above is what I landed on after a bit of trial and error.

Deceptive Slider Controls

Unfortunately, once a MOGRT is exported to Premiere you can no longer see a slider control’s decimal values—it just shows whole numbers. Premiere is tricky though. Even though you can’t see it, Premiere still allows the slider to land on decimal places. If you want to control the line number of your text, this is a problem because you want it to land on Line 1 or Line 2, not Line 1.352. A one-line expression lets you clamp your values to whole numbers.

An After Effects expression that constrains a value to integers only

This expression limits your property to whole numbers only. And it sets a max and min! Very helpful for adding constraints on what can be done with a MOGRT.

An After Effects expression that constrains a number to the nearest 0.05

Bonus expression! I clamped the line spacing to the nearest 0.05 with this. You can round it to the nearest 0.1 by switching the 20s to 10s.

Adding MOGRT Options

It’s tiresome to search through Premiere’s Essential Graphics window every time you need a MOGRT that’s just a right-justified version (or an animate-out version) of the MOGRT you just used. I wanted one master MOGRT for all the text lists in my series so I could keep duplicating it for each line. I found the simplest way to add controls like an animate-out toggle or a right-justify toggle was to once again add controls to my master null.

Then I just duplicated my text animation 4 times. Each one got its own expression to account for which toggles were enabled:

  • Left Justified + Animate In

  • Left Justified + Animate In & Out

  • Right Justified + Animate In

  • Right Justified + Animate In & Out

You can add a conditional expression onto a layer’s opacity property. If the right set of toggles are set then the layer is fully visible, otherwise it’s set to 0% opacity.

Be careful how many option toggles you add. The amount of toggles you add squared = the amount of text layers you have to create. So if I had a third toggle I would’ve needed 9 text layers to account for every possibility.

Using Only One Set of Text Properties

If you have four different text layers, how do you avoid having four places to set the text properties over in Premiere? The answer is once again an expression:

  • Choose one master text layer and drag it’s Source Text property into Essential Graphics.

  • Hit Edit Properties in Essential Graphics and enable all the custom font options you need.

  • On all the other text layers, add the following expression to their Source Text property, referencing the master text layer’s styles, which in turn references whatever is chosen by the editor over in Premiere.

An After Effects expression that copies the text style options from one layer to another

Using layer index was kind of a lazy way to do this, but it worked for all my text layers.

Perfect Matte Positioning

Text animations where it eases out of a matte are like good waiters: tasteful, elegant, and not too in-your-face.
— A restauranteur who became a motion designer, probably

Matted animation by line

Matted animation by word

Since my text animation involved the text easing up out of a matte, I needed a way to position the matte perfectly below my text, no matter where the text ended up being positioned by the editor. A few techniques went into this:

  • I connected the matte’s anchor point to the top-center of the solid so the position would easy to calculate to that point.

  • I used .sourceRectAtTime() on my master text layer to get its size and position attributes needed to calculate the matte’s Y-position. Since all the text layers inherit their text properties and position from this master layer, this expression works in every circumstance. It’s important to set the time value to right after the animation on ends. (In my case that was at 0.667 seconds.)

An After Effects expression that positions a Matte directly below a text layer after it animates on

A Weak Point: Text Animators

My MOGRT’s text movement was created using a text animator. One weak point of doing things this way, is that the Based On property (whether it animates by character, line, or word) cannot be set by an expression. This means that if you want to change this value over in Premiere, you have to add the Based On property to Essential Graphics for each text layer. You can group these under a dropdown, but it’s still not ideal.

To look right, the Ease High and Ease Low properties in the text animator had to be tweaked depending on whether the animation went by word, character, or line. It’s possible to write conditionals that set your Ease High/Low based on which option you selected. After Effects assigns an index number to each option. You can see my example below:

  • 4 == by lines

  • 3 == by words

  • 2 == by characters excluding spaces

  • 1 == by characters

Conclusion

This MOGRT ended up being a huge time saver. After the initial set-up cost, I spent way less time tweaking spacing in Premiere. A lot of the tricks I discovered for this one (like positioning the matte perfectly) will be useful for future MOGRTs too. As I’m sure you can tell, designing a good MOGRT is not for the faint of heart. There is a lot of scripting that goes into providing a great experience for the video editor.