↑ ↓ CHAPTERS · SPACE PLAY · W WIPE · N NOTES · T TIMER · F FULLSCREEN · ? KEYS
Lucky Greyhound
A short film seen entirely through a greyhound’s eyes — and what it took to build that camera with Google Flow.
MATIAS COLLADOGemini Omni FlashNano Banana ProVeo 3.1MidjourneyCanon C200
SCROLL ↓
The film
Born to run. Discarded when he stops winning. Saved by luck.
A black greyhound, from his first blurry minute of life to a garden where someone finally waits for him. No dialogue. No narrator. We are the dog.
ACT I · INNOCENCE LOST
The litter
Warm light, brothers, a mother’s heartbeat. Then the truck.
ACT II · THE SYSTEM
The track
Back-road races, the trainer’s hands, the injury, the empty bowl, the dump.
ACT III · LUCK
The garden
A woman who crouches and waits. A rope, a child, a reflection.
Why this storyGreyhound racing was banned in Argentina in 2016. It didn’t disappear — it moved to dirt roads, and the dogs that stop winning are dumped.
Format~2 minutes, 56 shots, three color worlds: warm amber (home), cold teal-grey (the system), soft gold (luck).
ConstraintEvery single frame is first-person. The hero never appears — except once, in a bowl of water.
Why POV
We don’t watch him suffer. We live it.
Every frame is seen through his own eyes. The violence in this film is physical — but mostly it is emotional: being chosen, used, and thrown away. The goal is simple and brutal: whatever he goes through, the audience goes through.
ImmersionNo establishing shots, no narrator, no explanation. Only what he sees, smells and hears — and what he doesn’t understand.
The other violenceA blow lasts one second. What stays is the waiting: the empty bowl, the cage at night, the truck that never comes back.
Empathy → impactIf you watch a dog suffer, you pity him. If you are the dog, you feel it — and when luck finally finds him, you feel that too.
PayoffWe see his face only once: a reflection in the last shot — the moment you realize who you have been.
P38 · THE ONLY TIME WE SEE HIS FACE
Everything he suffers, we feel.THE RULE OF THE FILM
Cast
Characters built for a camera that can’t see itself.
Still to design
The trainer’s familyAdults posing with the prize, and someone taking the photo — P17.1–P17.2.Next
The dump peopleLegs and silhouettes against a fire barrel — P29.1.No faces · by design
The childOnly through text: Flow doesn’t allow images of minors. Plan B: another dog.Text only · Flow policy
His body, as he sees it
Same legs, same framing. The scab becomes a scar in the exact same spot.
Character sheets are for us. On screen he is a snout, two paws and — once — a reflection.
The world
Twenty locations, day and night.
Every location is approved once in Midjourney, then varied in Nano Banana Pro — same geometry, new hour. Drag across the night shots.
Locations
Props
Objects that tell the story before anyone moves.
The hardest asset
Four centimeters of nose.
Every model we tried knows what a dog looks like. None of them knows what a dog sees. Ask for “a dog’s point of view” and you get a GoPro strapped to its head.
What the models think a greyhound sees · click to enlarge
How we got the real one
Start from a photograph of the impossible angle. Let the model only recolor it.THE RULE THAT FINALLY WORKED
Every video we made, judged
288 videos. One question.
We read the whole project back — every video generation with its prompt, model and inputs — and asked one thing of each: is the camera him? Snout, height and action have to survive. Hover any square to see its prompt.
The camera is himPartlyFailedVeo 3.1 · the rest are Omni
Hover a square.
Attempt one · Veo 3.1 with first frames & image references
Veo 3.1 can’t see like a dog.
We gave Veo what it asks for: a first frame with the snout already in it, an image reference of the trainer, a frame of the race. In 23 generations it never once held a dog’s point of view. It falls back to a human camera — or puts a dog in front of it.
Lesson: Name the dog, and the model casts one.
The turn · P23, the blow
What if the camera already existed?
Everything so far broke on the same thing: the camera. So we took one shot — the trainer walks at the puppy and strikes the lens — and tried it six ways on the same day. One of them got three seconds of real footage: my wife walking at the camera in our white living room, prompted into a man on a dirt road at sunset. With Omni Flash and a video input, for the first time it looked like our film.
Input · the plate: my wife, living room, 3.5 s
Input · the first frame (Nano Banana) — correct, and not enough
Lesson: The image tells it who. Only footage tells it where the camera is.
Attempt two · the method
So we stopped describing the camera. We shot it.
The decision: give Omni Flash footage instead of words. It worked — very well. Not perfect: every comparison below says what still needs fixing.
01 · PLATE
Shoot at dog height
Canon C200 at 30 cm, handheld. A black sock on a magic arm under the lens is the snout. Living room, garden, kitchen — whatever has the right movement.
02 · WORLD
Design it in stills
Characters, locations and the snout come from the approved Midjourney / Nano Banana Pro references.
03 · OMNI V2V
Replace, don’t describe
Replace X with Y (ref 1).Keep everything else exactly as in the video. The plate owns the camera; the prompt owns the world.
The rig
01 · The noseA black sock pulled over a flashlight: the stand-in for his nose.
02 · The cameraCanon C200 at 30 cm off the floor, carried by the top handle.
03 · The armThe sock on a magic arm, right under the lens — where his nose would be.
04 · The monitorFlipped up so the operator frames from above, with false color for exposure.
05 · The frameA soft dark shape at the bottom of the shot. Omni turns it into a greyhound’s nose.
The home shoot · plate vs. result
What held, and what didn’t.
Four new plates, each next to the take that worked — and, where it broke, the take that shows why. Three worked. One didn’t, yet.
Lesson: What the plate holds, Omni keeps. What it has to invent is still the hard part.
Some shots can’t be filmed at home — a POV at 60 km/h between other racers. So we started turning footage into 3D blockouts, flipping points of view, and directing the previz itself with Omni. Honest status: footage → previz works as a reconstruction, but it wasn’t very effective for us — and we haven’t yet sent a previz back through Omni as a driving plate.
Status: Footage → previz: tried. Previz → picture: the next test.
Tools we built inside Flow
When the tool didn’t exist, we built it in Flow.
455
A prompt registry for our own work. Downloads don’t carry prompts, so we read the project back from our own browser session: every generation with its exact prompt, model, references and input plate — indexed by shot. That’s how we know which sentence fixed which take.
Every generation on this page was produced at no cost, thanks to Google’s support. An R&D process this iterative — hundreds of takes to find one camera — would have been out of reach for an independent short. This film exists because of it.
Thank you.
Lucky Greyhound · in production · made with Google Flow — and thanks to Google’s support