Menu

Peaks All the Way Up

Joe Clay | Dec 1, 2018

Everyone takes a radically different path through our industry, just as in many other industries. And in mograph especially, there's no specific step to take, no milestone to hit. We don't have a bar to pass, a residency to complete, certifications to attain. We don't even need to go to school if we have enough ambition. It is important that people, especially new people to the game, understand that and hear true stories from people farther on their journey. So hopefully telling my story will help someone out there.

Puberty is Tough

In August, an article sparked a lively discussion in the community. Motionographer posted Mograph goes through Puberty from Joey Korenman, the founder of School of Motion. It details Joey's particular path through the industry. But its thesis is that technology has changed the industry and large studios that don't adapt will go extinct because technological improvements have allowed smaller, more nimble outfits to do the work that used to require tons of people. I'm quoted in the article talking about how mograph is more necessary than ever to companies since everyone has a screen in their pocket 24/7.
Full disclosure: School of Motion has sponsored a few of our tutorials, but that doesn't have any bearing on my opinions here.

Joey's solution is that the shrinking budgets due to all of these external factors can be balanced with shrinking overhead. It's hopeful. So what was the issue?

The Infamous Chart

The major qualm with the article was a chart that plotted out a line-item budget. The article has since been amended to remove the chart. Now it says this about Joey's time after leaving the production studio he started:

One of the first jobs I took on was an $18K job for an ad agency, and it took about 2 weeks to do and given the flexibility freelance can have, I found the profit margins to be much larger than what I experienced in the past at a typical studio.

You can find the chart live on the twitters if you choose. I'm not going to link it out of respect for their edits. I think the chart was intentionally simplified, but I can understand objections to it. The criticism was valid.

The chart listed costs that freelancers have as $0. I'm sure the actual budget accounted for those costs so I find it hard to believe it's not just an attempt to be illustrative rather than realistic. But I do agree that removing the chart from the article was a good idea. Illustrative or not, it gives the impression that budgets are high and overhead is non-existent. And putting that budget in a spreadsheet lent it a certain authenticity. New artists who are unfamiliar with the industry need to see a more realistic example of a budget.

This is an actual budget for a project we've done.

There are certainly budgets out there that high for two weeks of work—especially from an agency that only cares about the product, not the amount of effort it takes to complete. But that's not generally budgeted as one freelancer for $1,700 a day with $500 of help and $500 of stock—which is how the chart had it.

Of Mice and the Mighty Embury

This eventually led to a retort by Andrew Embury on Medium. In Of Mice, men and Motionographers..., Embury lays out his journey into the industry, which is explicitly more difficult. Andrew details his struggle getting started, working for free, eating out of trash bins, etc. It's raw and open. But it's a different article. It's about his particular path, which I also don't think is indicative of everyone. And it's also a rejection of the "being a freelancer is great" vibe of Joey's article. Joey is writing about the industry at large and how freelancing can combat what is happening with budgets.

Elsewhere, from what I've seen, Joey doesn't posit that freelancing is for everyone. He does talk about the struggles. But that's absent in this article. There's no counterpoint. Combined with a plug—even the very honest one in the article—people felt like it was a long sales pitch on a major industry publication.

I find that unfortunate because I think Joey's article is an accurate assessment of the state of the industry in terms of where we've been and where we're going. I also agree that going it on your own is an excellent option. But, as you may ascertain from my story, it might not be for you.

So How the Hell did I get Here?

I'm asking myself that most days too. You're not alone. First, let's dispel the myth that's building up that I'm some sort of hotshot After Effects guy. I don't think I am. I just know a lot of shit because I've done a lot of shit. Things like my quick tips videos are born out of doing the wrong thing so many times and finally discovering the most efficient way to do something.

There are no shortcuts. There are great courses and excellent tutorials, but it's up to you to apply what you've learned. And if you ever intend to grow, you need to work at it. Mograph is constantly changing. You might learn some fresh new technique and halfway around the world some guy is already doing it better, faster, and probably cheaper too.

Often the way forward is obscured from view. You climb the mountain thinking you might find a nice valley where you can survey your surroundings, but over each peak is just another peak. And like turtles, it's just peaks all the way up.

For most people—myself included—there are constant struggles. Sometimes clients don't pay and sometimes they just take forever. Thankfully, I've been lucky to have always been paid, but I've had a client owe me five figures for over a year. Lately, we're finding more and more of our clients are switching from net 30 to net 45/60, especially when their clients are doing the same. Net 60 is the worst, especially when you have multiple projects on an invoice that might already be months old. But when that invoice is large, what are you going to do? That's right. Figure out a new way to deal with cash flow issues and hope your clients don't take long to get you PO numbers. Mograph can be a constant feast or famine scenario.

There's still a lot of feast or famine going on, evidenced by this chart. Still, this February sucked. And I need to bill November's work still.

Then you have to deal with taxes, working with an accountant, payroll, all of the clerical work of invoicing, accounting, answering inquiries, etc. There's a lot of time tied up in that. It takes me at least half an hour to reply to a new inquiry. Estimates take me a few hours sometimes. You also need to learn how to budget properly because there's not much out there on the topic. And that's partially because we aren't sure about it either. The Futur is about the only place I know of talking about real business. I only know how to budget because I've done it a lot. And it's still hard.

I've undersold myself. I've taken jobs that I shouldn't have because I've needed to to survive. I've worked hourly rates. I've worked day rates. And then I learned that I wasn't really making any profit by doing that and that I work too fast for it to be fair to me. Now I budget by the project because then we can agree on a price, and everyone is happy with it.

It's been a long road just to become the relative nobody that I am! You're only reading this because I decided long ago to share my knowledge with the community. And in doing that, I've made a very small name for myself.

So with all of that, why do I run Yellow Dog Party? In short, I had to.

Climbing the Mountain

I started out my career with an excellent internship at the Tampa Bay Performing Arts Center. I was lucky enough to have a paid internship. And even then the game was stacked against me because my college required an internship but didn't allow anyone to be paid for some ridiculous, sadistic reason. So shhh. Keep it a secret.

During my internship, I got to make work that would actually be seen. I worked on a 30 minute TV program every month. I made commercials that went to air. I filmed events that we'd cut down to sell as DVDs—and I made the DVDs for reproduction too. I filmed segments for the shows. I filmed performers that came through including Carlos Mencia, and John O'Hurley—who you might remember as Elaine's boss J. Peterman from Seinfeld if you're as old as I am.

