In this video I’ll show you how to create an easily customisable dynamic carousel rig in After Effects.
I’ll show you what expressions you’ll need to use, and what they do. And when you’re done you’ll have a full controllable rig with slider controls you can tweak for any project, whether it’s showcasing stills, footage or type.
=============================================================
If you want to support the channel please consider buying the full version of the project file below
► Download the full project file for £5: https://thevideoshop.gumroad.com/l/jfsth
=============================================================
Expressions
Position Point on Path Expression:
p = thisComp.layer("path").content("Ellipse 1").content("Path 1").path;
r = thisComp.layer(":: control ::").effect("rotation")("Angle");
lc = 12;
x = parseInt(thisLayer.name.split(" ")[1]) - 1;
t = (x / lc + (r / 360)) % 1;
pointOnPath = p.pointOnPath(t);
then add below for path offset: (replace ">" with "greater than" sign)
tan = p.tangentOnPath(t);
nor = [-tan[1], tan[0]];
offsetA = 0;
offsetA = thisComp.layer(":: control ::").effect("offset")("Slider");
offset = nor.map(n => n * offsetA);
add(pointOnPath, offset);
Rotation Expression:
p = thisComp.layer("path").content("Ellipse 1").content("Path 1").path;
r = thisComp.layer(":: control ::").effect("rotation")("Angle");
lc = 12;
x = (thisLayer.name.split(" ")[1]) - 1;
t = (x / lc + (r / 360)) % 1;
tangent = p.tangentOnPath(t);
angleRad = Math.atan2(tangent[1], tangent[0]);
radiansToDegrees(angleRad);
Scale Expression:
sc = thisComp.layer("scale controller");
distance = length(toWorld(transform.anchorPoint), sc.toWorld(sc.transform.anchorPoint));
maxDist = sc.effect("max distance")("Slider");
minS = sc.effect("min scale")("Slider");
maxS = sc.effect("max scale")("Slider");
scaleFactor = linear(distance, 0, maxDist, maxS/100, minS/100);
[scaleFactor * 100, scaleFactor * 100];
Layer Count Expression: (replace "<" with "less than" sign)
layerNumber = 0;
layerStartWith = "image";
for(i=1;i<=thisComp.numLayers;i++){
if (thisComp.layer(i).name.slice(0,layerStartWith.length) == layerStartWith) layerNumber =layerNumber +1;
}layerNumber
=============================================================
Get $50 off Motion Array [Affiliate link]: https://bit.ly/3Vsv4LV
Get $50 off Artlist [Affiliate link]: https://bit.ly/43UKqgU
This video isn't sponsored but if you subscribe I will receive a small commission.
=============================================================
► Download the free project file: https://thevideoshop.gumroad.com/l/yulrp
► Download other free project files from my gumroad: https://gumroad.com/thevideoshop
=============================================================
Chapters:
00:00:00 - Intro
00:00:20 - Project Settings
00:00:31 - Ellipse Settings
00:01:05 - Image Precomps
00:01:33 - Control Null
00:01:47 - Angle Control Slider
00:02:18 - Expression Editor Font
00:03:37 - Position Expression
00:07:26 - Adding Slider Controls
00:08:31 - Scale Expression
00:12:26 - Rotation Expression
00:15:41 - Layer Count Expression
00:18:09 - Original Animation Reference
00:18:27 - Keyframing and Easing
00:22:20 - Spotlight
00:23:12 - Final Result
=============================================================
► Subscribe for more tutorials like this: / @thevideoshoplondon
=============================================================
► If you have any questions just let me know in the comments.
► Find me: https://linktr.ee/TheVideoShop
#aftereffectstutorial
#animation
#learnaftereffects
#motiondesign
#learnmotiondesign
#learnanimation
Nesta página do site você pode assistir ao vídeo on-line Dynamic Carousel Rig | After Effects Tutorial duração hora minuto segundo em boa qualidade , que foi baixado pelo usuário The Video Shop 16 Maio 2025, compartilhe o link com seus amigos e conhecidos, no youtube este vídeo já foi visto 16,815 vezes e gostou 1.2 mil espectadores. Boa visualização!