Photos to Game-Ready 3D Heads API
Turn 1–2 player selfies into a game-ready 3D head.
Improve players' experience by personalising in-game character at scale.
KeenTools Photo to 3D Head API generates production-ready 3D head models from ordinary photographs – delivered in MetaHuman topology, ready to drop straight into Unreal Engine, Unity, or your existing character pipeline.
Applications
Personalised Player Avatars
Let players put themselves in the game from a single selfie.
1–2 photos from a smartphone are all it takes to generate a game-ready, fully textured 3D head base mesh of the player. The result lands in your pipeline with the correct topology, textures, and blend shapes – ready to attach to a body rig, render in-engine, and customize with your character creator on top.
No app installs. No scanning sessions. No hardware requirements beyond the phone already in the player's pocket.
Generate once. Use everywhere. The player's head model persists across sessions, game modes, and titles.
Integration: REST API call from your game client or companion app. Output delivered to your destination URL. Zero player data retained on KeenTools servers after processing.
NPC Population
Fill your world with unique, believable faces – at scale.
The API accepts generated 2D images as input alongside real photographs, making it straightforward to produce large numbers of varied, non-repeating NPC heads. Feed in a batch of reference images; get back a batch of production-ready 3D heads.
Every output shares identical topology, no per-character variation in mesh structure. A low-poly output option is available for background characters and performance-sensitive contexts.
Integration: REST API call, batch processing.
Output
Every head generated by the API is delivered in the same format:
- Clean base mesh in MetaHuman topology
- Identical vertex layout across all outputs
- Fully textured – base color, normals, materials included
- Neutral pose
- Compatible with Unreal Engine, Unity, Godot, Maya, Blender, and any DCC pipeline
Privacy
Player photos never have to touch KeenTools servers longer than the processing session. The ephemeral pipeline pulls photos from your URLs, pushes the completed head model to your destination, and deletes everything immediately. GDPR-compliant by design.
How it works
The API takes one or more photographs of a person and fits a high-quality base mesh to match their head shape, facial structure, and proportions. The result is a clean, fully textured 3D head in a stable, uniform topology – identical vertex layout every time, across every output. No cleanup, no UV rebuilding, no surprises in the pipeline.
Processing takes minutes. Everything else is instant.
# 1. Open a session — returns an avatar id and photo upload URLs
curl -X POST https://api.cloud.keentools.io/v1/avatar/init \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{ "image_count": 5 }'
# 2. Upload each photo to its pre-signed URL
curl -X PUT "$UPLOAD_URL" \
-H "Content-Type: image/jpeg" \
--data-binary @photo-1.jpg
# 3. Start reconstruction on the session
curl -X POST https://api.cloud.keentools.io/v1/avatar/$AVATAR_ID/process \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{ "focal_length_type": { "focal_length_type": "estimate_common" } }'
# 4. Download the result — OBJ + texture, delivered as a ZIP
curl -L -X GET "https://api.cloud.keentools.io/v1/avatar/$AVATAR_ID/get-3d-model?mesh_format=obj&texture=jpg" \
-H "Authorization: Bearer $API_KEY" \
-o head.zipPersonalise in-game characters
No hardware. No subscription. Start with a free credit allocation. Questions about user data handling or integration architecture? Reach the team directly.