When I graduated from USF in 2007, I was hired to work for a local company that was once called Digital Domain until they got sued by the real Digital Domain. At first everything was new and interesting. But I soon learned about how mismanaged the company was.

Here's an excellent example. I was hired, fresh out of school, to work on a secret government project for SOCOM as—initially—the sole animator for three five-minute 2.5D narrative stories. We had a director from the company and a freelance storyboard artist made assets for us. My machine was a cheap Windows box they had IT buy off the shelf from CompUSA—when they knew I was a Mac guy. It took us weeks just to get them buy us RAM while we jealously eyed the brand new Mac Pro in the edit suite next door. My director was livid. He said it was ridiculous for them to cheap out this badly on a half a million dollar project.

Overall, I worked with some great people. One even received an Emmy while I worked there. I learned so much from those veterans. And I learned what not to do from owners of the company. Sev worked there before I knew him, and he learned the same lessons.

In 2008, the economy took a dive and as one of the last hired, I was out. Later, the whole company would close and many of the people who worked there would go on to form their own successful companies. I had built a ton of relationships while I was there with those people—who I still work with on occasion—and one of those relationships led me to my second job.

I interviewed at a place called CamGroup that made commercials for car dealerships. It wasn't what I wanted to do, but I went since I needed a job. The owner was one of the nicest, most honest people I've ever met. His name was Bryan Carter. When I got home after the interview, I wrote him an email. I thanked him for his time, but I expressed that that really wasn't the kind of work I was looking for. I also said something about how I really liked our conversation, and I felt bad turning the job down. He wrote back asking if I'd give it a shot for three days. He said he'd pay me, and if either of us didn't think it'd work out we could part ways amicably. I went and I actually enjoyed it.

Bryan hired me at about $10K more than my previous salary. I put a lot into making higher quality dealer spots and I learned a lot there too. I became way faster because I had to be. We produced commercials for dealerships all over the Southeast. I made a look a day on average, and we reused those looks for various dealerships. So every day I made a few :30s based on the same look, but with different copy, timing, footage, etc. It was a grind, but kind of fun in a way. And for the most part, I laid 90% of those spots to tape. I still get sick when I see a slate.

I learned about how to treat employees and clients from Bryan. He kept no secrets. In fact, he once told me that he didn't close his door for privacy, he just didn't want to disturb anyone. He was a loud talker with a Southern drawl—quick with all of those quirky metaphors you'd expect. Even with his door closed, I'd frequently hear him talking budgets with clients on speaker. Sometimes he'd do it with us in his office if someone called in the middle of something. He'd mute the call and crack jokes when he said something to mess with a client. He had a great rapport with everyone he talked to.

Unfortunately the economy tanked car dealers too. I think one of the last spots I made there might've been a Cash for Clunkers spot, so you know I went out on a bang. After that I started freelancing. My wife's coworker's husband owns a successful painting company and he needed a designer and eventually a web designer. I wanted to do motion, but it was a start.

At some point my old coworker from CamGroup left because he was worried about the industry tanking. He called up one day to see if I could replace him. So, I went back to Cam but I also kept up freelancing. Sadly, around Christmas that year, Bryan passed away. He had cancer, and it looked like he was getting better, but it took him. I'm nearly tearing up just writing about him. Bryan was a great man. I never really thought about it before writing this, but his influence on how I conduct business cannot be overstated.

His wife took over the company. She was studying to be a psychologist, but she hadn't learned that last -logist part. We butt heads about making countless revisions to work before we'd send a single frame. She thought she could psychoanalyze clients and divine what they'd want. That's probably why that still irks me to this day. To me, countless revisions before showing something for approval is grounds to fire a client. It's a time sink. As would be expected she ran the company into the ground, and the economy wasn't even a factor anymore.

After that I was done with the rollercoaster of working for others. If I wanted more stress in my life, at least I wanted to be at the helm. My wife had tenure as a teacher so with one steady income she told me to just go for it. So I made the choice to start working under Yellow Dog Party as a freelancer. I hoped one day to start a studio of my own. And I'd recommend that anyone else who has that aspiration work at a few places to see how things run. I've learned a ton from the failures of others, and I didn't have to make them with my own wallet.

So in 2010, I started off by telling existing clients that I had more time available. Some took advantage. Then my wife and I scoured sites like Production Hub to see what was out there. A random meeting with a production company my wife found got me working directly with Bright House Networks' marketing department—a great group of people I still work with even though Bright House was bought out.

Around 2011/12, my old creative director from my first job wanted to start his own studio. He asked me to help him to build it. We worked on a ton of projects, sometimes way into the early morning. Initially it was just him and I against the world, but eventually it grew into a full studio. And I had a space in there that got me out of the house so I could be more productive.

The next year, I wanted to grow. I incorporated Yellow Dog Party and I started looking for office space. It turned out that the friend that got me the CamGroup job was doing the same thing. And two of his former coworkers were doing the same—including Sev. So we got a space in an old 1920s apartment building that had long since become offices.

That's where everything changed for me. We functioned as a collective. Having others around meant that we almost always had work, which meant that we could get better budgets because we didn't have to worry about always landing a job. We started budgeting better because we had a safety net. And having that office and that group added to our authority. And that authority netted us gigs producing live action and animation for larger companies.

While the four of us always planned to make something bigger, ultimately it wasn't going to work out. When our lease ended in 2016, we all went our separate ways. Sev and I tried to find an office space that would work and not be stupid expensive, but there wasn't much in Tampa at the time that fit the bill. I had always wanted to convert my detached garage into a studio so, since Sev and I had basically built out the previous office together, I told him that if he helped to build the space he could use it, and we could both work relatively rent-free. So that's what we did.

So far my path has been winding up the mountain. I've fallen down quite a bit. Thankfully, I've always been able to pull myself up from the cliffs that Andrew Embury faced. But it has still been a battle. And I still don't know where my path leads, but I'm ok with it as long as I'm going forward. Running my own business has been a great and rewarding adventure. If you're thinking of striking your own path, remember to look around every once in a while, to make sure the path still looks like the one you want to be on.

Tools

Joe Clay | Nov 20, 2018

Tools

We're coming up on the end of the year again, and it's a great time to sneak in some write-offs. Like we did last time, here's an updated list of plugins and scripts that we use in AE, as well as a shot of my layout so that you can match up scripts you might've seen in our tutorials. The numbered ones are listed first, but nothing is in any particular order.

I've put the current price of each plugin or script below as of the time of writing this, so you can figure out if it's worth it to you.

1. Expressionist $39.99

