The green rain in The Matrix isn’t CGI. It isn’t an animation sequence generated on a Silicon Graphics workstation. It’s a practical effect rooted in real hardware, real phosphor physics, and real cascading code displays that existed decades before Neo took the red pill. The iconic visual is closer to documentary footage than science fiction—a stylized recreation of something engineers had been staring at on CRT monitors since the 1970s.

This is the history of that effect: where it came from, how Hollywood adopted it, what the original source material actually was, and how Matrix Desktop recreated it for macOS using Metal shaders that simulate the same phosphor physics that made it glow in the first place.

The Green Phosphor Origin Story

Before LCD panels, before LED backlights, there were cathode ray tubes. CRTs fired an electron beam at a glass screen coated in phosphor compounds, and those compounds glowed when struck. The color of the glow depended entirely on the phosphor type.

P31 phosphor was the standard for monochrome data terminals. It emitted a vivid green—not the dark forest green of a pine tree, but a bright, almost electric green that burned itself into the retinas of anyone who spent long hours in front of a terminal. P31 was chosen for a practical reason: it had excellent persistence, meaning the glow lingered briefly after the electron beam moved on, reducing flicker at the low refresh rates of the era.

But persistence came with a side effect: decay. As the phosphor glow faded, characters on screen didn’t disappear instantly. They dimmed gradually, leaving ghostly afterimages that trailed behind scrolling text. On a terminal scrolling log data or dumping code, this created a natural cascading effect—bright characters at the top, fading to dim echoes below. The text appeared to rain down the screen.

This wasn’t a design choice. It was physics. And it looked exactly like what the Wachowskis would later put on a 60-foot movie screen.

Hollywood’s Love Affair

Hollywood discovered cascading code displays long before The Matrix. The visual language of “hacking” on screen has always been green text on black backgrounds, and for good reason—that’s what real terminals looked like.

WarGames (1983) featured David Lightman’s IMSAI 8080 connected to a monochrome monitor. The scrolling text sequences weren’t special effects—they were filmed off actual hardware. The green-on-black aesthetic entered the cultural lexicon as shorthand for “computer.”

Sneakers (1992) took it further, with cascading terminal output playing a central role in the film’s hacking sequences. By this point, the green rain aesthetic was a deliberate stylistic choice, not just a side effect of the hardware. Directors understood that scrolling green text on a dark screen communicated “technology” more viscerally than any explanation could.

The Matrix (1999) turned the motif into mythology. The Wachowskis didn’t just show terminals—they made the cascading code the literal fabric of reality. The green rain wasn’t something characters looked at on a screen. It was the screen. It was the world. The visual went from a prop to a philosophy.

The Real Source Material

The Matrix’s digital rain was created by Simon Whiteley, the film’s production designer for the code sequences. Whiteley didn’t generate the characters procedurally or pull them from a font library. He scanned pages from his wife’s Japanese cookbook.

The character set is primarily katakana—one of the two Japanese syllabaries—mixed with hiragana characters and a handful of Latin letters and numerals. The total set comprised roughly 60 to 70 unique glyphs. Many of the characters were mirrored horizontally, creating a disorienting effect: familiar enough to suggest language, alien enough to feel like code from another world.

This was a brilliant design decision. Pure random noise would have looked like static. Real English text would have been readable and therefore mundane. But mirrored Japanese characters hit a sweet spot—structured enough to feel intentional, unreadable enough to feel otherworldly. The human brain recognizes them as “writing” without being able to parse them, creating exactly the uncanny-valley effect the Wachowskis wanted.

The characters were composited in columns that scrolled at varying speeds, with brightness that decayed from head to tail—mimicking, whether intentionally or not, the exact phosphor persistence behavior of a P31 CRT.

Real-World Cascading Displays

The Matrix made cascading code displays famous, but they never stopped being real. Industrial and financial systems have used scrolling, column-based data displays for decades—and many still do.

SCADA systems (Supervisory Control and Data Acquisition) monitor everything from power grids to water treatment plants. Their operator interfaces frequently display real-time telemetry in scrolling columns—sensor readings cascading down the screen as new data arrives, old data fading out. On legacy hardware, these ran on the same green phosphor CRTs that inspired the movie.

Bloomberg terminals are another example. Financial data streams in continuously, updating columns of numbers in real time. The density of information and the speed of updates create a visual rhythm that is, structurally, a cascading code display. Traders stare at walls of scrolling data the same way Neo learned to read the Matrix—pattern recognition under pressure.

