One Pic 3DSkill Hub
← 3D Relief StudioSkill Repo ↗
BUILT-IN AGENT SKILL⚡ 100% Client-Side WebGL 2.0Image to Three.js Engine

Character Animation Skill:
2D Concept Art to 3D Sprite & Voxel Motion

Direct implementation of the character-animation-skill. Transform 2D character sketches, AI concept art, and sprite sheets into interactive Three.js 3D textured billboards and tactile volumetric voxel meshes with zero server uploads, real-time FPS scrubbing, and 1-click GLB/PNG export.

8 FPSGame-Ready Loop
/
0 LatencyWebGL 60 FPS Engine
/
Dual Engine2.5D Card + 3D Voxel Mesh
/
UniversalGLB · OBJ · PNG · MP4
INTERACTIVE THREE.JS ENGINE

3D Character Animation Studio

Inspect character actions in real-time 3D space. Switch between high-fidelity 2.5D textured card mode and volumetric 3D voxel relief mesh generated from image pixels.

Select Character Action Preset:
Current animation frame thumbnail
Walk Cycle WebGL 2.0 Realtime
Frame: 1 / 8•Speed: 8 FPS•Mode: 2.5D Card
🎨 INPUT · 角色原画图画2D Reference
角色原画图画
⚡
Animation Synthesis8 FPS Kinematics
➔
🎬 OUTPUT · 生成的动图8 FPS Loop
生成的动图预览
🖼️ 预览区中央:角色图画 与 生成的 8 帧动图实时预览 · 可点击顶部切换 3D 视口
Timeline SequenceFrame 1 of 8
Speed8 FPS
3D Voxel Depth4x
TECHNICAL BLUEPRINT

The 8-Stage Animation Pipeline

How the character-animation-skill transforms a single character input into production-ready 2D and 3D game animation assets.

01

Character Reference

Single clean 2D full-body character silhouette with unobstructed limbs and plain background.

Deterministic Pipeline
02

Motion Specification

Chronological movement breakdown, locked camera view, and seamless loop constraints.

Deterministic Pipeline
03

Pluggable Video Provider

Image-to-video API abstraction (Custom Video Provider) isolated in providers/custom.py.

Deterministic Pipeline
04

Source Action MP4

Stable 4-second video clip capturing natural character kinematic motion without camera pans.

Deterministic Pipeline
05

Frame Extraction

FFmpeg sample extraction at game-ready framerate (6–12 FPS) to isolate key poses.

Deterministic Pipeline
06

Frame Alignment

Alpha-based bounding box detection and ground center-bottom anchor normalization.

Deterministic Pipeline
07

Sprite Sheet Strip

Single-strip horizontal spritesheet assembly with transparency and power-of-two spacing.

Deterministic Pipeline
08

Three.js 3D Runtime

Real-time WebGL flipbook & volumetric 3D voxel extrusion with lighting, shadow, and GLB export.

Deterministic Pipeline
PROMPT ENGINEERING

Motion Specification & AI Prompt Matrix

The character appearance is defined by the reference image. The motion prompt must solely enforce kinematic timing, fixed camera perspective, and seamless looping.

Select Action Type:
Prompt Recipe for Video Generator
The character begins in the reference pose, shifts weight forward, takes a clear step, transfers weight, brings the rear foot forward, and continues a natural walk cycle. Keep the full body visible. Fixed camera. Preserve exact proportions and colors. The final pose connects naturally back to the starting pose.
✓ Camera Locked✓ Full Body Visible✓ Identity Preserved✓ Loop Continuity Enforced
LOCAL AGENT WORKFLOW

Built-in Agent Skill: Claude & Codex CLI

Directly invoke the character-animation-skill in your local terminal or agent environment (Claude Code, Antigravity, OpenCode).

1. Quickstart & RequirementsPython 3.10+ · FFmpeg
# Clone the animation skill
git clone https://github.com/youxichuhai/character-animation-skill.git
cd character-animation-skill

# Install dependencies
pip install -r requirements.txt

# Configure your image-to-video API key
export VIDEO_API_KEY="your-api-key"
2. Generate & Slice SequenceAutomated Scripts
# 1. Generate 4s action video from reference image
python scripts/generate_video.py --image character.png --action "walk" --duration 4 --loop --output output/source.mp4

# 2. Extract key animation frames at 8 FPS
python scripts/extract_frames.py --video output/source.mp4 --output-dir output/raw_frames --fps 8

# 3. Align frames with alpha bounding box
python scripts/align_frames.py --input-dir output/raw_frames --output-dir output/frames

# 4. Compile into single spritesheet
python scripts/build_spritesheet.py --input-dir output/frames --output output/spritesheet.png
ZERO VENDOR LOCK-IN

Custom Pluggable Video Provider

The video model is infrastructure, not workflow. The skill communicates with video models through a unified abstraction in providers/custom.py. Supports Runway, Seedance, Kling, Veo, or your own local ComfyUI workflow without modifying core logic.

# Pluggable Provider Interface
generate(
    image_path: str,
    prompt: str,
    duration: int,
    output_path: str
) -> local_video_path
QUESTIONS & ANSWERS

Frequently Asked Questions

Everything you need to know about character animation, WebGL 3D meshes, and sprite sheet integration.

How does the "Image to Three.js" voxel animation mode work?

When you switch to 3D Voxel mode, our client-side WebGL engine samples the active frame's color and alpha pixels. It constructs an instanced 3D voxel grid where each non-transparent pixel is elevated into a physical 3D cube with proportional depth based on luminance. As the timeline ticks through frames, the voxel heights and colors update in real time with hardware-accelerated instancing.

What makes a good 2D character reference image?

For optimal results: use a single full-body 2D character standing in a neutral, unobstructed pose (A-pose or relaxed stance) visible from head to toe. A solid or transparent background ensures clean alpha extraction without unwanted background artifacts.

Can I export the 3D animated character into game engines?

Yes! The Spritesheet (PNG) can be directly imported into Unity, Unreal Engine 5 (Paper2D), Godot 4 (AnimatedSprite2D), or WebGL frameworks. Furthermore, the 3D Mesh (GLB) export allows you to bring the 3D volumetric model directly into Blender, Godot, or Three.js scenes.

Why is 8 FPS recommended for sprite sheet animations?

In classic 2D and 2.5D game animation (like pixel art and isometric RPGs), 8 frames per second (also known as animating on "threes" at 24 FPS) strikes the ideal balance between readable, punchy game kinematics and memory footprint. You can adjust the playback slider anywhere from 2 to 24 FPS in the studio.

Does this tool upload my images or video keys to a cloud server?

No. All Three.js rendering, canvas slicing, voxel mesh building, and exports execute 100% locally in your web browser. No image data is transmitted to any external backend server.