Expressionist is a replacement editor for expressions inside of After Effects. You can resize the font and it does syntax highlighting, so you can keep lengthy expressions straight. If you work with expressions, this is a no-brainer. You can also use it to run and write scripts inside AE.

2. FXConsole FREE

Video Copilot's FXConsole is my most used plugin. I use it constantly. It is insane that it is free. It basically allows you to type in the name of a plugin or even a preset and add it to a layer but it does SO much more. I'm not even going to explain the rest. Just go grab it now!

3. Flow $30

Flow is excellent. It makes graph editing inside of AE about a million times easier so you can get nice easing. You can save and download libraries of easing curves as well. Make sure to download them from Flow's page. Zack Lovatt and Tomas Sinkunas straight up killed it with Flow. I used to use Ease and Wizz years ago, and I haven't even touched it since buying Flow. It's almost sad since its functionality inspired Quiver. Best of all, Flow doesn't need to use expressions to accomplish easing, so if you have to hand off your project, it looks like you took the time to hand-ease everything.

4. Ray Dynamic Color 2 $29.99

Ray Dynamic Color is an awesome color palette script by Sander van Dijk. I use Ray every day. You can make palettes, pick colors off of it, use it to link colors, and easily change palettes and colors. It's very versatile. It's also great for use in team situations so people can share palettes and colors on projects. Note: if you want to pick using eyedroppers and you need color accuracy that seems to works fine on Windows, but there's sometimes a slight color shift in macOS. Using it as normal is color accurate, however. I think it shifts on macOS because macOS applies a color profile to the panel that you're trying to pick a color from.

5. Butcapper Name your price

By the same developer as Rubberhose and Overlord, Adam Plouff of Battleaxe, Butcapper is a great little utility script. It's name your own price, and it allows you to easily change stroke types in layers without having to drill down through a million shape layer elements. Anything that can stop you from having to do that is worth it.

6. Taxonomy Not available yet

Taxonomy is a script I'm still developing. It's used for retiming layers. While handy, there's a lot more I want to add to it and I'll probably change its name at some point, so keep an eye out!

7. Quiver 2 $15

Quiver is an extension made by, well, me. So I think it's pretty cool. At its core, it allows you to save expressions and apply them to any property inside of After Effects. Expressions are stored in files in a folder you can put anywhere, including Dropbox. You can even edit and save expressions to your library right inside of AE. Stop copying and pasting from that long .txt file you keep on your desktop—I know you have one because I had one.

8. Overlord $45

If you've ever wanted to bring vectors from Illustrator straight into AE, or you have an issue converting certain parts of AI files to shapes like gradients and live text, get Overlord from Adam Plouff. If you hate drawing in AE because AI has much better tools, get Overlord. Just get Overlord.

9. Toggle Shape Fill/Stroke Name your price

John Colombo has a ton of great scripts you can name your own price for. This one allows you to toggle on/off strokes and fills for shape layers. Get it.

10. Labels 3 $18

People always ask me what this cool looking script is. It's Labels by Tomas Sinkunas aka renderTom. Tomas makes excellent scripts so you can't go wrong with him. This one allows you to quickly color your layers, footage items, and it even functions as a script launcher like KBar. It saves a ton of time. You can also save 20% if you buy it with Prism.

11. Prism 2 $14.99

Prism is similar to Labels. Where Labels allows you to quickly color layers, Prism applies a logic to it. So you can color layers in a hierarchy, or by name, etc. It's developed in part by Andrew Embury so you know it's battle-tested.

12. NoSolids Not available yet

This is another script I'm currently developing. It's probably ready to be honest, but I haven't had time to finish it off. I developed it after I cleared some stuff out of a file and realized I had deleted a ton of adjustment layers that I needed. Now I don't need to worry about deleting things out of projects because I don't really use solids anymore.

13. Joysticks n' Sliders $39.95

If you're doing character animation, get Joysticks n' Sliders now. It's especially perfect for doing heads of characters that you want to look pseudo-3D when they look around. There are plenty of other uses for it as well in a more motion-graphic setup. Basically, you can use on screen controls to switch between keyframes you set up—like a character looking up or to the right. It's super powerful.

14. Lazy $29.99

Lazy allows you to offset layers in time using a curve editor similar to Flow. If you find yourself staggering timing of layers—you do animate, right?—you'll want Lazy.

15. StackIt

StackIt takes your selected layers and arranges them in a grid. The grid can be uniform or staggered. It can also duplicate layers to fill the grid, and you can set up spacing the way you want it on x and y axes. I've used it to lay out really dense grids that I'd never lay out by hand. This script has saved me a ton of time.

16. Explode Shape Layers 3 $29.99

While I've been using Overlord more for some of the things that Zack Lovatt's excellent Explode Shape Layers does, I still find it useful to explode and implode groups of shapes to and from different layers—especially text. And it can even get rid of those annoying extra boxes that AE adds after converting some vectors.

17. Select Nth Not available yet

OK, so I thought I had made this one available. I guess I'll have to remedy that soon. Select Nth is a simple script that allows you to select layers from the selected layer skipping n layers in between. So you can select every other layer, or every third layer, etc. It's very useful if you have groups of layers and you need to do something with a certain part of each group.

18. Key Cloner Name your price

Funny story, Paul Conigliaro and I were apparently both developing a tool like this at some point. It was a while ago, but I think we both helped with aeQuery's key class. Anyway, grab Key Cloner from Paul! It lets you clone keys, reverse keys, and clone + reverse keyframes. Unlike AE's reverse keyframes command, this preserves timing for groups of keys so you can completely reverse an animation without having to mess with the timing again.

19. Universal Audio $9.99

Universal Audio helps you to get audio into all of your precomps so that you can maintain timing. It can even handle remapped time. Do you ever get doubled-up audio on a long render because you forgot to mute a track? This sets all audio layers that aren't in the main comp up as guide layers automatically, so you only hear your original audio track in your render. You can't go wrong for $9.99 with the amount of time this will save you.

20. Wayfinder $25

Sadly, I've had this in my UI, and I haven't had the chance to use it yet because the projects I've had lately didn't require it. But I got Wayfinder from Paul Conigliaro as soon as it was released because it allows you to link things to live shapes. That means you can have parametric layers, modifiers like zig zag, etc. and have other layers follow the paths. That's cool.

21. GifGun $29.99

If you're making gifs, get GifGun by Nik Ska. Never waste your time again by roundtripping through Photoshop to make a gif. Without GifGun, it's unlikely that the tutorials on this site would have gif examples.

