Streaks and Slitscans
#VFX #VFXarchaeology
This is something I've been planning on doing for awhile, a long Tweet thread on building shooting old school streaks and slitscans on motion controlled animation stands. Since slit scans are just a variation of streaks . . .
I'll cover them later, going through a progression building on the more simple and progressing to more complex techniques that can be a bit mind bending wrapping your head around. Let's start with streaks. What exactly is a streak?
At its most basic, a streak is an extended shutter time photo where the subject moves during the extended open shutter. We've all seen photos where someone moves a light stick at night during and extended open shutter period. That, essentially, is a streak. Image
But for graphics and visual effects, a much more controllable method was needed. So enter the use of motion controlled graphics and animation stands.
Early graphics work was shot on horizontal track cameras with a vertical light box at the end of the track.
Eventually, animation stands such as the Oxberry and Mechanical Concepts down shooters were used to save on space, and it was easier to keep artwork laying flat on the table surface than on an upright lightbox. What exactly is a down shooter?
A down shooter, or animation stand, was originally used for shooting cartoon and cel animation, which was top lit artwork. But with a lightbox in the table, it could also shoot backlit graphic artwork, providing for a bunch of neat visual effects.
So what is a down shooter? At it's most elemental, it's a camera on a vertical support looking down at table surface where artwork was place. The more complex versions could provide movement of the camera, or truck, and the table itself, in N/S, E/W, and rotation.
The table had two peg bars, one below and one above the lightbox in the center of the table. In later years, than hand cranks were removed and replaced with stepper motors hooked up to a motion control system. This is pretty much the standard Oxberry animation stand. ImageImage
A little motion control 101: All of the various axes of movement were handled on separate channels, similar to character rigs in Maya where each axes of motion of a joint is a separate channel. For motion control, rather than channel names, they were given numbers.
0 = truck, 1 = table N/S, 2 = table E/W, 4 = bottom peg bar, 5 = upper peg bar, 6 = lightbox fader. Other channels up to 11 could be assigned to specialty rigs such as extra pegboard, a ripple glass mover at the lens, or just used a placeholders for . . .
curve data to be used in curve math with motorized channels, such as multiplying two curves together to add random noise to an already programmed move. This was a very effective and powerful function.
So we all know in shooting a motion control spaceship that the model didn't move, other than pitch, yaw, and roll, but it was the camera that provided the semblance of motion of the model flying in space. The same is true for the artwork on an animation stand.
If just shooting a piece of artwork coming towards camera, this really wasn't a big deal to visualize. But in programming and shooting a semblance of a 3D object in virtual space, especially if animated during the course of the shot, this could get to be quite the mind . . . .
Because building the streak (or slitscan) could be seen as analogous to to extruding 3D geometry and rendering it onto film where you have no visible physical or virtual representation of that geometry in front of you to look at. 😳
There were two forms of streaks, scan streaks and curve streaks, with curve streaks having a variation, which we'll get to in time. It's best to progress from the simple to the complex so we understand all the principles involved.
Scan streaks (which sounds redundant) are just what the name says, a streak that scans a piece of artwork from point A to point B. Scan streaks were quite popular in the 1970s and 1980s for Network logos and station IDs.
Arguably the most well known example of scan streaks is the opening titles for the 1978 movie "Superman".

