Tutorial 207: Particulates

Joe Clay | Apr 24, 2020

While Trapcode Particular and Stardust are both amazing particle systems in their own right, sometimes you need just a little bit of floaty bits to add to a scene. You could try to bend After Effects' aging built-in particle systems to your will, or you can do what we do—hack your own solution with text animators.

Over time we've come to find, through working with Mikey Borup and through Kyle Hamrick's wonderful Textperiments, that text animators are one of AE's most amazing secret powers. For example, AE's beta only recently got tapered strokes, but they've been hacked in text animators for years. Text animators are the closest thing AE has to Cinema 4D's Mograph system. And so we're going to continue our exploration of text animators to make some floaty particles. Check it out!

Become a Patron

If you'd like to help support Workbench, check out our Patreon page. Thank you for even considering clicking this link to support what we're doing. We appreciate it. Patrons get all sorts of benefits, from R&D files, setups, and elements to early product releases.

Check out our Patreon Today

Grab the Project Files

Get the project file through our Gumroad Store. This project file contains the After Effects file shown in the tutorial as well as a legacy version saved back to AE v14.

If you're buying project files, consider becoming a Patron. At the $5/mo. tier, you get access to project files as they come out and some tutorials also come with additional BTS content showing more of the builds.

Get the project on Gumroad

Tutorial 206: Styling Text

Joe Clay | Apr 6, 2020

In this tutorial, I'll show you how to use regular expressions—aka regex—to style text using the expression selector in text animators. This is particularly useful if you want to change a lot of things that can be broken down into patterns or if you have text you can't easily modify, like text coming from a CSV.

The basic idea is to look for a regex pattern, and then save a string with all of those matches replaced with a certain special character. After that, we do a simple check on that saved string and every spot we find that special character, we set our expression selector to 100.

This idea was sparked by Luis Martínez, who sent me a comment about his method. So make sure to go see how he did it! This tutorial uses his regex to remove the hidden control characters.

I also mentioned Zack Lovatt's ASH Syntax Highlighter in this tutorial, which I'd assume does what I did here as an experiment—but in a better and faster way. So check it out if you need that specific functionality.

I hope you enjoy this one. It has some specific, but really useful utility!

Expressions

Here are all of the example expressions used in the tutorial. These all go into the Amount property of an expression selector.

Yellow
var RE = /(yellow)/g;
    txt = text.sourceText.replace(RE, function($0) {
      return '~'.repeat($0.length);
    });
    if(txt.charAt(textIndex - 1) == '~') { 100; } else { 0; }