Color Vibrance FREE

Video Copilot's Color Vibrance plugin has helped me on a few projects where directors were looking for certain colors to pop. You can also use it to subtly unify the colors in a composite. It's actually helped me quite a bit more than expected to save some projects by adding an unexpected dimension to the design.

Saber FREE

Saber, also free from Video Copilot, is quite useful. You can use it to stroke a mask, add in energy effects, etc. And it has an excellent library of different presets. Andrew Kramer shows off a lot of cool uses in his introduction for Saber, but there are a lot of cool ways you can use it. Check out our Ring of Fire tutorial for example.

Orb FREE

Another free plugin from Video Copilot, Orb is a way better version of CC Sphere designed to build orbs with bump maps, reflectance, and atmosphere. It's insanely great and insanely free.

Element 3D $199.95

You've probably seen the excellent Video Copilot plugin Element 3D, but if not it allows you to bring a model into After Effects and then texture, light, animate, and even clone it. In my opinion, it's a little quirky about some things—like anchor points—but once you figure that out it works pretty well. If you're wondering, it's usually just better to make nulls for your object groups and animate those instead.

I had a project where I needed to animate a bunch of 3D devices, and it was so much faster for me to model them and then bring them into AE with Element for simple texturing and animation. It made changing anything a lot easier, and I didn't have to deal with frame sequences.

Optical Flares $124.95

Optical Flares, also from Video Copilot, is the best flare plugin in the game. That is all. If you don't have it by this point, go get it. I recommend grabbing it with the presets for the extra $40.

Rubberhose $45

Rubberhose is another excellent script from Adam Plouff. It is extremely helpful for character animation. If you need characters to have stroke torsos or arms and legs, Rubberhose is perfect for you. You can also attach custom feet and hands easily. There are also other uses beyond characters. For example, anything you would have done with the Beam effect with null controls would likely be better done with Rubberhose.

AE Pixel Sorter 2 $39.99

If you need some distorted techy looks, grab AE Pixel Sorter. You've probably seen this effect elsewhere, but this appears to be the first plugin for pixel sorting inside of After Effects. And version 2 makes it a lot easier to get the sorting look you're after.

Randomizer $5

Randomizer shifts layers randomly in time. It's been hugely helpful in my workflows, saving me tons of time. While the functionality of Randomizer has been absorbed into Taxonomy, I always protect your investment. So when Taxonomy—or whatever I name it when it ships—comes out, you'll get at least a $5 discount on it. So feel free to grab it now without worry. It still works, and it still saves you time.

Scripty FREE

This is the last one of my own scripts that I'll mention. It's super simple. If you hate having to flip back and forth between apps so you can see your scripts, or if you need a place to store some text temporarily without leaving After Effects, check out Scripty. Currently it's mainly just a text box. However, I am working on a paid upgrade that will expand the functionality considerably.

Stardust $249

Stardust burst on the scene a couple of years ago as a competitor in the particle generator world, and for the price, it's definitely worth it. It has a different node-style interface so it can be used to make interesting things. The node-based workflow allows you to generate many different particles. Some particles can have turbulence while some are unaffected. There are attractors, 3D object support, and all sorts of things. It seems to be like a Particular/Form/Plexus hybrid that has different customizations. I do find the setup to be a little more complex than Trapcode plugins. Trapcode and Stardust offer different things so it's kind of up to you to see which one fits your needs, or to just get both. Thankfully, they're both GPU accelerated.

Trapcode Suite $999

Full disclosure, I was given a copy of the last version of the Trapcode Suite—and I need to pay for the upgrade because the new fluid dynamics stuff looks amazing! I'd also like to note that I did purchase Mir separately. Anyway, while I think Stardust is excellent, I find Particular and Form—the two particle plugins I use the most from the suite—to be easier to set up for many different animations. I've used Form to generate fields of particles on some spots lately and it was ridiculously easy and fast to get what I needed. Trapcode and Stardust offer different things so it's kind of up to you to see which one fits your needs, or to just get both. Thankfully, they're both GPU accelerated.

Paint from Paint and Stick $99.99

I've only used Paint a little bit so far due to time crunches, but I had a great time with it. If you're looking to do some cel/hand animation in After Effects, look no further. I was using it on my iPad Pro + Pencil through Astropad. I had an issue with that completely unsupported setup, and the developers even got back to me to let me know about changes they were going to make. Any plugin with that active of a developer is worth a look. I haven't had a need for the Stick portion of the plugin, but I'm sure it's excellent if you need that functionality.

Origami $39.99

Origami is an excellent script by Nik Ska, the developer of GifGun so you know it's well built. It makes an interesting folding affect by splitting up layers. While that may slow things down if you have a ton of layers, you get a lot of animation for that render hit.

CompCode $100

I grabbed CompCode a bit ago so that I can use it to package different products. It's excellent, but I'm not because I haven't had much of a chance to use it because I just haven't had time this year. So when you finally, if you see branded script panels from me, know that they'll be the direct result of CompCode. And it's made by Tomas Sinkunas, developer of many kickass scripts like Flow, so you know it's rock solid. It's a script that can build scripts. That's some Inception-level coding.

m's Halftone $19.99

After unsuccessfully trying to resurrect Pete's Halftone plugin, I made a preset that worked really well. But nothing is faster and better than a single plugin. And m's Halftone fits the bill perfectly.

Composite Brush $99.99

Composite brush is a great color selector for building mattes in AE. So far, I haven't been able to get as amazing results as shown in the video, but I have definitely built usable mattes. I should also note that the footage I've used this on so far has a lot of similar colors, so that's not doing Composite Brush any favors. Chris Vranos, the developer, has been pretty active with it, so I feel good recommending it.

Cartoon Moblur $29.95

Sadly, I haven't had a lot of chances to use Cartoon Moblur from the excellent devs at Plugin Everything, but that's more due to the projects I've had recently. It creates an excellent echo-like effect for shape layers. It has a ton of uses faking 3D as well. And it's extremely fast.

ReelSmart Motion Blur $89.95

Sev uses ReelSmart Motion Blur from RE:Vision Effects when we need motion blur on 3D renders. He uses the pro version when he needs it to be more accurate since it lets you use motion vectors.

JSplacement Name your price

JSPlacement from Grigori Shevtsov, aka Windmill, allows you to generate 8K textures to use for displacement. I definitely recommend supporting Grigori through his tip jar. We use it all the time—so much so that I'm even happier to include it on this list so I don't have to list it into every other tutorial! It's got a lot of features, and it's still in development. I get very excited when I see a new update is available. Also, his art is pretty awesome, and his experiments with screwing up video signals really makes me want to experiment.


