Generates 3D-style 2D images, not actual 3D model files. Think rendered PNG outputs that look 3D: chibi characters, isometric dioramas, product renders, architectural visualizations, 3D icons, interior designs. Covers nine categories with style presets under each (chibi/realistic/fantasy for characters, floating/exploded/turntable for products, etc.). Uses two models: nanopro for speed (25s) or gpt for quality (150s). The docs are unusually thorough about execution context, explaining exactly why you need python3 heredoc syntax instead of exec(open()) when calling through bash. Auto-selects aspect ratios by category (3:4 for characters, 16:9 for interiors). Clear about what it isn't: if you need GLB or FBX files, look elsewhere.
npx -y skills add starchild-ai-agent/official-skills --skill image-3d --agent claude-codeInstalls into .claude/skills of the current project.
Use this skill for all 3D-style image generation requests on Starchild.
Covers: 3D character design (chibi, realistic, cartoon, fantasy), 3D product renders (floating, exploded, turntable), isometric dioramas & miniature scenes, 3D app icons (iOS, Material, game), 3D text effects (chrome, neon, wood, candy), interior design visualization (modern, luxury, cozy, industrial), architectural rendering (modern, traditional, futuristic, aerial, night), 3D scenes (fantasy, sci-fi, nature, urban), and game asset renders (weapons, environments, props, vehicles).
Core principle: call the provided script. Do not re-implement proxy/billing plumbing.
⚠️ Important distinction — 3D-style images vs 3D model files:
When to use image-3d vs other image skills:
3d category, but image-3d offers far more granular control⚠️ Execution context — read this first. The code blocks below are Python, not shell commands. Starchild's
bashtool runs/bin/bash -c, which cannot parseexec(open(...))— pasting them directly into a bash command will fail withsyntax error near unexpected token 'open'. Also,exec(open(...))insidepython3 -cfails withNameError: __file__because the script uses__file__for path resolution.Use
python3 - <<'EOF'withfrom exports importwhen calling via the bash tool:python3 - <<'EOF' import sys sys.path.insert(0, "skills/image-3d") from exports import generate_3d result = generate_3d( prompt="a cute robot assistant with big eyes and antenna", category="character", style="chibi", ) print(result) EOFThe heredoc (
<<'EOF') preserves all quotes and newlines — no escaping needed.
exec(open('skills/image-3d/generate_3d.py').read())
result = generate_3d(
prompt="a cute robot assistant with big eyes and antenna",
category="character",
style="chibi",
)
# result -> {"success": True, "images": [{"local_path": "output/images/..."}], ...}
exec(open('skills/image-3d/generate_3d.py').read())
result = generate_3d(
category="diorama",
style="isometric",
)
# Uses the built-in style template as the full prompt
exec(open('skills/image-3d/generate_3d.py').read())
result = generate_3d(
prompt="transform into a 3D rendered character",
reference_path="uploads/sketch.jpg",
category="character",
style="cartoon",
)
Never hand the user the raw fal.media URL. fal serves files with restrictive CSP headers. The only reliable delivery path is the already-downloaded local file:
local_path (e.g. output/images/xxx.png) — the script always downloads on success.output/images/ and viewable in the workspace file panel.
send_to_telegram(file_path="output/images/...", message_type="image") or send_to_wechat(file_path="output/images/...", message_type="image").| Parameter | Required | Default | Description |
|---|---|---|---|
prompt | yes* | — | Text description of the desired 3D image |
reference_path | no | — | Local file path to a reference image (for 3D stylization) |
reference_url | no | — | Public HTTPS URL of a reference image |
category | no | "character" | 3D category preset (see §5) |
style | no | "default" | Sub-style within the category (see §5) |
model | no | "nanopro" | Model: "nanopro" (fast ~25s) or "gpt" (best quality ~150s) |
count | no | 1 | Number of images to generate (1–4) |
aspect_ratio | no | auto | Output ratio: 1:1, 3:4, 4:3, 9:16, 16:9. Auto-selected by category if not set. |
*A prompt is required for text-to-image mode unless a non-default style is specified (which provides a built-in template).
Prompt priority: prompt + category/style (enhanced) > prompt only > category + style template > category default.
Aspect ratio auto-selection: When not explicitly set, the script picks the best ratio for the category:
3:4 for characters (portrait orientation)1:1 for products, dioramas, icons, game assets (square showcase)16:9 for text, interiors, architecture, scenes (wide cinematic)category="character")| Style | Key | Best for |
|---|---|---|
| Chibi / Pixar | chibi | Cute stylized characters, mascots, avatars |
| Realistic | realistic | Game-ready characters, detailed anatomy |
| Cartoon | cartoon | Disney/Pixar style, family-friendly |
| Fantasy | fantasy | RPG characters, warriors, mages |
| General | default | Any 3D character |
Character prompt tips:
"a female elf ranger with green cloak, holding a bow, forest background"category="product")| Style | Key | Best for |
|---|---|---|
| Floating 3/4 angle | floating | Hero product shots, marketing |
| Exploded view | exploded | Technical illustration, internal structure |
| Turntable / 360° | turntable | Multi-angle showcase |
| General | default | Any product render |
Product prompt tips:
"wireless earbuds in charging case, matte white, floating angle"category="diorama")| Style | Key | Best for |
|---|---|---|
| Isometric | isometric | Miniature worlds, city blocks, game maps |
| Low-poly | lowpoly | Stylized scenes, indie game aesthetic |
| Realistic | realistic | Architectural models, detailed miniatures |
| General | default | Any diorama scene |
Diorama prompt tips:
"a cozy Japanese ramen shop at night, tiny customers inside, warm glow"category="icon")| Style | Key | Best for |
|---|---|---|
| iOS style | ios | Apple App Store icons, glossy glass |
| Material Design | material | Google Play icons, flat with depth |
| Game icon | game | RPG items, fantasy game UI |
| General | default | Any 3D icon |
Icon prompt tips:
"a camera icon with rainbow lens flare"category="text")| Style | Key | Best for |
|---|---|---|
| Chrome / Metallic | chrome | Bold titles, movie-style text |
| Neon glow | neon | Cyberpunk, nightlife, signs |
| Wood | wood | Rustic, craft, natural brands |
| Candy | candy | Playful, kids, sweet themes |
| General | default | Any 3D text effect |
Text prompt tips:
"the word 'HELLO'""the word 'GAME OVER' in chrome metallic letters, dark background"category="interior")| Style | Key | Best for |
|---|---|---|
| Modern minimalist | modern | Scandinavian, clean lines, natural light |
| Luxury | luxury | High-end, marble, gold accents |
| Cozy / Hygge | cozy | Warm, comfortable, inviting |
| Industrial | industrial | Loft, exposed brick, urban chic |
| General | default | Any interior render |
Interior prompt tips:
"modern Scandinavian living room with large windows, light wood floors, gray sofa, indoor plants"category="architecture")| Style | Key | Best for |
|---|---|---|
| Modern | modern | Contemporary buildings, glass & steel |
| Traditional | traditional | Classical, heritage, stone & wood |
| Futuristic | futuristic | Sci-fi, organic forms, green tech |
| Aerial view | aerial | Bird's eye, masterplan, site context |
| Night scene | night | Dramatic lighting, facade uplighting |
| General | default | Any architectural render |
Architecture prompt tips:
"modern three-story house with flat roof, large glass windows, surrounded by garden, golden hour"category="scene")| Style | Key | Best for |
|---|---|---|
| Fantasy | fantasy | Magical worlds, floating islands |
| Sci-fi | scifi | Space stations, futuristic tech |
| Nature | nature | Forests, landscapes, natural beauty |
| Urban | urban | City streets, cyberpunk, neon |
| General | default | Any 3D scene |
category="game_asset")| Style | Key | Best for |
|---|---|---|
| Weapon | weapon | Swords, guns, magical weapons |
| Environment | environment | Game levels, world design |
| Prop | prop | Items, objects, collectibles |
| Vehicle | vehicle | Cars, ships, aircraft |
| General | default | Any game asset |
When crafting custom prompts, use these keywords to control the 3D look:
| Keyword | Effect |
|---|---|
PBR materials | Physically-based rendering, realistic surfaces |
subsurface scattering | Translucent skin, wax, marble |
metallic / chrome | Reflective metal surfaces |
glossy / matte | Surface finish control |
glass / transparent | See-through materials |
clay render | Matte gray, no textures, shape focus |
| Keyword | Effect |
|---|---|
studio lighting | Clean, professional, controlled |
HDRI lighting | Environment-based, natural reflections |
rim light | Edge highlight, subject separation |
volumetric lighting | God rays, atmospheric depth |
ambient occlusion | Soft contact shadows, depth |
global illumination | Realistic light bouncing |
| Keyword | Effect |
|---|---|
isometric view | 45° top-down, no perspective distortion |
3/4 angle | Classic product/character showcase angle |
eye level | Natural human perspective |
bird's eye view | Top-down aerial perspective |
tilt-shift | Miniature/diorama effect |
depth of field | Background blur, subject focus |
| Keyword | Effect |
|---|---|
octane render | High-quality, photorealistic |
Blender Cycles | Realistic path tracing |
Unreal Engine 5 | Game-quality, real-time look |
V-Ray | Architectural visualization quality |
Cinema 4D | Clean, stylized 3D |
KeyShot | Product visualization quality |
| Model | Key | Speed | Quality | Best for |
|---|---|---|---|---|
| Nano Banana Pro | nanopro | ~25s | Good | Quick iterations, drafts, most 3D styles |
| GPT Image 2 | gpt | ~150s | Best | Final renders, complex scenes, fine details |
Recommendations by category:
nanopro for drafts, gpt for final character sheetsgpt for photorealistic renders, nanopro for quick conceptsnanopro handles isometric well; gpt for detailed miniaturesnanopro is sufficient for most iconsgpt for better text rendering (still imperfect)gpt for photorealistic archviz, nanopro for conceptsgpt for cinematic quality, nanopro for quick mood boards| Category | Default | Recommended alternatives |
|---|---|---|
| character | 3:4 | 1:1 for avatar, 9:16 for full-body |
| product | 1:1 | 4:3 for landscape showcase |
| diorama | 1:1 | 16:9 for panoramic diorama |
| icon | 1:1 | Always 1:1 |
| text | 16:9 | 1:1 for square banners |
| interior | 16:9 | 4:3 for room views, 3:4 for vertical |
| architecture | 16:9 | 3:4 for tall buildings, 1:1 for aerial |
| scene | 16:9 | 9:16 for vertical scenes |
| game_asset | 1:1 | 3:4 for character assets |
Map user requests to the right category + style:
| User says... | Category | Style | Notes |
|---|---|---|---|
| "3D character", "Pixar style character" | character | chibi or cartoon | |
| "game character", "RPG hero" | character | fantasy | |
| "realistic 3D person" | character | realistic | |
| "3D product render", "product visualization" | product | floating | |
| "exploded view", "internal structure" | product | exploded | |
| "isometric", "miniature scene", "tiny world" | diorama | isometric | |
| "low poly scene", "stylized environment" | diorama | lowpoly | |
| "app icon", "iOS icon" | icon | ios | |
| "game icon", "RPG item icon" | icon | game | |
| "3D text", "chrome text", "metallic letters" | text | chrome | |
| "neon sign", "glowing text" | text | neon | |
| "interior design", "room design", "装修效果图" | interior | modern | |
| "luxury interior", "penthouse" | interior | luxury | |
| "cozy room", "warm interior" | interior | cozy | |
| "building render", "architecture visualization" | architecture | modern | |
| "night render", "building at night" | architecture | night | |
| "aerial view", "masterplan" | architecture | aerial | |
| "fantasy world", "magical scene" | scene | fantasy | |
| "sci-fi scene", "space station" | scene | scifi | |
| "game weapon", "sword render" | game_asset | weapon | |
| "game environment", "level design" | game_asset | environment |
| Error | Cause | Fix |
|---|---|---|
"Unknown model" | Invalid model key | Use "nanopro" or "gpt" |
"Unknown category" | Invalid category | Check §5 for valid categories |
"Unknown style" | Style not in category | Check the style table for that category |
"File not found" | reference_path doesn't exist | Verify the file path |
"Image too large" | Reference image > 10 MB | Resize or compress the image |
"Submit failed" | API error | Check FAL_KEY, retry |
"Generation timed out" | Model took too long | Retry, or switch to nanopro |
exec(open('skills/image-3d/generate_3d.py').read())
result = generate_3d(
prompt="a steampunk inventor character with goggles, leather apron, and mechanical arm, character sheet showing front and side views",
category="character",
style="realistic",
model="gpt",
aspect_ratio="16:9",
)
exec(open('skills/image-3d/generate_3d.py').read())
result = generate_3d(
prompt="a bustling Tokyo street corner with ramen shop, vending machines, and cherry blossom trees, tiny people walking",
category="diorama",
style="isometric",
)
exec(open('skills/image-3d/generate_3d.py').read())
result = generate_3d(
prompt="a modern art museum with curved glass facade, reflecting pool in front, dramatic uplighting",
category="architecture",
style="night",
model="gpt",
)
exec(open('skills/image-3d/generate_3d.py').read())
result = generate_3d(
prompt="spacious living room with floor-to-ceiling windows overlooking city skyline, minimalist furniture, warm wood accents, indoor plants",
category="interior",
style="modern",
model="gpt",
)
exec(open('skills/image-3d/generate_3d.py').read())
result = generate_3d(
prompt="transform into a 3D Pixar-style character with exaggerated features",
reference_path="uploads/photo.jpg",
category="character",
style="cartoon",
)
exec(open('skills/image-3d/generate_3d.py').read())
result = generate_3d(
prompt="legendary fire sword with glowing runes, ember particles, dark background",
category="game_asset",
style="weapon",
)
exec(open('skills/image-3d/generate_3d.py').read())
result = generate_3d(
prompt="the word 'CYBER' in neon pink and blue letters, wet street reflection",
category="text",
style="neon",
)
exec(open('skills/image-3d/generate_3d.py').read())
result = generate_3d(
prompt="a cozy coffee shop interior with exposed brick and warm lighting",
category="interior",
style="cozy",
count=3,
model="nanopro",
)
# Generates 3 variations for the user to choose from
sickn33/antigravity-awesome-skills
moizibnyousaf/ai-agent-skills
github/awesome-copilot