From deemostech-rodin3d-skills
Generates 3D models from images or text prompts using the Hyper3D Rodin Gen-2.5 API with tier selection, multi-format export, and async task polling.
How this skill is triggered — by the user, by Claude, or both
Slash command
/deemostech-rodin3d-skills:rodin3d-skillThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill provides a comprehensive integration with the **Hyper3D Rodin Gen-2.5 API**, enabling developers to generate production-ready 3D models from images or text prompts. The skill handles API authentication, task submission, status polling, and result retrieval with enterprise-grade reliability.
This skill provides a comprehensive integration with the Hyper3D Rodin Gen-2.5 API, enabling developers to generate production-ready 3D models from images or text prompts. The skill handles API authentication, task submission, status polling, and result retrieval with enterprise-grade reliability.
Key Capabilities:
vibecoding (automatically used when no key is provided)pip install -r requirements.txt# Quick start with free test key (no API key required)
python scripts/generate_3d_model.py \
--image input.jpg \
--tier Gen-2.5-Medium \
--output ./output
# Generate from image with your API key
python scripts/generate_3d_model.py \
--image input.jpg \
--tier Gen-2.5-High \
--geometry-file-format glb \
--quality medium \
--output ./output \
--api-key $HYPER3D_API_KEY
# Generate from text
python scripts/generate_3d_model.py \
--prompt "A detailed 3D model of a vintage camera" \
--tier Gen-2.5-Medium \
--output ./output
| Endpoint | Method | Purpose |
|---|---|---|
/api/v2/rodin | POST | Submit generation task |
/api/v2/status | POST | Check task status |
/api/v2/download | POST | Retrieve download links |
/api/v2/rodin → Returns subscription_key and task_uuid/api/v2/status with subscription_key → Check job status/api/v2/download with task_uuid → Get result URLs (expire in 10 minutes)| Tier | Description | Credit Cost | Recommended Use Case |
|---|---|---|---|
Gen-2.5-Extreme-Low | Rapid generation for simple assets | 0.5 | Prototyping, quick iterations |
Gen-2.5-Low | Clean assets, small hardsurface props | 0.5 | Basic models, low-poly assets |
Gen-2.5-Medium | Balanced structure and detail | 0.5 | Default - general purpose |
Gen-2.5-High | Rich structural representation, smooth surfaces | 0.5 | Production-ready assets |
Gen-2.5-Extreme-High | High-frequency detail reproduction | 1.0 | Premium quality, final renders |
Gen-2 | Legacy tier | 0.5 | Backward compatibility |
Detail/Regular/Smooth/Sketch | Legacy tiers | 0.5 | Deprecated, use Gen-2.5 |
| Quality | Raw Mode | Quad Mode | Use Case |
|---|---|---|---|
high | 1M faces | 50k faces | Production, close-ups |
medium | 500k faces | 18k faces | Default - balanced |
low | 60k faces | 8k faces | Real-time applications |
extra-low | 20k faces | 4k faces | Mobile, VR/AR |
| Material | Description |
|---|---|
PBR | Physically Based Rendering (base color, metallic, normal, roughness maps) |
Shaded | Base color texture with baked lighting |
All | Both PBR and Shaded materials |
None | Geometry only, no materials |
| Parameter | Type | Description | Default |
|---|---|---|---|
hd_texture | bool | Enable 4K texture generation | false |
texture_delight | bool | Enhance texture quality and detail | false |
texture_mode | string | Advanced texture generation mode | None |
is_micro | bool | Optimize for micro-scale objects | false |
geometry_instruct_mode | string | Geometry generation guidance | faithful |
| Mode | Description | Recommended For |
|---|---|---|
Raw | Triangle mesh, maximum detail preservation | Gen-2.5 tiers |
Quad | Quadrilateral mesh, cleaner topology | Legacy tiers |
| Addon | Cost | Description |
|---|---|---|
HighPack | +1 credit | 4K texture resolution upgrade |
# Image input (required for Image-to-3D)
--image path/to/image1.jpg [path/to/image2.jpg ...]
# OR Text input (required for Text-to-3D)
--prompt "Your text description"
# Core settings
--tier Gen-2.5-Medium # Generation tier
--geometry-file-format glb # Output format: glb, usdz, fbx, obj, stl
--quality medium # Face count: high, medium, low, extra-low
--material PBR # Material type: PBR, Shaded, All
# Advanced geometry
--mesh-mode Raw # Raw or Quad
--quality-override 500000 # Custom polygon count
--bbox-condition 100 100 100 # Bounding box [Width, Height, Length]
--tapose # Generate T/A pose for humanoids
# Texture enhancements (Gen-2.5)
--hd-texture # Enable HD textures
--texture-delight # Enhance texture quality
--texture-mode <mode> # Advanced texture mode
# Object properties (Gen-2.5)
--is-micro # Micro-scale optimization
# Generation control
--seed 12345 # Random seed (0-65535)
--geometry-instruct-mode faithful # Geometry guidance mode
# Output options
--preview-render # Generate preview image
--addons HighPack # Additional features
--output ./output # Download directory
--api-key $HYPER3D_API_KEY # Authentication
# Polling configuration
--poll-interval 10 # Status check interval (seconds)
--max-retries 60 # Maximum polling attempts
python scripts/generate_3d_model.py \
--image product.jpg \
--tier Gen-2.5-High \
--geometry-file-format glb \
--quality high \
--material PBR \
--mesh-mode Raw \
--hd-texture \
--texture-delight \
--addons HighPack \
--output ./production
python scripts/generate_3d_model.py \
--prompt "A futuristic smartphone" \
--tier Gen-2.5-Extreme-Low \
--geometry-file-format glb \
--quality low \
--output ./prototypes
Fast generation mode is triggered by a specific combination of parameters optimized for speed:
python scripts/generate_3d_model.py \
--image product.jpg \
--tier Gen-2.5-Low \
--material Shaded \
--mesh-mode Raw \
--quality-override 20000 \
--texture-mode low \
--output ./quick-preview
Fast Mode Parameters:
| Parameter | Value | Description |
|---|---|---|
tier | Gen-2.5-Low | Use low tier for faster generation |
material | Shaded | Simplified material output |
mesh_mode | Raw | Triangle mesh for faster processing |
quality_override | 20000 | Reduced polygon count |
texture_mode | low | Low resolution textures |
Trigger Condition: Fast mode is automatically activated when all of the above parameters are set together. This combination provides the quickest generation time for rapid prototyping and preview purposes.
# Process multiple images sequentially
for img in ./input/*.jpg; do
python scripts/generate_3d_model.py \
--image "$img" \
--tier Gen-2.5-Medium \
--output ./output/$(basename "$img" .jpg)
done
from api_client import Hyper3DAPIClient
# Initialize client
client = Hyper3DAPIClient(api_key="your_api_key")
# Generate from image
task_uuid, result = client.generate_3d_model(
images=["input.jpg"],
tier="Gen-2.5-High",
geometry_file_format="glb",
quality="high",
material="PBR",
mesh_mode="Raw",
hd_texture=True,
texture_delight=True,
poll_interval=15,
max_retries=40
)
# Process results
print(f"Task completed: {task_uuid}")
for file_info in result.get("list", []):
print(f"File: {file_info['name']} - URL: {file_info['url']}")
from api_client import Hyper3DAPIClient
client = Hyper3DAPIClient(api_key="your_api_key")
# Custom generation with all parameters
task_uuid, result = client.generate_3d_model(
images=["front.jpg", "side.jpg", "top.jpg"],
prompt="A vintage pocket watch with intricate details",
tier="Gen-2.5-Extreme-High",
geometry_file_format="fbx",
quality="high",
material="All",
mesh_mode="Raw",
use_original_alpha=True,
seed=42,
TAPose=False,
bbox_condition=[100, 100, 50],
addons=["HighPack"],
preview_render=True,
hd_texture=True,
texture_delight=True,
is_micro=False,
geometry_instruct_mode="faithful"
)
# Submit task
submit_result = client.submit_generation_task(
images=["input.jpg"],
tier="Gen-2.5-Medium"
)
subscription_key = submit_result["jobs"]["subscription_key"]
task_uuid = submit_result["uuid"]
# Manual polling
import time
for _ in range(60):
status = client.check_task_status(subscription_key)
jobs = status.get("jobs", [])
if all(job["status"] == "Done" for job in jobs):
break
elif any(job["status"] == "Failed" for job in jobs):
raise Exception("Task failed")
time.sleep(10)
# Get download links
download_result = client.download_results(task_uuid)
| Error | Cause | Resolution |
|---|---|---|
Not authenticated | Invalid or missing API key | Verify HYPER3D_API_KEY is set correctly |
INSUFFICIENT_FUND | Insufficient credits | Add funds via Hyper3D dashboard |
Invalid tier | Unknown tier value | Use valid Gen-2.5 tier (see Tier Selection) |
Invalid image | Image format/size error | Use JPEG/PNG/WebP, max 16MB, 512x512-4096x4096 |
Timeout | Generation took too long | Increase --max-retries, check API status |
ImageUtils.validate_image() before submission# Enable verbose output
python scripts/generate_3d_model.py \
--image input.jpg \
--tier Gen-2.5-Medium \
--output ./output \
--api-key $HYPER3D_API_KEY 2>&1 | tee generation.log
| Scenario | Recommended Settings |
|---|---|
| Fast iteration | Gen-2.5-Extreme-Low, quality=extra-low |
| Preview renders | Gen-2.5-Low, quality=low |
| Production assets | Gen-2.5-High, quality=high, hd_texture |
| Archival quality | Gen-2.5-Extreme-High, quality=high, HighPack |
The skill uses API keys in the following priority order:
--api-key argument (highest priority)HYPER3D_API_KEYvibecoding (automatically used when no key is provided)A free test API key (vibecoding) is built-in for evaluation purposes:
export HYPER3D_API_KEY="your_production_key_here"
echo 'HYPER3D_API_KEY=your_production_key_here' >> ~/.bashrc
source ~/.bashrc
HYPER3D_API_KEY environment variable for production| Skill Version | API Version | Notes |
|---|---|---|
| 2.0.0 | Gen-2.5 | Full Gen-2.5 feature support |
| 1.0.0 | Gen-2 | Legacy support maintained |
--hd-texture)--texture-delight)--is-micro)--geometry-instruct-mode)Gen-2.5-MediumRawnpx claudepluginhub deemostech/rodin3d-skillsGenerate 3D models from text or images using each::sense AI. Outputs GLB, GLTF, OBJ, FBX, USDZ for games, products, architecture, and more. Includes PBR textures.
Generates custom 3D models from text or images using Meshy AI, auto-rigs and animates them for Three.js games. Use when needing custom GLB assets beyond free libraries.
Autonomously designs and models complex 3D objects in Blender using natural language. Covers procedural generation, parametric modeling, topology optimization, and script-based creation.