So there you go. That's a pretty lengthy list of some very awesome scripts and plugins that will save you some time. All together, if I didn't miss anything, that's $2,500.63. So if you want some write-offs, don't forget software! And if you have any suggestions for stuff I missed or left out—cue the dude who's going to say I left out FT-Toolbar or KBar!—put them in the comments below!

Explainers Shouldn't Explain Everything

Joe Clay | Aug 30, 2018

I'm Going to be Real with You

Let me preface this. I'm not talking about explainer videos that are supposed to be instructional—I'm talking about explainers that are supposed to give you an overview about a product. But this isn't just limited to explainers.

This article may be hard-hitting. But I think it's important to break the illusion, especially for people on the client-side.

No one cares about your product.

Many companies want to tell you every insignificant thing about their product in a video but they never mention the most important part.

Why Should I Care About Your Product?

Answer this question first: why should I care about your product? We make products to fulfill a market need, but when we're marketing we often completely forget about the need we're fulfilling. Someone dying of thirst doesn't care that your fizzy water has 2% carbonation after being run through a perfectly-tuned, reverse-osmosis filter that you had engineered in Stockholm—they just want to be quenched.

Always Think About the End Goal

Why does someone buy a new computer? Because their old one was too slow. So they need a faster machine? Yes. OK, why?

That last question is the most important one. Most companies just want to make their video and they stop just before asking why someone wants their product. That doesn't make any sense.

We don't buy a computer because it's fast. We buy a computer so that we can do something with it. Having a faster computer means we can do more of that thing or get it done quicker. Speed isn't the goal—it's what we need to achieve the goal. It's a subtle difference, but an important one.

Maybe you like gaming. Telling a gamer that your video card has 2,000 cores of 2.5Ghz processors isn't as effective as showing them a video rendered in real time, utilizing that card at the limit. Of course, people can logically figure out that more power means better gaming. But showing them your video card in use will lead them to thinking about gaming versus specs. And if they check out the competition, they'll be thinking of that sweet real time render you showed them while they're being bored with your competitor's video.

It's About Market Differentiation

The example I use all the time is Apple. They are in an incredibly crowded market. And most of their competitors make similar machines and advertise on specs alone. So there's tons of competition and Apple is usually the most expensive player. On paper, that sounds like a disaster. But their marketing is incredible.

Apple's marketing is heads and shoulders above all of the others. While their competitors hash it out over specs, Apple tells you what you can do with the machine. They show you lifestyle footage instead of spec lists. When they talk about a quality, they tell you how much more you can do with this product versus the old one.

Remember all of the great stuff you did with your machine before? Well now you can do more of that so you can either improve your work, or be done sooner.

When they talk about battery life, they don't just say this thing has 28 hours of standby. They compare it to how many songs you can listen to. When they say their machine is quiet, they don't say the fans are 3dB. They say it's whisper-quiet. They illustrate the product in use rather than educate you with specific facts. Remember the MacBook Air ads? The selling point was that it was super thin. While Steve Jobs did give the spec for thickness, he brought it out on stage like this:

Remember that? It was such powerful imagery that people sold cases for the MacBook Air in the shape of an envelope.

They show you what you can do with their products, or show the lifestyle their products help you achieve. Their videos are a tool to get you thinking about how you can use their products. And eventually that probably leads you to their site.

Look at all of the things you can do with that processor.

But even on their website they don't just show you specs. They talk about the engineering and the care that went into designing the product, and they leave you with what is important—what you can do with it. That is what people will remember when it comes time to hit that buy button.

You Still Want to Talk About the Features, Don't You?

The sad news is this—if you're selling on features and your competitors are selling on features, you're saying the same thing. You're basically making it a direct cost comparison and whoever has the lowest price wins. You're in a race to the bottom. Congratulations.

If that's the route you really want to take, skip the explainer. You're not going to get anyone jazzed by wasting 2-3 minutes of their time on an explainer that is too long to get them excited about a product that you're not even excited about.

Of course I'm excited about my product! That's why I made it!

Then it should be easy to explain to someone how your product helps them.

The Biggest Mistake People Make

A video is not a selling tool. Most people don't make snap judgements to make a large purpose after seeing one video. Instead you need to plant the idea that your product will be so helpful to potential customers that it is stupid to ignore it.

Ideally, you want to get them interested enough to go to your website to look for more information.

Scaring Your Customers Away

The problem with throwing a ton of specs at your customer, is that any omission in a detailed video might lead someone to assume your product is lacking something they need. Listing features is essentially selling someone away from your product.

But if your video talks about the problems your product solves, they might just inquire about what they need. And then you can tell them all about it. That let's you develop a personal connection with your customer, and they will appreciate the time you spent answering their questions. You've then established a relationship that your competitor who stuck that info in a video will never have with their customer.

How to Make a Great Explainer

You're going to need a script. If you're good at that, do it. At least rough it in and then find a good artist. Maybe someone who is good with scripts too. It makes the product better if you can find someone who can write a story while thinking of animation. If you can't find someone that can do both, hire a small studio, or hire a scriptwriter so you can tell the story.

The next thing is to work with your artist. Find someone who isn't just a button pusher, and don't advertise the gig that way either. You're not looking for someone to create a video for your idea. You're looking for someone to work together to make a great video. Hell, I'd even mention that you're hoping that it can be a portfolio piece for them. Artists work harder on something they know they can show other people as an example of their work, and it's always helpful to have an example for future clients to see how it should be done.

Collaborate. Teach your artist about why your product is amazing, and let them show people why it's amazing. Have them help you find flaws in your script and ideas. Often, things that make sense written one way suck in motion. So be willing to change your script and be receptive to input.

KISS - Keep it Short Stupid

And please, if it hasn't been obvious, keep it short. One minute max. If you can't explain how your product helps people in one minute, you're doing something wrong. This is not only a smaller investment of time for your potential customers, it's also easier on animation—and cheaper. I've done videos from a few seconds to 5-10 minutes. It's much easier to animate and make things visually amazing if it's shorter. Transitions are better. Creative is better. Everything is better.

See N' Say Sucks

My other suggestion is to leave text out of it. Unless you're putting it on Facebook or a platform where there won't be audio, try to use as little text as possible. Often I'll just use text to punctuate something. Let people watch and enjoy the video. The truth is that people are watching the video so they don't have to read something. So don't put text where something can be illustrated, even abstractly—especially if there's a voiceover. I don't know why there's a tendency to do see n' say. It just distracts from what you're paying an artist to show.