Scan streaks have a head, or point A, and a tail, point B. In order to program a streak move, for each axis of motion you needed a head channel and a corresponding tail channel. We already know that motion channels for the animation stand were assigned 0 - 11.
These would be the head channels. The tail channels would be the head channel number plus 12. So for the camera truck in Z, the camera would be streaking from the position on channel 0 to the position on channel 12. And thus the same for the other axes of motion.
In order to build the moves, you used a jog box, which had driver controls for each axes of motion and simple curve calculation functions. You also had more refined curve controls and keyframe manipulations on a graph on a monitor.
Keep in mind this was very rudimentary to the graph controls we have now in current CGI software. Most motion control systems were run on IBM clone AT and XT computers, running the software off of a floppy disc.
So first you built your head channel moves, and then moved that curve date up to the tail channels. Don't worry, we're going to swap them back. Then you built your tail channel move on the 0 - 11 channels. Once you had your tail move built, you swapped channels . . .
with the head channel move, getting that back down to 0-11 and the tail channel moves were now up on 12 - 23. Rather than using stop motion, or single frame shooting, you used a streak command telling the system you were shooting a scan streak.
The software automatically knew then to use 0 - 11 as the start position and 12 - 23 as the tail position for each frame streaking.
Shooting streaks could get a little tricky since the motors were moving during the frame exposure.
Each motor needed a little bit of pre-roll to get up to speed before opening the shutter at the start position. If you weren't careful on the distance you were building your move, the camera could try to preroll beyond the top of its limits at the top of the crane.
This could cause the motor to stall and you'd lose your position in relation to all the other axes. This could happen on any axis if it tried to go beyond the physical limits of its travel. You'd have to go back and re-zero all you axes and start over.
Starting at the bottom was also dangerous as the camera might try to preroll right through the glass of the light box. Very expensive if the lightbox source was neon.
One look of streaks is what was called the faded tail streak. Rather than the Superman logo where the letters are defined the full length of the streak, the tail fades off, looking a bit more nebulous. This was achieved by motorizing a variac on the lightbox . . .
and programming a fade on the lightbox as a streak channel, so as the streak progressed, the lightbox slowly dimmed off. This sort of simulated the look of a radial filter in digital compositing. Another trick was the interrupter artwork.
This would be a bit of art used to break up the edges of the main shape you were streaking. It could be a noise pattern, or airbrushed artwork, whatever. Rather than the solid wall crystalline look of the Superman titles . . .
this would break the edges up in the 'God Ray' look. If the art was on the peg bars, this could be animated each frame to give a scintillating effect, like smoke moving through the light beams. Or you could place differing artwork on both pegbars . . .
moving against each other for a moiré effect with less directionality to the interrupter pattern.
Streaks can take a very long time to shoot depending on how long the streak is in frame, such as titles coming from infinity to camera. The camera would preroll, start the move, open the shutter and start its long exposer to the tail position before . . .
closing the shutter, post roll, and then resetting all the way back to the original positions for the next frame. This took a crazy amount of time to shoot. The answer to this was . . . bidirectional streaking, where the software would shoot one frame head to tail . . .
and the next frame from tail to head. The problem with this could the 170 degree shutter not opening and closing consistently, giving you a final result where the length of the streak could 'chatter', where each end didn't look like it was in the same place . . .
from frame to frame. The answer to this was a capping shutter. This was an extra solenoid driven shutter between the lens and the gate. The solenoid was not a motor, but had either two states, 0 or 1, open or closed.
In shooting a bidirectional streak, the camera would go to its preroll position, the capping shutter would be closed, and as the preroll started, the regular shutter would open. Then when the motors all hit their head positions, the capping shutter would snap open, . . .
giving you a more controlled start to the exposure. Once the motors hit their tail positions, the capping shutter would snap close, the regular shutter would close and the motors would post roll to a stop. Then the motors would preroll (if needed) and the regular shutter . . .
would open, and when the tail position was hit, the capping shutter would pop open and the streak would shoot backwards, fading up the lightbox rather than down, if it were a faded tail streak. This saved a bunch of time.
Not every streak could be shot bidirectional, but it was a big timesaver if it could. Some light boxes didn't fade to off in the same way as they faded up from nothing, so you could get some flicker on your faded tails.
So, that is scan streaking. The next type of streaks were curved streaks and took a bit more mental imagining to build what you were seeing in your mind's eye. It was very mentally intensive and you could easily lose track of time when building one.
It was very easy to start your shift building one, work through lunch without realizing it, and before you knew it, it was 6:00 or 7:00 in the evening. I've even had nights where I dreamt I was the camera going through the streak moves. Very weird.
Curve streaks are what the name says, a streak that can curve and make smooth arcing shapes through the frame, like a snake crawling on the ground. When I think of good examples of curve streaks . . .
I point to the breach of the storage facility when the containment grid explodes in Ghostbusters (1984):

