Adobe After Effects User Manual
Page 708

startFade = 500; // Start fade 500 pixels from camera.
endFade = 1500; // End fade 1500 pixels from camera.
try
{ // Check whether there's a camera
C = thisComp.activeCamera.toWorld([0,0,0]);
}
catch(err)
{ // No camera, so assume 50mm
w = thisComp.width * thisComp.pixelAspect;
z = (w/2)/Math.tan(degreesToRadians(19.799));
C = [0,0,-z];
}
P = toWorld(anchorPoint);
d = length(C,P);
linear(d,startFade,endFade,100,0)
The fade starts at a distance of 500 pixels from the camera and is complete at 1500 pixels from the camera. The linear interpolation
method is used to map distance values to opacity values.
Expression example: Make a 3D layer invisible if facing away from camera
Apply the following expression to the Opacity property of a 3D layer:
if (toCompVec([0, 0, 1])[2] > 0 ) value else 0
Dan Ebberts explains this expression on his
Expression example: Flip layer horizontally if facing away from camera
Apply the following expression to the Scale property of a 3D layer:
if (toCompVec([0, 0, 1])[2] > 0 ) value else [-value[0], value[1], value[2]]
Expression example: Animate scale at each layer marker
Apply the following expression to a Scale property to make a layer wobble at each marker:
n = 0;
t = 0;
if (marker.numKeys > 0){
n = marker.nearestKey(time).index;
if (marker.key(n).time > time) n--;
}
if (n > 0) t = time - marker.key(n).time;
amp = 15;
freq = 5;
decay = 3.0;
angle = freq * 2 * Math.PI * t;
scaleFact = (100 + amp * Math.sin(angle) / Math.exp(decay * t)) / 100;
[value[0] * scaleFact, value[1] / scaleFact];
704