WORK LOG · SEPTEMBER 2026 · UNREAL ENGINE 5.8

PHOTO TO METAHUMAN

We gave two frontier AI models the same brief and a running Unreal Engine editor: take public photos of three well-known Filipinas, turn them into rigged, textured MetaHumans, put them on a stage and render them. A person gave directions and installed plugins. The models did the rest, by writing and running Python inside the editor. This is what worked, what crashed, and how far the likeness got.

SCROLL
FACES

THE FACES SO FAR

MetaHuman of Apo Whang-Od: white hair, red lipstick, deeply wrinkled skin, in front of a gold Budots Media logo and a neon LOVE PHILIPPINES sign
Apo Whang-OdShape from 13 frames of a 4K video; the most wrinkled, most age-marked of Epic's 153 skin textures; her red lipstick.
MetaHuman of Sara Duterte with brown hair pulled back
Sara DuterteShape from six public-domain photos, 2022–2024; the one neutral portrait drove the mouth.
MetaHuman of Michelle Dee with a black bob
Michelle DeeShape from seven small, mostly smiling photos: the hardest input of the three.

The furthest the two runs got: the Opus 5.5 MetaHumans, with rigged faces (joints and blend shapes), synthesised skin and strand hair, shot on 85 mm CineCameras in front of a gold Budots Media logo and neon tube lettering. How both runs got here, and where the likeness still falls short, is below.

Apo Whang-OdIn motion
Sara DuterteIn motion
Michelle DeeIn motion

Six seconds each, rendered with Movie Render Queue at 1080×1350: Epic's idle animation on the body and face rig (breathing, blinks, small head moves) while an 85 mm camera circles the head. The faces are at rest, not acting.

BRIEF

WHY WE TRIED IT

Our Lapu-Lapu game needs faces people recognise, and a small studio cannot afford a scanning rig or a character team for every one. Unreal's MetaHuman tools can build a production-ready digital human, but the fast route assumes an iPhone capture of the real person in the room.

So we set a test. Could a state-of-the-art AI model work as game-dev crew: read the engine's Python API, find a route from a single still photo to a finished MetaHuman, and recover from its own mistakes? Two models got the same brief on the same project, Claude Opus 5.5 and Claude Fable 5.1. Both ran on one 16 GB Mac and shared one editor. This page follows both runs: Fable 5.1 drove Epic's own identity solver from the photos, and further down, Opus 5.5 measured the faces first with research models.

The subjects were Apo Whang-Od, Michelle Dee and Sara Duterte, chosen because good public-domain or Creative Commons photos of them exist. These are technical likeness studies. They are rough, and none of the three had any part in them.

3

characters taken from photo to a built, rigged MetaHuman Blueprint.

20–35 s