Programming a curve streak used a different methodology than scan streaks, but used some principles we see in curve management in CGI software today. For ease of math and explanations, I'm going to use some nice round numbers, because I'm no mathematician.
Let's say we have a shot in our movie that's 100 frames long with some some sort of streak snaking through the shot. Here's where things get odd, and was a quirk of the motion control software.
What you would do is build a move, a trajectory for your streak much longer in frame length. For my stupidity's sake, let's make this move 1,000 frames long. This 1,000 frames represented the full length of distance that your streak would travel.
The moves would be built on the standard channels of motion, 0-11. Then you would assign special head and tail channels, 24 and 25. On channel 24, the head, you would plot your head positions on your 1,000 frame path. So, on frame 1 of the shot, . . .
the head of the streak would be on frame 10 of the streak's trajectory. Notice I'm specifically avoiding the word 'path' at this point. (You'll see.) And at frame 100 of your shot, the head of the streak will be at frame 1,000 of the streak's trajectory.
On channel 25, you would do the same type of thing for the tail position of the streak. On frame one of the shot, the tail could be at frame one. And at frame 100 of the shot, the tail position could be at frame 900.
Over the course of the shot, the streak is progressing the length of the trajectory while also lengthening from 10 units to 100 units of length. The 'frames' of the trajectory are actually vertices defining the curves of the axes being streaked.
The more vertices, or 'frames' you had on your trajectory move, the smoother your streak would be, but it was also more points to calculate through and hit during the streak, thus slowing down your streaking. You had to strike a nice balance . . .
between streak smoothness and shooting speed and the physical limitations of your particular camera system. Cameras driving on lead screws were much more smooth and accurate than cameras driven on gears and chains which had more 'slop'.
Suppose you built a looser move curve on your head channel, not hitting actual 'frames' or vertices during inbetween frames calculated through the curve? And you wanted to put something on the head of the streak? How would you find those points?
Well, the software had a neat command you could use that would calculate these head positions for you, and then you could shoot a stop motion, single frame move for the head position of an element, like a grain of wheat light with a star filter at the lens.
Okay. A slight addition to curve streaks is called 'path streaks'. This is why I didn't specifically use the word path previously, even though it seems like the curve streaks are streaking along a path. Well, they are. But this is a nomenclature thing.
Using the Ghostbusters shot as an example (I did not work on this, by the way), suppose the wide angle of the NYC skyline had a camera move. Say we started on another part of the city and panned over to the section where the streaks were coming from behind the buildings.
The answer is path streaks. At this point, you program your curve streaks as normal, using your normal move channels 0-11. Then you swap those channels up by 12. Then, back on channels 0-11, you built your match move of the background plate camera move.
You told the software you were shooting a path streak, defining the path channels, and the software would add in the match move offsets to the curve streak trajectory. The first frames of the element would have nothing, and then slowly the streak would start . . .
panning into frame. Very useful if the plate camera was unsteady and you needed to shoot a pin registered streak element that followed the jitter of the plate element. Pretty darn slick.
Okay. Now that we all thoroughly understand scan, curve, and path streaks . . .
SLIT SCANS!
Everyone loves slit scans, because it's a cool sounding name and the most popular example is in a classic film:

So, what is a slit scan? It's just what it says. A piece of artwork is scanned, or revealed, through a thin slit of artwork while the camera is streaking. Remember me talking about the interrupter artwork making the scintillating God Ray effect?
Imagine that artwork on the pegbars isn't just advancing one frame at the time, but it is actually a scan channel itself, moving while all the other motorized axes are streaking. That's it. That's a slit scan. The slit can be a vertical slit . . .
or hairline letter face, a circle (for a tunnel effect), or anything your creativity could come up with. It's fun to play with and experiment and you could easily lose track of time. I got extremely lucky in my first job where my boss would let me come in on weekends . . .
or whenever the camera wasn't busy shooting real work, and load up B&W 5369 hi-con short ends, and experiment building streaks and slit scans, run them through the Prostar (film processor) and see what my results were. This was a huge learning experience . . .
on my young entry level fertile mind. I was in vfx hog heaven. Following are some other examples of slit scans that you may, or may not, have realized were slit scans. See if you can figure out how they were done!
Sorry, this is the best example of this shot I could find. Fortunately it's at the beginning of the video.
The Golden Child (1986) Sardo Numspa transforming from rat to human and back again.

Probably one of my favorite effects of all time. The death of Bavmorda in 'Willow'. The red whoosh. This was explained to me, and I still don't get it. Extra rigs were added on the animation table surface. (Around the 6 minute mark)

'The Rocketeer' jet pack contrails.



Star Trek: The Motion Picture - the wormhole

'Flash Gordon' trailer, around the 2:00 mark

The THX 'Cimarron' conductor's hand intro.

All impressive and fun stuff. I'm sure @agraphafx has a good library of links for other streaks and slit scan reference, from early days to Dr. Who graphics, etc. Maybe he'll share some, as well. Thanks for making it this far! Hope you enjoyed it!
Channel 3 = table rotation.
A good way to plan out how to build your curve streak would be to rotoscope, or project, a frame of the print of your plate on to the table surface at the 'home' position (zero on all axes) onto a piece of animation paper.
On that paper you could sketch the shape of your intended streak, drawing out a central spine, and maybe the widths of it as it progressed through the shot. On the spine, you mark points with suggested frame numbers to hit at that point.
When that is all plotted out, pull the print from the camera and load up some B&W raw stock. Hi-con 5369 would be fine, and shoot some footage of your drawing. Develop this footage, and use it as a new clip to roto, or project, onto the table surface.
Then you can place your art that you plan to streak (just the base shape, no need for interrupter layers), and start building your head and tail moves based on your drawing. This could take a number of iterations to get the timings right, so best to shoot . . .
a number of B&W motion tests before going to color.

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Colin Campbell

Colin Campbell Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!

:(