Good Luck

I promise you that these tips will lead to more interest than going the utilitarian route. Don't waste people's time. That's the number one rule. Good luck out there.

Waking up at 5:30 Will Change Your Life

Joe Clay | Jul 16, 2018

If you listened to my appearance on the excellent Ukramedia Podcast last week, you heard that I've changed up my sleeping schedule. I used to be all over the place with my sleeping. If left to my own devices, I'd end up looping over. But I can't. So that means less sleep. But now I get up around 5:30 every day.

Why the sudden change?

The algorithm. Yep, that's right. YouTube suggested a video to me. It's one of those clickbaity kind of list videos that litter the platform. Instead of ignoring it like countless others, I watched it. It's even a whiteboard animation. I'm not making this up. A whiteboard animation has changed my life. Here it is.

I've seen a lot of other videos about the topic but never really thought about it because it seems like something I should do, but could never accomplish. I'm a professional night-owl and sleeper. But I saw this video at a pivotal time and it asked a question that struck a chord with me:

How do you normally spend your time after 10 pm? Are you working diligently at 100% capacity—no distractions?

That 10 pm part was especially important to me because I was sitting there wasting time on YouTube enough that it suggested that video to me. As usual, I was sitting on the couch and 10 pm had come and gone. My wife had already left me there and gone to bed. And that's about the time I should be getting ready to work if I'm going to get something done at night. But the truth was this: she goes to bed and I keep sitting there blowing time on YouTube. I'm spent creatively and don't have the will to start something new. So I sit there watching other people building things on YouTube. That's pretty sad, right?

I spend most of the beginning of my day working on client work or procrastinating and then I work later than I intend. I'm always rushing to get started before lunch or before dinner. I come inside for family time, and then I have to go back out to the studio to finish something or I end up wasting time on YouTube because I'm burnt out. I never even get to Netflix! Because of all of that time spent on other work, I feel the need to do my own work or something else to complete my day but I don't have the will to do it. So the net result is that I feel guilty about not doing more and I'm unable to change that fact.

So what are the benefits?

Going to sleep around 10:30 and waking up at 5:30 has additional benefits I didn't foresee. For one thing, when I did actually work at night and I finally got into a groove, I'd stay up really late getting things accomplished while no one was awake. That's the same as getting up early, right?

Well, no. Here's the thing. You technically get all of those hours alone to focus either way—assuming you actually stay up to work of course. It's great. But when you go to sleep at 5 am and force yourself to get up at 10, there are already fires to put out or distractions online by the time you roll into the studio.

But when you get up at 5:30, it's just as dead as 3 am and there are no impediments to getting started. You make some coffee, sit down at your computer, and you just work on whatever you want. You're just ready to go. This is a major shift in perspective that sets you up for further success in your day.

We worked late the night before I'm writing this, and so I got up closer to 6:30 today. But even with writing this, I'll still get started on client work hours before I would have in the past. And since I'm already focused, because I'm already working, I tend to get right to work rather than wasting time on the internet. So I'm way more efficient with my time. You might've seen my tweet that at 1:30 pm I felt like I'd gotten more done than I usually get done by 6:00.

That's a sad truth that has become an amazing advantage. With the same amount of effort, I get more done with less procrastination. I've finally kept that beast at bay. It has plagued me since elementary school. In high school, I wrote a term paper the day it was due. If you're wondering how so many people get so much more done than you, either it's an instagram trick or they're getting up way earlier than you and getting to work.

There are other benefits that I discovered. Obviously I have more time for my family. But what I discovered is that the time I have for my family now is of a much higher quality. I'm present in my life. I'm not cooking or helping with bedtime thinking about what else I need to get done. When I'm done, I'm done. There's no regrets, there's no worry that I need to get further along on something. And having a normal sleep schedule means I'm not out of time with the rest of the world—which is a common problem with night-owls that can lead to depression.

Work/life balance

This is the work/life balance I've been looking for. I've heard all of the ideas. I want to hustle like Gary V but I also want to be with my family. Those things are incompatible if you're trying to do it at night. Unless you have enough resolve to actually sit down and work at the end of the day when willpower is at it's weakest, you're not going to succeed that way. And if you have a family, you're going to spend most of your day without them.

Now, instead of being asleep while my wife and kids wake up and then leave in the morning, I'm already awake. I can see them for a little bit before I head out to my studio and then I'm done and can hang out with them at the end of the day. And I'm not sleeping in on Saturday morning because I stayed up late Friday night, which is a fact I'm sure my wife loves.

The best part is that I get more done and there's a lot less of a rush. If a client request derails my plans for the day, it's ok because I already did what I wanted to do for myself, and I'm there to help them out. I don't have to hope I can fit them both in my day before dinnertime.

And as my friend Max pointed out, my day seems less rushed because I've started so early that instead of having an hour or two before a lunch break, I've got 6 hours. That's a ton of time when you're not in a hurry. It's almost too much sometimes!

I can't do this

I know what you're thinking because it's the same thing I think when I read any article or watch any video about getting up early. That would be nice but I can't do that. Plus I like staying up late and sleeping in—especially on the weekend! So do what I did. Try it for a few days. You'll find the same benefits that I did.

The biggest problem you'll face is getting started. If you're like me, you'll probably need to put your phone in another room. I've seen excellent suggestions about putting your phone in a place where you'll work. I ended up convincing my wife to join me because I'm a professional alarm disarmer and few sounds wake me, so alarms are a terrible option for me anyway. So if you can tag team it, do it.

It might also help to leave a task somewhat unfinished. That way you'll have the double-benefit of wanting to complete it and might also come back to it with a fresh perspective from taking a break. That's also helpful when you leave your house. I took a break from writing this before coming out to the studio so that I'd keep working when I got out here.

Believe me, I'm probably one of the least likely people to be able to accomplish this. I've always stayed up late—too late. I think in college I averaged about 4 hours of sleep a night because of it. I've got permanent bags under my eyes. But now I don't feel like I'm missing out on anything by going to sleep. I've made my days complete, and I'm no longer feeling like I need to accomplish more. And I even get a little bit more done on the weekends before the kids get up.

So if I can do it, you're just making excuses. I promise you, it will change your life.

Ukramedia Podcast

Joe Clay | Jul 12, 2018