Stock tickers are perhaps the oldest cascading display of all. The original Edison ticker tape machines from the 1870s printed stock prices on a continuous ribbon of paper, scrolling mechanically as new trades came in. The electronic descendants—the scrolling tickers on CNBC, the LED ribbons wrapping the NASDAQ building—are the same concept: data cascading past faster than any human can read it all, forcing the viewer to watch for patterns rather than individual values.

The Matrix didn’t invent the cascading code display. It recognized that we had been living with them for over a century and turned that familiarity into art.

Recreating the Effect for macOS

Matrix Desktop doesn’t use a pre-rendered video loop. It doesn’t play a GIF. It renders the digital rain in real time using Metal, Apple’s GPU framework, through a 5-pass rendering pipeline that simulates the physics of the original effect.

Each frame passes through five distinct stages:

  1. Character mapping. The GPU selects which glyph to display in each cell of the grid. Characters are drawn from a texture atlas containing the katakana, symbols, and Latin characters. Selection is weighted—some characters appear more frequently than others, matching the distribution in the film.
  2. Vertical scrolling. Each column scrolls independently at its own speed. Some columns move fast, some crawl. The variation creates depth—the illusion that some columns are closer to the viewer than others. Column speeds are seeded randomly at spawn and persist until the column resets.
  3. Randomization. Characters within a column don’t stay fixed. They mutate at random intervals, swapping to different glyphs while maintaining their position and brightness. This prevents the eye from tracking individual characters and reinforces the sense of living, shifting data.
  4. Persistence bloom. This is the pass that simulates CRT phosphor decay. The head of each column—the newest, brightest character—glows at full intensity. Characters behind it dim progressively, following a decay curve modeled on P31 phosphor persistence. The bloom pass adds a soft glow around bright characters, simulating the way phosphor light bled into adjacent pixels on a real CRT.
  5. Compositing. The final pass layers everything together, applies the color palette (green by default, but configurable), and outputs the frame. The compositor also handles edge cases: column wrapping, spawn timing, and the subtle vignette that darkens the screen edges.

The entire pipeline runs on the GPU. The CPU does almost nothing—less than 1% utilization on Apple Silicon. The effect runs at native display refresh rate, whether that’s 60Hz on an older monitor or 120Hz on a ProMotion display.

Why It Matters

The digital rain endures because it captures something true about how we experience technology. It’s not clean. It’s not orderly. It’s old tech chaos—data moving faster than comprehension, glowing and decaying like something alive.

The phosphor flicker of a CRT wasn’t a flaw. It was character. It gave the display a warmth and volatility that modern LCD panels, with their perfectly stable backlights and instant pixel response, cannot replicate. When you watched text scroll on a P31 tube, the display felt like it was breathing. Characters glowed into existence and faded like embers.

Matrix Desktop recreates that feeling by simulating CRT physics rather than just drawing green text. The bloom, the decay curve, the slight brightness variation between columns—these are all modeled on real phosphor behavior. The result is a wallpaper that doesn’t just look like the Matrix. It looks like the hardware that inspired the Matrix.

Twenty-seven years after the film, the green rain remains the most recognizable visual in science fiction. Not because it was invented for a movie, but because it was borrowed from reality—from the phosphor glow of a thousand server rooms, the cascading tickers of trading floors, and the ghostly persistence of electrons hitting glass. The digital rain was always real. Hollywood just pointed a camera at it.

Frequently Asked Questions

What characters does the Matrix rain use?

The original film used Japanese katakana and hiragana characters scanned from a cookbook, plus mirrored versions. Matrix Desktop uses a similar character set optimized for screen rendering at small sizes.

Does Matrix Desktop affect battery life on laptops?

Not noticeably. It runs entirely on the GPU. It disables the wallpaper when your laptop lid closes and throttles when battery drops below 20%.

Can I change the color of the rain?

Yes. You can switch between the original green P31 phosphor and other presets including amber, red, and monochrome. It changes the shader parameters dynamically.

Is the character set the same as the movie?

We use a subset of the same characters. Katakana primarily. We removed some complex ones that don’t render well at small sizes and added symbols like @, #, and $ to mix it up.

Does it work with multiple monitors?

It treats each monitor as a separate canvas. The rain flows independently on each screen.