Bendy 3D Tunnel Animation in After Effects | No Plugins Tutorial

Bendy 3D Tunnel Animation in After Effects | No Plugins Tutorial

The Video Shop 37.7K subscribers
4.4K views · 2025-09-06 Motion Design
Learn how to create a bendy 3D tunnel animation in After Effects—completely without plugins.

In this step-by-step tutorial, I’ll show you how to build a reusable 3D camera rig using expressions to distribute layers along a path, then animate a camera seamlessly through the tunnel for mind-bending motion design results.

This setup is flexible, and can be adapted to text, shapes, and other elements to create a wide range of 3D transitions and tunnel effects in After Effects. Once you’ve built it, you can reuse it across multiple projects for quick and impressive results.

The inspiration for this tutorial comes from a transition by Mahan Gholizadeh:

https://www.behance.net/gallery/191276937/Logo-Animation-Collection-4

If you want to take your After Effects 3D animation skills further, this is a great way to learn how to combine paths, expressions, and cameras to achieve professional results—without relying on any third-party plugins.

=============================================================

*PROJECT FILE:*

Please consider supporting this channel by purchasing the project files below for £5. You’ll get all the files for all the animations featured in this video, plus any future updates.

https://thevideoshop.gumroad.com/l/acuyju

=============================================================

► Copy square: ■

► Copy small square: ▪

=============================================================

*EXPRESSIONS:*

_(replace any instances of ">" or “<” with "greater than" or “less than” sign)_

► Rings Position:

m = thisComp.layer("PathLayer").mask("Mask 1").maskPath;
total = 0;
for (i = 1; i <= thisComp.numLayers; i++){
if (thisComp.layer(i).name.indexOf("ring") !== -1){
total++;
}
}
n = parseInt(thisLayer.name.split(",")[1]);
t = (n-1) / (total-1);
m.pointOnPath(t);

► Rings Y Rotation:

m = thisComp.layer("PathLayer").mask("Mask 1").maskPath;
total = 0;
for (i = 1; i <= thisComp.numLayers; i++){
if (thisComp.layer(i).name.indexOf("ring") !== -1) total++;
}
n = parseInt(thisLayer.name.split(",")[1]);
t = (total > 1) ? (n-1)/(total-1) : 0;
tan = m.tangentOnPath(t);
ang = radiansToDegrees(Math.atan2(tan[1], tan[0]));
ang = (ang < 0) ? ang + 360 : ang;
offset = 0; // try 90, -90, or negate at the end if needed
(ang + offset) % 360

► Camera Null Position:

m = thisComp.layer("PathLayer").mask("Mask 1").maskPath;
t = effect("Percent Along Path")("Slider")/100;
m.pointOnPath(t)


► Camera Null Y Rotation:
m = thisComp.layer("PathLayer").mask("Mask 1").maskPath;
t = effect("Percent Along Path")("Slider")/100;
tan = m.tangentOnPath(t);
ang = radiansToDegrees(Math.atan2(tan[1], tan[0]));
ang = (ang < 0) ? ang + 360 : ang;
offset = 0;
(ang + offset) % 360


=============================================================

*TYPEFACE:*

► M PLUS Rounded 1c: https://fonts.google.com/specimen/M+PLUS+Rounded+1c

=============================================================

*RECOMMENDED TOOLS (Affiliate Links):*

Get $50 off Motion Array: https://bit.ly/3Vsv4LV
Get $50 off Artlist: https://bit.ly/43UKqgU
_(This video isn't sponsored, but using these links means I may receive a small commission at no extra cost to you. Your support helps me create more free tutorials)_

=============================================================

► Download the FREE After Effects project file for this tutorial: https://www.dropbox.com/scl/fi/j4uz6cjq4wpld3twlas64/black-and-white-stripe-tunnel.aep?rlkey=gvb3o49b62wkowivk646qcp9f&st=9mj333gq&dl=0

=============================================================

*CHAPTERS:*

00:00:00 - Project and Comp Settings
00:00:30 - Text Layer Settings
00:05:25 - Rename Text Layer
00:05:40 - Creating Tunnel Spline
00:07:22 - PathLayer Null
00:07:56 - Cam Null
00:08:10 - Orientation and Anchor Point of Ring Layer
00:09:06 - Expression for Ring Position
00:11:23 - Expression for Ring Y Rotation
00:12:38 - Camera
00:12:59 - Slider Control
00:13:17 - Percent Along Path Expression
00:13:58 - Camera Null Y Rotation Expression
00:14:22 - Camera Null Orientation
00:14:40 - Camera Z Position
00:15:54 - Rings Z Scale Controller
00:17:18 - Adjusting Mask Path
00:18:54 - Ring Colours
00:19:17 - Animation
00:20:23 - Rotate Loop
00:22:37 - Circles Sinkhole
00:23:29 - Checkerboard Donut
00:24:27 - Bendy Tunnel
00:25:33 - Mahan Gholizadeh
00:26:08 - Tips for Tweaking or Improving Setup

=============================================================

*CONNECT*

► The Video Shop Long Play: https://www.youtube.com/channel/UCCWaiSIYnSwxIXmb7MBczaw

► Subscribe for more tutorials and motion design tips: https://www.youtube.com/channel/UCCuJz7_aphxhoq8RdKbFE9Q?sub_confirmation=1

► If you have any questions just let me know in the comments.

► Find me online: https://linktr.ee/TheVideoShop

=============================================================

#aftereffectstutorial
#animation
#AfterEffectsTips
#learnaftereffects
#motiondesign
#learnmotiondesign
#learnanimation