Sadly, I'm a little late to post this, but I've been trying to hit some deadlines this week. If you can't tell by the graphic above, I was a guest on the Ukramedia Podcast! It was an incredible honor. I can't stress enough how good this podcast is. But I'm going to try because whatever their numbers are, they're too low.

I hate that I have to disclaim this, but I was not paid to say this. None of these links are affiliate links. And it wasn't a condition of being a guest. Other than me telling Vladimir that I was going to write something, they have no idea I'm even doing this. I just think that they're fantastic and their podcast is fantastic too. I had seen their tutorials on my jaunts through YouTube but I hadn't heard their podcast. So when they asked me to talk with them I checked it out, and it's great! It's also amazing how good it is with only 23 episodes so far. I feel like most podcasts take much longer to find a groove if ever.

If you don't know, Vladimir and Sergei are twins running Ukramedia. Sergei has made tutorials for years in a similar fashion to my own—short and to the point—but they've also started some more natural, unedited tutorials that are also excellent. They've also come out with an expressions course as well.

Vladimir is the host of the podcast. And he's such a good interviewer. While he starts off with a similar set of questions, it is crazy how different each podcast is. Vladimir brings his own experiences out and builds a great rapport with his guests so it's not just a one-sided conversation. But he also knows when to get out of the way to let the story unfold.

Unlike a lot of other podcasts, Vladimir gets excellent, actionable information out of the guests so you're not left wondering what steps you can take to better yourself. I'm going through all of their podcasts now and I don't think there's one that has failed to teach me something, give me an idea, or show me a new perspective that will help me to improve upon my goals.

Aside from that, I just love their story. You can hear it in Episode 1 of the Ukramedia Podcast and there's also an excellent interview with Sergei on the School of Motion Podcast. It's an amazing tale of how they arrived in the United States as twelve-year-old refugees from a dissolved Soviet Union. The friendships they forged, even while only beginning to learn English, led to the brothers taking a path into motion and design-related fields. And the help they gained through others led to them helping others today. That's all I'm going to summarize because it's much better if you just listen to the podcast. So go do that already. If you've spent time reading to this point instead of listening to their podcast, you're doing it wrong.

Failbench

Joe Clay | Jun 19, 2018

If you're following us on Twitter, you've probably seen that we've started a Twitch account. After trying to find a channel name that worked and wasn't taken, I kind of took a different direction taking inspiration from this Simone Giertz TED Talk. Workbench is a place where we basically go to work and show you the results of that work. But Failbench is where we put in the time to figure out just what we're doing and showing you all of the fails along the way. It's a place where we might not know all of the answers, but we'll do our best trying to find them.

While our main tutorials will always be quick and to the point, I think it's important for you guys to see that sometimes developing this stuff takes way longer, and it's not always perfect. As the YouTube algorithm has become a mindreader, I happened to stumble upon this video by Andrey Lebrov that sums it up perfectly—I struggle too. We all have our struggles—even our idols—and even when we succeed we feel like imposters.

Failure and struggle are more important than anything in life. Everything comes from failure. Failure is our greatest teacher, and it ensures we succeed and help others to learn from our mistakes too. This is why I stress for you to always go out and experiment with your tools. I've had people ask me to basically spoonfeed them my tutorials. But success doesn't work like that. Copying me won't make you better than me.

I've been using After Effects for about 15 years now. I've experimented a lot. And I've failed a lot. Thankfully that experience can see me through a lot of things. But I still fail. Sometimes I know exactly how to build something and sometimes I spend hours figuring something out—like the way I built Tutorial 126: Number Crawl. I initially intended that to be my first stream but it took so long I never uploaded it.

I'm still learning to show that side on stream. Sometimes I make a mistake that I normally wouldn't because I'm trying to multitask and be entertaining, and that's kind of embarrassing. But who hasn't done that? In these days of our insta-culture, our society demands that we present our lives and ourselves as perfectly infallible. Our currency has become likes, views, and subs. And while being perfect and admirable certainly gains those things and can be a relative gauge of our success, I think we need to take a step back and embrace that failure. I'm not perfect, and neither is anyone else. I've just failed so many times that I figure things out quicker. Don't look at your idols' perfect work and compare it to you. You don't see their failures unless they choose to present them.

So come along and check out our failures. Let's learn and grow together. And definitely join us on stream if you see that we're live. Even if we're working on something else, ask questions and interact. Interaction helps me. Otherwise I try too hard to be entertaining!

Hopefully soon we can figure out how to get both Sev and me on a stream too. Collaborating on making last week's tutorial frames would've made a great stream, so we're hoping to get something like that going. We just didn't think of it until after we were done because we're dumb.

So follow us on twitter @workbench_tv and hopefully I'll remember to send out the notification that I'm live when I actually start. That was a fun fail I did on the first Twitch streams. Today, I remembered but I didn't remember to record the stream. Thankfully, Twitch lets you download it if you're archiving. Always remember to turn that on. That's a great mistake to avoid. Find more mistakes to avoid in the latest stream below.

Memorial Day

Joe Clay | May 28, 2018

Words cannot express our gratitude to those who have given their lives so that we may be free to do what we do. In honor of Memorial Day, I made a flag based on one of our tutorials last week for you to use. I made it into wallpaper sized for a retina Macbook Pro (2880x1800) so it should fit most screens. And there's also an iPhone X version. Have at it.

Text Breakup Advanced

Joe Clay | Apr 9, 2018

In Tutorial 118: Text Breakup I noted that it should be possible to do that effect with one text animator instead of one per character. That makes sense, since the expression selector allows us to use the textIndex variable in order to write per-character expressions. So guess what?

Here's the first part of how to do it with an expression selector—note that it may scroll on your screen. I'll explain this code in more detail below. The setup for this is basically the same as in the tutorial as far as the sliders go.

group = thisProperty.propertyGroup(3).name.slice(-1);
amt = effect("Slide " + group)("Slider");
d = effect("Frame Delay " + group)("Slider");
seed = effect("Random Seed " + group)("Slider")+textIndex;

d = textIndex*d*thisComp.frameDuration;
amt = amt.valueAtTime(time-d);
seedRandom(seed,true);

amp = random(0,100)*amt;

if(random(0,1) > .5) {
    [amp,0,0];
} else {
    [0,amp,0];
}

This code is added to an Expression Selector's Amount property. The text animator is named Slide A. It doesn't matter what it's named as long as that A is at the end. I'll explain why next.

