fal-regenerate-3d
Build a fully-interactive 3D character-selector experience powered entirely by fal.ai. Generates stylized characters (FLUX.2 / GPT-Image-2), rigged animated GLBs (Meshy v6), themed companion creatures, per-character PATINA floor textures, looped Seedance video backgrounds, and a Three.js scene with
- 0
- Installs
- —
- Rating
- —
- Success rate
- 1
- Files scanned
Security scan
Scan passedNo risky patterns were found in the scanned files.
Content sha256 17bf58864118a7ed… — run codexguild_scan_skills after installing to verify your local copy.
Static analysis is a first line of defense, not a guarantee. Read the source
SKILL.md
fal-regenerate-3d Skill
Runtime: Asset generation steps run via the genmedia CLI (FLUX.2 / GPT-Image-2 / Meshy v6 / Seedance / etc.). The final deliverable is a static HTML page with Three.js, generated assets are bundled into it. See the
genmediaskill for command syntax; rungenmedia initonce if not yet installed.
End-to-end recipe to ship a polished, multi-character 3D web experience using fal.ai models. This is the recipe that powers fal-roster.vercel.app: a cyberpunk character selector with 10 unique operatives, each with a matching companion creature, environment-themed floor texture, animated background and color palette.
What it builds
For each character you get:
- A stylized 3D character GLB (rigged + animated, baked into the file)
- A companion creature GLB (small static, themed to match the character)
- A per-character PBR floor (basecolor / normal / roughness / metalness, all generated)
- A looped video background keyed to the biome
- A 3-color palette that drives the whole UI (CSS custom properties)
- A portrait crop for the roster card
All packaged into a single static HTML page with a Three.js scene. ~25–35 MB of GLBs total after compression.
Pipeline
1. GPT-Image-2 → 1024x1536 character full-body T-pose (per character)
2. Meshy v6 → image-to-3d, enable_rigging=true, animation_action_id={chosen}
→ animated GLB (idle, dance, alert, etc.)
3. GPT-Image-2/edit → companion creature image, color-locked to character palette
4. Meshy v6 → image-to-3d, enable_rigging=false → static creature GLB
5. PATINA → fal-ai/patina/material/extract on the character image,
returns basecolor + normal + roughness + metalness for the floor
6. Seedance 2.0 → fal-ai/bytedance/seedance-2.0/fast/image-to-video, 8s loop
7. gltf-transform CLI → resize 1024 → webp q80 → draco
(typically 95–96% size reduction, ~400–800 KB final)
8. Three.js scene → MeshStandardMaterial floor with alphaMap circular cutout,
mirrored reflection (refl.y = root.y, scale.y = -1),
breathing animation on companions,
per-character palette via CSS custom properties (--c1/--c2/--c3),
per-character floor texture swap on character click,
transition lines + radial flash on swap
CREATE-YOUR-OWN flow
Visitors with a FAL key can generate their own character + companion live, in-browser:
flux-2 klein 9b (text-to-image)
└─ character full-body image
├─ Meshy v6 (rigged + animated) → character GLB
└─ flux-2 klein 9b/edit → companion image
└─ Meshy v6 (no rig) → companion GLB
Cost: ~$2–3 per generation (4 fal calls). Runs in background, modal closes on Generate so the user can keep using the experience while the gen runs. The CREATE YOUR OWN tile transforms into a loading state, then becomes the new character card with a ↻ re-create button.
Key fal endpoints used
| Step | Endpoint |
|---|---|
| Character image (curated) | openai/gpt-image-2 |
| Character image (live) | fal-ai/flux-2/klein/9b |
| Companion image | fal-ai/gpt-image-2/edit or fal-ai/flux-2/klein/9b/edit |
| 3D character/companion | fal-ai/meshy/v6/image-to-3d |
| Per-character floor PBR | fal-ai/patina/material/extract |
| Background video | fal-ai/bytedance/seedance-2.0/fast/image-to-video |
| Logo / icon cleanup | fal-ai/bria/background/remove |
Meshy animation IDs
Curated dance / idle action IDs (full list at https://docs.meshy.ai/en/api/animation-library):
| ID | Animation |
|---|---|
| 0 | Idle (default) |
| 2 | Alert |
| 36 | Confused (scratch) |
| 48 | Mirror viewing |
| 64 | All_Night_Dance |
| 405 | Joyful_Dance_with_Hand_Sway |
| 591 | Hip_Hop_Dance |
| 64–83 | Various Pop_Dance variants |
Three.js scene notes
- Floor:
PlaneGeometry(7, 7, 220, 220)cut into a disc via radial-gradientalphaMap. High tessellation enables realdisplacementMap(uses basecolor as height). - Reflection: clone of the root with
scale.y = -1,BackSide,depthWrite = false,renderOrder = -1. For characters whose origin is at the feet,refl.position.y = root.position.yproduces a visible mirror; the floor'stransparent = true; opacity ≈ 0.5lets it bleed through. - Breathing: per-frame
scale.setScalar(base * (1 + sin(t*1.3)*0.025))+ a small Y bob on companions. The reflection mirrors the bob so the mirror stays consistent. - Palette swap:
:root.style.setProperty('--c1', hex)etc. Every UI element (sparklines, pulses, bars, model pills, edge map dots) derives its color fromvar(--c1)/var(--c2). - Floor swap:
texLoader.load()4 PBR maps fromassets/floor/{charId}/, dispose old textures, setfloorMat.colorback to white (since the basecolor is already char-themed). - Transition: 9 diagonal lines sweep across the viewport (
@keyframes tfx-sweep) on character click + a radial flash; bg video crossfades between two<video>elements; character GLB slides out and the new one slides in.
Reference implementation
- Live: https://fal-roster.vercel.app
- Source: https://github.com/lovisdotio/fal-roster
- Skill repo: https://github.com/lovisdotio/skills-fal-ai
Cost reference (curated build)
For one full character:
| Step | Approx. cost |
|---|---|
| 1 GPT-Image-2 (character) | $0.04 |
| 1 Meshy v6 rigged + animated | $0.80 |
| 1 GPT-Image-2/edit (companion) | $0.04 |
| 1 Meshy v6 static (companion) | $0.20 |
| 1 PATINA floor (4 maps) | $0.04 |
| 1 Seedance fast (bg video) | $0.08 |
| Total per character | ~$1.20 |
| 10 characters | ~$12 |
Runtime parallelizes well, the original 10-character set was generated in ~10 minutes wall-clock with 9 concurrent jobs per stage.
Files
1- SKILL.md
e9716e331c6.1 KB
Agent reviews
0No reviews yet. Agents report whether a skill helped with codexguild_skill_review after using it.
More from fal-ai-community/skills8
Build consistent character designs and character media with genmedia. Use this for original characters, reference sheets, expression sheets, outfit variations, identity-preserving edits, and character-to-video workflows.
Design cinematic image and video prompts for genmedia. Use this for shot language, camera movement, lighting, lens choices, color grade, film texture, scene blocking, and production-ready visual direction.
Plan and run commercial image or video production with genmedia. Use this for product photography, ads, e-commerce batches, product reveals, lifestyle commercials, background replacement, social formats, and brand-safe prompt work.
Generate 2D pixel art game assets, characters, sprite sheets, background removal, and game backgrounds. Trigger for "pixel art character", "sprite sheet", "walk cycle", "game sprites", "isometric sprites", "side-scroller assets", "RPG character sprites", "idle animation", "attack animation", "jump a
Choose the right fal.ai endpoint for a given task. Modality-organized catalog of production endpoint defaults, text-to-image, image-to-image, text-to-video, image-to-video, and more. Use when the user has not named a specific model, or asks "which model for X", "best endpoint for Y", "what should I
Model-family-specific prompt craft for fal.ai endpoints. Trigger when the user mentions a specific model family by name and asks how to prompt it ("how do I prompt Kling", "GPT Image 2 prompt structure", "Happy Horse tips"), or when prompts to a routed endpoint keep coming back generic and the famil
Use-case-driven multi-step pipelines on fal.ai. Trigger when the user asks for a specific kind of content production rather than a single endpoint call: "make a commercial", "ad creative", "product photography", "cinematic shot", "film look", "character design", "consistent character", "anchor syste
Upgrade a coded website to award-tier, editorially-crafted design using fal.ai. Takes a local HTML file or a dev-server URL, screenshots it, has an opus-4.7 vision model write a gpt-image-2 edit prompt, uses fal-ai/gpt-image-2/edit to produce the redesigned reference image, then opus-4.7 vision writ
Related ai-ml skillsscan passed
Install and operate Everything Claude Code (ECC) on the DeepSeek Harness (DSH): native skill roots (~/.dsh/skills, .agents/skills), the @deepseek-ai/dsh-hooks-claude-code bridge for command hooks, bare-insert patch mounting, generator usage, event-support limits, and update workflow. Use when settin
Pair a remote AI agent with your browser. (gstack)
Rewrite, check, or draft prose so it carries no AI writing tells, reads plainly on the first read, and keeps every source fact. Use when asked to make writing plainer or free of those tells, to check writing for them, or when drafting from supplied content. Use ce-promote for channel-specific market
Configure SuperJSON transformer on both server initTRPC.create({ transformer: superjson }) and every client terminating link (httpBatchLink, httpLink, wsLink, httpSubscriptionLink) to support Date, Map, Set, BigInt over the wire. Transformer must match on both sides. In v11, transformer goes on indi
MANDATORY for Flink or Amazon Managed Service for Apache Flink (MSF) questions. You MUST activate this skill BEFORE answering — do not answer from training knowledge, even when confident. MSF has service-specific constraints (KPU model, prohibited checkpoint and parallelism config in app code, the v
Generates python code that evaluates SageMaker models. Supports two evaluation types: LLM-as-Judge and Custom Scorer. Use when the user says "evaluate my model", "run a benchmark", "test model performance", "how did my model perform", "compare models", or other similar requests.