1,600 Tae-Bo Warriors Attack New York Back to Episode 13: Demolition Derby It's relatively easy to make a large "phantom" army out of a small group of "real" soldiers using a compositing program like After Affects. After shooting a a group of 20 or so aliens with an alpha channel, just import the footage into AE and multiply it as many times as you want. Bingo, instant army. This technique may be simple, but if you want to move the camera, you're stuck. You can try to dolly the camera left and right by moving the individual layers within After Effects. If you're not careful, though, you can get the layers slipping, moving at different speeds or traveling different distances and all of a sudden you've got an army on ice. Zooming or panning won't work at all - you end up with some very weird perspectives. You can also have lighting problems with guys on the extreme right having the same shadows as the ones on the left. In order to get the proper 3D perspective on all your guys, you have to shoot your entire army within the 3D program. But unless you're ILM or Digital Domain, you probably don't have the computing horsepower required to plop 1,600 models into one scene and make them all do Tae-Bo while destroying New York, which is exactly what needed to happen in episode 13 of Cheese Wars, Demolition Derby. You'll still need a compositing program to glue the pieces together, but all the manipulation and multiplication is done inside the animation software.
FlyEye view of 20 Tae-Bo Warriors. The solution came from the infamous bullet-time shot in The Matrix. In order to get a slow-motion 360 degree move while stopping the actors in mid-air, the person is positioned inside a ring of Nikons which all go off at once. The still pictures are then stictched together to get what looks like a camera moving all the way around. But if you think about each one of the cameras seperately, what you've really got is one picture of 120 different Keanus. Oh my god, a regiment of Keanus! They'll be making Bill and Ted movies forever! What you're going to do in your 3D program is essentially recreate the bullet-time shot, only you're going to use the footage from all the cameras at the same time. The cameras are strapped together in a rig called FlyEye since what we're doing is akin to the compound eye found on houseflies. Since Cheese Wars is created in Hash's Animation:Master, that's what we'll use to describe the details. If you've got a different program, you should be able to figure it out pretty easily. First, we'll start with the basic rig. This is the one used in Demolition Derby to dolly and zoom in and out, but it can't pan. We'll get to panning later on.
One group of Tae-Bo Warriors. Start in Choreography mode with your group of soldiers. How many you want to use depends on how fast your computer is and how complex you want your rendering to be. There are 20 aliens in Demolition Derby which was about as many as could be put in one scene without making the compuer puke. Just experiment with how many models your machine can handle and how big you want your army to be. Line them up in formation and give them all an action to walk or shoot or yo-yo. If you split the group into two rows like above, remember this piece of advice: even the most idiotic of armies knows you have to offset each row or they'll shoot each other in the back. (Only the first two rows of Tae-Bo Warriors are actually shooting in the clip. The rest are there for moral support.) Now that you've got your group, put one camera in front of the center soldier. Name this camera "CENTRAL."
Add another camera, called "LT1." Put "Translate To" and "Orient Like" contraints on LT1, both of which use CENTRAL as their target. Place the camera by using the "X-Offset" option under "Translate To." Where you put LT1 is a matter of trial and error and depends on how big your group of soldiers is, what your focal length is and how far you're going to be moving the camera. Move CENTRAL back a few hundred centimeters with LT1 in tow. As CENTRAL moves away and begins to show empty space on either side of the group, LT1 should be picking up the first couple of soldiers on the side of its frame. If you get some overlap, it's fine. Experiment and see what works well for you. For now, we'll say LT1 goes to -350 cm.
Now that you've got one camera, start adding more, each with the same constraint setup and each spaced evenly apart: LT2 is at -700, LT3 is at -1050, etc. Add the same number of cameras to the right of CENTRAL as you do to the left. You may have to space the RT cameras differently than the LT ones because of the staggered formation. If you want more than one line of soldiers, save the project as "LINE 1" then save again, this time as "LINE2." Figure out how much space you want between your lines - say 200 cm - then move CENTRAL's starting point back by 200 cm. Go to the end of the animation and move CENTRAL's end point back by 200 cm. Repeat as necessary. Because the Tae-Bo Warriors in Demolition Derby are rather incompetent, I offset the marching actions of each soldier by a couple of frames compared to the LINE1 soldiers to give the shot a little more natural feeling. If you were doing robots or Marines, you might want to keep the groups more strictly synchronized.
It's either the entire Tae-Bo army or a bunch of greenish-yellow ants. Now that you've got your FlyEye rig, it's time to play around with it. Make sure you only move CENTRAL, and the rest will tag along obediently. If all you want to do in your shot is zoom and dolly left and right, you're all set. Depending on how many cameras you use, you may have to zoom way out in order to get the ones on the edges to see anything. Demolition Derby used 13 cameras which had to back up almost 5000 cm while zooming out from 60 to 30 to get RT6 and LT6 full. (Don't forget to make sure all the cameras are zooming at the same time.) The resulting army is a bunch of moving green dots on the 320x240 web version, but looks good at full video size. While that kind of shot is pretty cool as is, you've still got problems if you want to pan the camera. Rotating CENTRAL will indeed rotate the others, but they're also going to move and the ones on the outside are going to move a whole lot more than the ones on the inside. You'll end up breaking your one smooth line into a bunch of smaller parallel ones. What's needed is a base that will anchor the cameras while still letting them rotate. Download it here. (Use "Save Target As... if your browser just pops up a text file. If your computer gives you a choice, don't save it a a text file.) You might want to think of this model as a beta version - I've tested it but never used it in an animation so there are probably some things that need fixing.
Rotating FlyEye. Forward Lock and FlyEye Bones are separated for clarity but shoud be right on top of each other. To get the rotating FlyEye, you need to start in Modeling mode. Add a cylinder and a bunch of cameras and save it as "FLYEYE." The cylinder isn't absolutely necessary, it just makes it easier to move the rig and counter-rotate it. If you do add it, make sure it's below the camera lenses.
Add a bone that originates where the pink cone of CENTRAL originates. Name the bone "FORWARD LOCK." Now, move the "SHORTCUT TO FLYEYE" bone to the same position so that FORWARD LOCK and SHORTCUT are sitting on top of each other. Create a new pose called "FlyEyeRotate." For CENTRAL camera, add a "Translate To" constraint with FORWARD LOCK as the target. With your other cameras, add a "Translate To" to FORWARD LOCK and a "Orient Like" to CENTRAL. Position them using X-Offset like you did before.
You can move the rig by grabbing the cylinder. Rotating requires two steps: 1) Grab SHORTCUT TO FLYEYE and aim it. 2) Grab FORWARD LOCK and counter-roate it the same amount in the opposite direction. The cylinder should be nice and straight. Most of the time, it's easier to look at the numeric rotation readouts for SHORTCUT and type in the opposite numbers for FORWARD LOCK.
SHORTCUT is rotated right, but FORWARD LOCK is counter-rotated to remain straight This rotates all the cameras the same amount as CENTRAL, but forces them to stay where they are. I know there is a way to eliminate the second step by constraining FORWARD LOCK to remain pointing forward no matter what you do to SHORTCUT. But no matter how I try to accomplish this, the FLYEYE breaks apart. Very weird. If you figure it out, please let me know. Now you've got the complete FlyEye setup. If you're going to pan, be careful with how you move the rig, since it's fairly easy to rotate and dolly too far and expose your massive army for a pathetic little group of 20. RENDERING Now comes the tedious part. Render each camera to .TGA with an alpha channel and no background. Save the frames from each camera to a separate folder with the camera name somewhere in the title. Render the background from CENTRAL only. Import each of your camera shots and the background into After Effects. Import your various camera folders into the composition and voila! You don't have to do a thing in After Effects besides render to a new movie.
If AE doesn't place the TGA sequences in the right order in the composition, the CENTRAL frames should be on top with the inside cameras right below and the outside cameras on the very bottom, just above the Background. To help save on RAM costs if you've got a bunch of lines, try using multiple projects and composing each line separately as its own .TGA sequence. Then import each overall line sequnece into the main project. That's about it for the FlyEye camera, although I'm sure there are a bunch of ways to improve it. If you find a way or end up using the FlyEye in one of your own animations, drop me a line. |