group = thisProperty.propertyGroup(3).name.slice(-1);
amt = effect("Slide " + group)("Slider");
d = effect("Frame Delay " + group)("Slider");
seed = effect("Random Seed " + group)("Slider")+textIndex;

The first line looks up from our Amount property using propertyGroup(countup) to get the name of the parent group this property resides within. In this case, it's 3 groups up and the name of the text animator is Slide A. So we take the name and use javascript's slice() method to get just the final character of the string—A.

If you looked at the image above, or watch the tutorial, you'll notice that I named all the sliders with an A at the end. This way, if we want to add multiple text animators, we can duplicate and rename those sliders (unfortunately you have to do that). Then we can just rename our text animator and it can look at a new group of sliders. The expression will fail when you duplicate the animator since After Effects will name the next one something like Slide A 2, so you'll just have to toggle it off and then back on again once you've named it something like Slide B. That's quicker than having to modify the expression at least.

So that's what we use to grab all of our sliders. We take the name and append the group variable to the effect name so we can grab the slider that matches the name of our text animator. amt and d just grab their slider values. seed takes the slider value and adds to it our textIndex value so that we get a different seed for each character—otherwise they'd just move together completely.

textIndex is a variable the Expression Selector gives us. After Effects evaluates this expression for each character of the text, so the value is just the index of the character that it's currently running our expression for.

d = textIndex*d*thisComp.frameDuration;
amt = amt.valueAtTime(time-d);
seedRandom(seed,true);

amp = random(0,100)*amt;

Next, we set up our delay so that each character waits a little bit after the previous character before it starts moving—unless you set the Frame Delay slider to 0 of course. So we take our textIndex and multiply it by d which is our slider value in frames. Doing this makes sure that each character is delayed by that number of frames. This needs to be converted to time, so we multiply that whole thing by thisComp.frameDuration which is how long a frame is in seconds according to our composition. If we're at 24fps, this value is 1/24. But if we use this property instead of hardcoding it, it'll change to whatever the comp is set to.

Then we set up amt. amt is a value from 0-1 representing our animation—1 is the extent of our animation, and 0 is the base position of our characters. We're taking the value of that slider at time-d so that we can get the value offset in time by our characters. This is what sets each character's delay until the previous one begins.

Next, we set up our random seeds using seedRandom(seed,timeless). We pass that our seed value and we set timeless to true. This means that our random value will stay constant. Normally, a new random value is calculated per frame. With timeless set to true it only happens once.

Now that we have our seed set up, amp—short for amplitude—is then set to a random value from 0-100 and then multiplied by amt. As amt is basically our animation offset for each character but represented by the range 0-1, multiplying those two values remaps that range to the values we need to output for the Amount property—an array of three values from 0-100%.

In this case we're randomizing that percentage range so that each character can move up to 100% of the max value we have set.

if(random(0,1) > .5) {
    [amp,0,0];
} else {
    [0,amp,0];
}

Finally, we grab a new random value from 0-1 so that we can use a conditional to make values above .5 affect the x value, and those below affect the y value. If you had 3D characters you could make this affect all three values since the Amount property is 3-dimensional. But I only want to use 2 dimensions. So we just output an array with values for x, y, z and we're done with that property.

We just have one more expression to do. You might have noticed that I mentioned a max value, but we didn't bring that slider in. Well, the issue is that we can only output a percentage for Amount, not a value. But that's actually a nice flexibility. That means we can set all sorts of different values for the properties in our text animator and they will scale accordingly.

group = thisProperty.propertyGroup(2).name.slice(-1);
max = effect("Max Value " + group)("Slider");
mul(value,max);

I've added this simple expression to a Position property within the animator containing our Expression Selector. We set up a group variable as before though this time it's just 2 groups up.

Then we grab our max slider value, and then we use mul(vec,scalar) to multiply our value array by that maximum value. The cool thing about this is that we're using value so you can change the value of the property to modify what we get from the max slider. So if the slider is 500, you can set the property to [2,.5] and the final value will be [1000,250]. In my case, I wanted my text to possibly go right and up so I set my Position value to [1,-1].

You can also set it to [1,1] and set the random for amp in the Amount property to go from -100 to 100 so the text can move in either direction. There's a lot of different combinations of things you can do with this effect. I've added another project file to the download for Tutorial 118: Text Breakup so if you purchased that, you should've gotten an email about that. And if you didn't you can grab this setup from our Gumroad shop if you like.

HomePod - Welcome Home by Spike Jonze

Joe Clay | Mar 30, 2018

You might have seen this excellent looking spot by Spike Jonze for Apple's new HomePod. I had a feeling when I was watching it that at least some if not all of it was practical. It felt just perfectly imperfect enough for it to be real. Well, it was. It looks like the only VFX was just removal work, and there might not have even been much of that other than the guys moving the couch. This would be a fun set to play on! That table is amazing!

Make sure to watch the final before checking out the BTS that CollideTV put on below. With the way Spike dances in this, I think they had a missed opportunity to shoot a second version.

Sundial

Joe Clay | Mar 29, 2018

Sundial

Where's Sundial? It's said "Coming Soon" for as long as this site has existed.

Fair enough. I've had a few inquiries into this one. The short of it is that it's now available as a name your own price with some caveats. The long of it is that it's incomplete and macOS only.

Boring History Lesson

I developed Sundial in 2014. One of my goals was to make a plugin. I originally tried to remake Pete's Plugins from his source, especially for his legendary halftone effect, but I could never figure out how it all went together. So I went about building my own from scratch.

I had this great idea. Everyone was trying to make long shadows and had developed all of these different hacks. For quick things, I had always cheated by stacking a few drop shadows. But I figured that I could probably turn that process into a way more efficient plugin. How hard can copying a layer over and over a ton of times be? It was difficult. The docs were ancient and my C++ experience is still low. But eventually I got it working. I even optimized it so that it didn't draw a ton of layers, but grouped them and repeated those groups to get to the desired length.

The only setback I faced, and could never recover from, was that it wouldn't work well with raster images. Every once in a while you'd need to purge. And moving the controls around usually seemed to have the effect of stacking the copies, especially if opacity was used.

So I stopped development completely when an alternative hit the market. I found out recently that others had been working on a similar path and had similar setbacks. I think the code they worked on ended up in a viable version somewhere.

So that's where it stands. As I use Macs, it's macOS only. Had I been able to get the kinks worked out, I probably would have ported it to Windows, but that didn't happen. If those two drawbacks aren't a concern feel free to name a price and download it. But please remember, there is no active development on this one, and it's offered as-is with no support available.

12345