Control Characters
var charactersRE = /\r?\n|\r/g;
var controlRE = /[=\*/+-]/g;
txt = text.sourceText.replace(charactersRE,'');
txt = txt.replace(controlRE, '=');
if(txt.charAt(textIndex - 1) == '=') { 100; } else { 0; }
Functions
var charactersRE = /\r?\n|\r/g;
var digitsRE = /[.]{1}([a-z_]+?)[(]{1}/gi;
txt = text.sourceText.replace(charactersRE,'');
txt = txt.replace(digitsRE, function($0, $1) {
    return '_' + (new Array($1.length + 1).join('@')) + '_';
});
if(txt.charAt(textIndex - 1) == '@') { 100; } else { 0; }
Numbers
var charactersRE = /\r?\n|\r/g;
var digitsRE = /(-?)(\d+)/g;
txt = text.sourceText.replace(charactersRE,'');
txt = txt.replace(digitsRE, function($0, $1, $2) {
    return (new Array($1.length + 1).join('@')) + (new Array($2.length + 1).join('@'));
});
if(txt.charAt(textIndex - 1) == '@') { 100; } else { 0; }
Quotes
var charactersRE = /\r?\n|\r/g;
var quoteRE = /('|")(\w+)('|")/g;
txt = text.sourceText.replace(charactersRE,'');
txt = txt.replace(quoteRE, function($0, $1, $2, $3) {
    return '@' + (new Array($2.length + 1).join('@')) + '@';
});
if(txt.charAt(textIndex - 1) == '@') { 100; } else { 0; }

Become a Patron

If you'd like to help support Workbench, check out our Patreon page. Thank you for even considering clicking this link to support what we're doing. We appreciate it. Patrons get all sorts of benefits, from R&D files, setups, and elements to early product releases.

Check out our Patreon Today

Grab the Project Files

Get the project file through our Gumroad Store. This project file contains the After Effects file shown in the tutorial as well as all of the elements used to build it. It also includes a jsx file that contains a library of code that can be used to apply this effect. That was something experimental that we threw in to figure out how it works.

If you're buying project files, consider becoming a Patron. At the $5/mo. tier, you get access to project files as they come out and some tutorials also come with additional BTS content showing more of the builds.

Get the project on Gumroad

Tutorial 205: Animated Pipes

Severo Ojea | Apr 2, 2020

In this tutorial we take a look at creating an interesting loop. We'll make procedural pipes using splines, cloners, and CV Chamfer. This will allow us to create pipes, bend them, put bands around the joints, and move clones through the pipes. It's a simple but powerful setup.

You'll need to make sure you have CV Chamfer installed from Cineversity.

Grab the Project Files

Get the project file through our Gumroad Store. This project file contains everything shown in the tutorial. There are three Cinema files that should work in most recent versions of C4D. One file contains the setup for pipes and elements that move through them. The second file contains a larger setup with cloned sections and the final file contains the full setup.

If you're buying project files, consider becoming a Patron. At the $5/mo. tier, you get access to project files as they come out and some tutorials also come with additional BTS content showing more of the builds.

Get the project on Gumroad

Become a Patron

If you'd like to help support Workbench, check out our Patreon page. Thank you for even considering clicking this link to support what we're doing. We appreciate it. Patrons get all sorts of benefits, from R&D files, setups, and elements to early product releases.

Check out our Patreon Today

Tutorial 204: 3D Visualizer

Joe Clay | Feb 20, 2020

In this tutorial, we're taking audio and using it to drive a setup similar to the one we made in Tutorial 166: Free 3D Terrain. By adding some simple expressions to Wave World's Frequency and Amplitude parameters in each producer, we can make our own visualizer. It's like a plane of water that is affected by sound.

While this can be done in vanilla AE by following our other tutorials, Tutorial 70: Pump up the Jam and Tutorial 162: Beat-based Time Shifting, we definitely would recommend Trapcode Sound Keys for best results.

That allows us to easily split of frequency ranges and make a more unique visualizer that can pulse with different elements of your audio.

Expressions

These are the expressions for using Sound Keys. If you're using vanilla AE, you'll need to normalize your audio (find the highest peak in your audio graph and divide by that) and then multiply by your amp/freq variable. The first one obviously goes in a producer's Amplitude parameter and the second one goes into Frequency.

amp = thisComp.layer("Controller").effect("Amplitude Multiplier")("Slider");
thisComp.layer("SoundKeys").effect("Sound Keys")("Output 1") * amp;
freq = thisComp.layer("Controller").effect("Frequency Multiplier")("Slider");
thisComp.layer("SoundKeys").effect("Sound Keys")("Output 1") * freq;

This is an experimental adjustment to the Wave Speed parameter. I ended up turning it off.

speed = thisComp.layer("SoundKeys").effect("Sound Keys")("Output 1");
value - (speed * .2);

Become a Patron

If you'd like to help support Workbench, check out our Patreon page. Thank you for even considering clicking this link to support what we're doing. We appreciate it. Patrons get all sorts of benefits, from R&D files, setups, and elements to early product releases.

Check out our Patreon Today

Grab the Project Files

Get the project file through our Gumroad Store. This project file contains the After Effects file shown in the tutorial as well as all of the elements used to build it. Note: it does not contain the music as we cannot distribute it. This project file was built in AE 2020 but there's a legacy version that should work back to CC (15.X).

If you're buying project files, consider becoming a Patron. At the $5/mo. tier, you get access to project files as they come out and some tutorials also come with additional BTS content showing more of the builds.

Get the project on Gumroad

Tutorial 203: Quick Tips 08

Joe Clay | Feb 12, 2020

If you're curious about that Preserve Underlying Transparency thing, check this out. I think it might've also been in one of our quick tips before because it's useful to know about anyway.

And that's it. I hope you can find uses for these tips. They've all been helpful to me so I bet they'll help you. See you next time!

Become a Patron

If you'd like to help support Workbench, check out our Patreon page. Thank you for even considering clicking this link to support what we're doing. We appreciate it. Patrons get all sorts of benefits, from R&D files, setups, and elements to early product releases.

Check out our Patreon Today

Tutorial 202: Depth Matte

Joe Clay | Jan 13, 2020

Sev, Andrew Embury, and I were working on a project using Redshift. For some reason, depth passes from Redshift are true depth passes—i.e. there's no info for focus. The depth is basically colored solely based on distance to camera.

Unfortunately, that means that keeping something in focus inside of After Effects is rather tedious since you can't just select a single grey value and be set. Instead, you have to keyframe the entire sequence so that your focus point is maintained. If you could tell Frischluft or Camera Lens Blur to stick to a point, then you could at least track a spot to keep in focus. Unfortunately, the focus selectors aren't keyframeable. So instead, I built my own workaround, as you'll see in this tutorial.

Expression Code

Here's the code to grab color from the center point of a mask. Remember to set up a Layer Control! Note, from the tutorial, I've removed the hardcoded [1280,720] and replaced it with [thisComp.width/2, thisComp.height/2] so you don't have to deal with that. If you have more than one mask on your layer, you might need to pick a different one when you set up the pt variable.

function getPoint(msk) {
    pts = msk.points();
    x = y = 0;
    for(i = 0; i < pts.length; i++) {
        x += pts[i][0];
        y += pts[i][1];
    }
    x = x/4;
    y = y/4;
    return [x,y];
}

L = effect("Layer Control")("Layer");
pt = getPoint(mask("Mask 1").maskPath) + [thisComp.width/2, thisComp.height/2];
L.sampleImage(pt, [10,10], true);

Apply the next expression to a Slider Control. I made it a Master Property to get its data to the parent comp, but since you should bake this expression anyway, you can just bake the slider and copy it to the main comp if you want. The Master Property setup is nice because it's easy to test it before you bake it and if you need to change it, you just turn the expression back on and then bake it again. And as I mentioned in the tutorial, if you invert your matte in your blur plugin you might be able to remove the 255 - bit.

255 - (content("Rectangle 1").content("Fill 1").color[0] * 255);

Become a Patron

If you'd like to help support Workbench, check out our Patreon page. Thank you for even considering clicking this link to support what we're doing. We appreciate it. Patrons get all sorts of benefits, from R&D files, setups, and elements to early product releases.

Check out our Patreon Today

Tutorial 201: Ugly Sweater

Joe Clay | Dec 13, 2019

In this After Effects tutorial, we take a look at how to build an ugly sweater. We start off by drawing a single stitch, and then repeat that into a full grid. Vertically, we skip every other row because we're coloring these using a source comp that has Mosaic applied to it. However, our Mosaic covers those skipped sections. If we only had one layer of fabric, we'd see the edges.

So instead, we skip rows and then use another copy of our source comp with another Mosaic on it. It needs to match up with the alternated threads, so we move it up with an effect like Motion Tile or Offset so that we don't lose the edges of our source, then we apply Mosaic, and then we shift it back into place. Mosaic doesn't have a setting to shift its effect, so we shift the layer instead.

After that we continue to build our effect procedurally, using adjustment layers to build the background of the fabric from the foreground. We rough it up, and add some fuzz to it to make it more realistic. And then we call it a day.

Many people have created this effect, so look around and experiment to make your own. It's a fun exercise to recreate real-world objects and I'm glad I could share my process with you!

Become a Patron

If you'd like to help support Workbench, check out our Patreon page. Thank you for even considering clicking this link to support what we're doing. We appreciate it. Patrons get all sorts of benefits, from R&D files, setups, and elements to early product releases.

Check out our Patreon Today

Grab the Project Files

Get the project file through our Gumroad Store. This project file contains the After Effects file shown in the tutorial. There's also a few extra pieces in it that weren't demonstrated. It was built in AE 2020 but there's a legacy version that should work back to CC (15.X).

If you're buying project files, consider becoming a Patron. At the $5/mo. tier, you get access to project files as they come out and some tutorials also come with additional BTS content showing more of the builds.

Get the project on Gumroad

Tutorial 200: Slice

Severo Ojea | Nov 15, 2019

This week, we took some inspiration from Damien Hirst and magnetic resonance imaging (MRI) in order to develop a slicing technique inside of Cinema 4D. We made use of Voronoi Fracture Objects in an unconventional way. Instead of using the default setup, we used a spline with evenly spaced vertices along with Plain Effectors to slice up a 3D model of a RED Epic Dragon from GrabCAD.

We rendered a few different different pieces using some different techniques with basically the same setup. One of the more interesting renders involved using the x-ray technique from Tutorial 192: Scan. Then we brought it all into After Effects to composite.

Using my renders, Joe changed colors, added glows, and retimed some elements. He also took the renders and matted them using time-shifted versions of the same layer to get other slices inside of AE to dress up the edges as the Epic reveals. And then he graded it.

Working together to build this tutorial is indicative of the new direction that we're heading in. Currently, we rarely work on tutorials together other than maybe for a thumbnail. We want to build more things together, instead of always working independently. And that's going to be a big part of this channel moving forward.

Catch you on the next one!

Grab the Project Files

Get the project file through our Gumroad Store. This project file contains everything shown in the tutorial. It also includes other elements used in the thumbnail and GIF animation as well as the LUT we used to grade the final look and the original and final 3D renders. The C4D file is R20+ because it requires fields.The After Effects project was built in AE CC 2020 but a version that works in 2018 is included.

If you're buying project files, consider becoming a Patron. At the $5/mo. tier, you get access to project files as they come out and some tutorials also come with additional BTS content showing more of the builds.

Get the project on Gumroad

Become a Patron

If you'd like to help support Workbench, check out our Patreon page. Thank you for even considering clicking this link to support what we're doing. We appreciate it. Patrons get all sorts of benefits, from R&D files, setups, and elements to early product releases.

Check out our Patreon Today

Tutorial 199: Bit Growth

Joe Clay | Nov 4, 2019

My apologies to Josh Yeo. Go check out his channel! If you're interested in filming and you like what we do, I think you'd like him. Plus he's entertaining, and he's got a great shirt.

So in this week's After Effects tutorial, we take a look at a simple bit growth effect. It basically takes a greyscale map, uses Extract to animate it in, and then the look is achieved with Mosaic and Find Edges. You could also use CC Image Wipe to animate. Block Dissolve also works wonders for that as it makes the growth more labored and mechanical. Or you could even combine them using blend modes and then run Mosaic and Find Edges—or CC Kernel—in an adjustment layer.

There's a lot of flexibility in this technique, but what helps to sell it most is to set Find Edges to blend with the original, instead of using it at 100% intensity. That gives this look a depth it wouldn't normally have.

I also mentioned our Procedural Circuitry Tutorial so go check that out! It might give you ideas for other uses of this technique.

Expression Code

For the square mosaic, add this code to the vertical blocks setting. I don't remember why I made the variable f in the original, but I've changed it to w here and in the project file for width, since that's what it is.

w = 1920/effect("Mosaic")("Horizontal Blocks");
1080/w;

Grab the Project Files

Get the project file through our Gumroad Store. This project file contains everything shown in the tutorial. It also includes other elements used in the thumbnail and GIF animation as well as some mattes based on the technique, and a few other looks and setups. The After Effects project was built in AE CC 2019 but a version that works in 2017 is included.

If you're buying project files, consider becoming a Patron. At the $5/mo. tier, you get access to project files as they come out and some tutorials also come with additional BTS content showing more of the builds.

Get the project on Gumroad

Become a Patron

If you'd like to help support Workbench, check out our Patreon page. Thank you for even considering clicking this link to support what we're doing. We appreciate it. Patrons get all sorts of benefits, from R&D files, setups, and elements to early product releases.

Check out our Patreon Today

Tutorial 198: Faking Waves

Severo Ojea | Oct 28, 2019

Creating water effects in Cinema 4D Does not always have to involve laborious simulations. Using simple tools you can easily create a dynamic toon-shaded wave animation. To see an excellent version of this technique, which we referenced for this tutorial, check out everfresh on twitter. There's some killer no-particle no-simulation work on that feed.

By displacing a plane using fields we'll build a wave. And then we'll add foam to the top of the wave by running two splines through the same setup and projecting them onto our wave surface using Magic Projector from Nitro 4D. We'll then clone spheres onto those splines, and then mesh the two together with VDB Mesher. With a simple material built using the Sketch and Toon cel shader in the luminance channel, we'll texture our foam. Then we'll finish it off by texturing the water using a simple noise setup—also in luminance.

And that's it. As you can see on everfresh's twitter, there's a lot of things that can be built using similar setups.

Grab the Project Files

Get the project file through our Gumroad Store. This project file includes the setup shown in the tutorial and an alembic cache. It's R20+ because we're using fields.

If you're buying project files, consider becoming a Patron. At the $5/mo. tier, you get access to project files as they come out and some tutorials also come with additional BTS content showing more of the builds.

Get the project on Gumroad

Become a Patron

If you'd like to help support Workbench, check out our Patreon page. Thank you for even considering clicking this link to support what we're doing. We appreciate it. Patrons get all sorts of benefits, from R&D files, setups, and elements to early product releases.

Check out our Patreon Today

123456789101112131415161718192021