to build each character once rig and textures were in place (Fable 5.1 run; Opus 5.5's cinematic builds took 2 to 3 minutes).

3–10 s

for the cloud auto-rig to return a rigged face (Fable 5.1 run; about a minute for Opus 5.5's full blend-shape rig).

16 GB

of memory on the one Mac laptop it all ran on.

RESULT

FOUR STAGES, THREE FACES

For each of three people: a reference photo, the solved head shape in clay, the head with synthesized skin, and the built MetaHuman
Fable 5.1 run. Left to right: a reference photo, the head shape solved from photos, the same head with MetaHuman synthesized skin, and the final built character. Hair and clothing are not assigned yet. Photo credits are at the foot of the page.

Be clear about what this shows. The pipeline is complete: every stage runs from a script and ends in an asset a game can use. The likeness is not there yet. Bone structure and proportions carry over, age and expression mostly do not, and one source portrait was smiling, so the smile is baked into the neutral face.

HOW

WHAT FABLE 5.1 ACTUALLY DID

01

Found a route with no button

Unreal 5.8 has no "MetaHuman from a photo" button. The model authored by script the assets an iPhone take would have produced: lens file, camera calibration, image sequence and capture data, then ran Epic's own Identity solver on a single frame.

02

Made depth from nothing

The solver wants a depth image. The model generated one with an open monocular depth network, then worked out that the solver only accepts faces 15 to 60 cm away and rescaled the virtual camera to put the face at 40 cm.

03

Used several photos at once

A front photo and a three-quarter photo went into one solve as two frames, which fixed the eye region that single small photos got wrong.

04

Matched skin by eye

Fitting skin tone numerically came out too dark and too red. The model rendered a grid of tones under the real skin shader, looked at it next to the photo, and picked.

05

Rigged and built

Cloud auto-rigging, 2k texture sources and the full character build all ran from Python, one request at a time. Two at once and the service answers "Busy".

06

Staged and rendered

It built a level, made neon signs from two logos, placed cameras and lights, and rendered with Movie Render Queue from the command line when the in-editor route ran out of memory.

A reference photo beside a grid of the same head rendered at ten different skin tone settings
The skin-tone grid for one character. Darkness runs left to right, and the two rows are a warmer and a pinker hue. The pick was made by looking, the way an artist would.
MEASURE

THE SECOND ROUTE: MEASURE FIRST

The Opus 5.5 run took a different road to the same three faces. Instead of estimating depth and handing photos straight to Epic's solver, it measured the faces first. A research model reads where each pixel of a face sits on a 3D head; every photo of a person is combined into one shape; only then does the shape go to Epic's tools. It also went further on the look: hair, brows, makeup and the lit portrait set at the top of this page.

01

Find the face

Google's MediaPipe finds the face in each photo and video frame, crops it and masks the skin, so hair, glasses and microphones don't count.

02

Read the surface

Pixel3DMM (Technical University of Munich, 2025), a vision transformer, predicts for every pixel where it lies on the surface of the FLAME head model. It ran locally on the Mac's GPU.

03

One identity

One FLAME head is fitted to all photos of a person at once, with one shared face shape but a separate expression, head pose and lens per photo. The smiles stay with their photos, not in the face. Median error: 1.2 to 3 pixels.

04

Hand over to Epic

The neutral head, textured from the photos, goes into Unreal. Epic's face tracker reads its eyes, lips and folds, and MetaHuman Creator conforms to it.

05

Refine

Every MetaHuman vertex is pulled onto the measured surface. MetaHuman's own fit then keeps the result inside its face model, so the head still rigs and animates. It lands within about a millimetre.

06

Look, rig, build

Skin chosen from Epic's labelled texture library, makeup, hair grooms coloured on their materials, cloud auto-rig, Blueprint build.

Same faces, two routes. Skin and hair can flatter a face, so here are the bare shapes from both runs, rendered with the same clay material and framing.

Apo Whang-Od

Reference
Photo of Apo Whang-OdPhoto of Apo Whang-Od at work

“Ink road (Apo Whang-od)” 20 and 23, Lee, CC BY 2.0, cropped.

Identity solve · Fable 5.1
Measured · Opus 5.5
Fit check

Measured from 13 frames of Drew Binsky's 2024 video, used only to measure and not reproduced here. The fitted head lands within 1.5 to 3 pixels of her face in every frame, from front to near profile.

Sara Duterte

Reference
Photo of Sara Duterte, January 2022Official portrait of Vice President Sara Duterte

PIA and Department of Foreign Affairs, public domain, cropped.

Identity solve · Fable 5.1
Measured · Opus 5.5
Fit checkThe fitted head as a green mesh over the January 2022 photo

The fitted head (green mesh) over the photo it was measured from.

Michelle Dee

Reference
Photo of Michelle Dee at the Department of Tourism, 2023Photo of Michelle Dee speaking

PNA (Yancy Lim) and PIA Ilocos Sur, public domain, cropped.

Identity solve · Fable 5.1
Measured · Opus 5.5
Fit checkThe fitted head as a green mesh over a smiling photo

A smiling photo: the smile is absorbed by that photo's expression, not by her face shape.

The identity solve keeps lumps, a baked-in smile and a distorted forehead; the measured heads keep each face's proportions and stay clean enough to rig. Measure, don't generate: a likeness has to come from the person, not from a model's idea of a face.

Where the likeness still falls short. Measuring fixes proportions, not everything. Whang-Od's great age shows more in the skin texture than in the shape, because the 3D face model cannot fold skin the way more than a century does. Michelle Dee's photos are small and nearly all smiling, which limits how much of her face could be measured. And both Sara Duterte and Michelle Dee still carry a reddish rim under the eyes from the skin settings, which needs an artist's pass.

One more lesson came from the sources. A Commons photo filed under Whang-Od's village turned out to show another Kalinga woman. It was caught before publishing; it carried a small weight in the fit, and removing it moves her face shape by less than 0.3 mm.

STAGE

ON STAGE IN UNREAL

The built characters went into their own level with the LOVE wordmark of the Philippine tourism brand and our logo as emissive neon behind them. Three camera moves were authored as Level Sequences and rendered at 1080p.

A pass across the three built MetaHumans in the showcase level. Unreal Engine 5.8, Movie Render Queue, eight seconds.
A dark stage with a glowing multicoloured LOVE sign and an orange Budots Media sign on the back wall
The neon wall of the showcase level: two flat logos turned into emissive signs, with bloom doing the glow.
BROKE

WHERE IT BROKE

None of this was smooth, and the failures are the useful part.

The engine crashes on honest mistakes. Capture data without a depth sequence, a camera named anything other than "Video" and "Depth", or a build started while stale preview actors exist: each one kills the editor outright. The model read the crash stack each time, found the cause and wrote the rule down so it was not repeated.

What you see is not always what you built. The preview actor ships with a debug material that paints coloured regions and a wireframe over the face. For a while the renders looked broken when the textures underneath were fine.

Memory is the real limit on a laptop. Three cinematic MetaHumans rendered through the editor pushed it to 50 GB on a 16 GB machine. The fix was to quit the editor and render in a standalone process, which then crashed on a project startup script that assumed the editor was open.

Not every plugin runs everywhere. One store plugin shipped Windows binaries only and was recompiled for Mac after a two-line patch. Another was built against a different engine release and stays switched off.

A model cannot fix a bad source. A smiling portrait gives a smiling neutral face. Small faces, under about 150 pixels wide, track badly. In the Fable 5.1 run, hair, brows and clothing are still to do, so its heads are bald.

VERDICT

WHAT IT MEANS FOR A SMALL STUDIO

A

It is crew, not magic

The model worked like a determined technical artist who reads documentation fast: it probed, failed, read the log and tried again. It needed a person to install content, sign in and say what mattered.

B

The notes are the asset

Every dead end became a written rule. The second day went several times faster than the first because the pipeline and its traps were already on file.

C

Likeness still needs people

The scripts get you a working character in minutes. Getting it to look like someone is still an art job: better sources, grooming, sculpting and a critical eye.

Next on the list: clothing from the MetaHuman wardrobe, a neutral source photo to replace the smiling one, the skin fixes listed above for the measured faces, the same faces through Epic's web Creator for comparison, and then into the Lapu-Lapu game as characters you can meet.

CREDITS

PHOTOS AND CREDITS

  1. Apo Whang-Od: "Ink road" by Lee, CC BY 2.0, via Wikimedia Commons (cropped).
  2. Michelle Dee: photo in Palo, Leyte, 2023, LGU of Palo, public domain, and a 2023 Department of Tourism photo, public domain, via Wikimedia Commons (cropped).
  3. Sara Duterte: official portrait, Office of the Vice President of the Philippines, public domain, and "Sara Duterte" by George Parilla, CC BY 2.0, via Wikimedia Commons (cropped).
  4. The LOVE wordmark belongs to the Philippine Department of Tourism and is shown here as set dressing in a technical test.
  5. Opus 5.5 run: "Ink road (Apo Whang-od)" 20 and 23 by Lee, CC BY 2.0; Sara Duterte, January 2022, Philippine Information Agency, public domain; Vice President Sara Duterte, Department of Foreign Affairs, public domain; Michelle Dee at the Department of Tourism, PNA (Yancy Lim), public domain; "Michelle Dee", PIA Ilocos Sur, public domain; all via Wikimedia Commons (cropped). The fit overlays are drawn on the public-domain photos.
  6. In the Opus 5.5 run, Whang-Od's face shape was measured from frames of Drew Binsky's 2024 YouTube video about her. No frames from the video are shown on this page.
  7. Research models used to measure faces in the Opus 5.5 run: Pixel3DMM (Giebenhain et al., 2025; CC BY-NC 4.0), the FLAME head model (Max Planck Institute for Intelligent Systems; non-commercial research licence) and Google's MediaPipe. They measured only; no FLAME geometry is part of the MetaHumans, which were solved by Epic's MetaHuman Creator.
  8. The neon "LOVE PHILIPPINES" lettering in the Opus 5.5 portraits is plain type (Arial Rounded); the gold logo is Budots Media's own.
  9. Built with Unreal Engine 5.8 and MetaHuman tools from Epic Games. Scripting by Claude Fable 5.1 and Claude Opus 5.5, which also wrote this build log, directed by Budots Media.

The digital faces on this page are technical studies made from public photographs. They are not endorsed by, affiliated with, or approved by the people shown. If you are one of them or represent one and want an image removed, message us and we will take it down.

← BACK TO INDEX