← 返回 Skills 市场
emergencescience

IPdesign-3Dprint

作者 emergencescience · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ 安全检测通过
58
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install ipdesign-3dprint
功能描述
Convert text or reference images into Pop Mart-style 3D-printable IP character figurines with automated image generation and Blender modeling exportable as STL.
使用说明 (SKILL.md)

IPdesign-3Dprint — IP Character to 3D Print Pipeline

Overview

Turn any text description or reference image into a 3D-printable IP character figurine. Designed for Pop Mart / Skullpanda-style collectible figures.

User Prompt → [Image Generation Layer] → 3-View References
                                                ↓
User Confirms? → Yes → [Blender Modeling Layer] → Solidify + Subdiv + Color
      ↕ No (adjust prompt)                             ↓
Manual Upload →                          [Export Layer] → STL / OBJ / 3MF

Three Work Modes

The skill auto-detects which image generation method is available:

Mode Requirement Cost
A — ComfyUI Local NVIDIA GPU ≥6GB VRAM (local) $0 (electricity only)
B — ComfyUI Cloud COMFY_CLOUD_API_KEY Pay-per-use (~$0.003-0.01/img)
C — API-Only GEMINI_API_KEY (or other) Imagen 4.0 via Gemini key (free tier available)

Default (no GPU, no ComfyUI Cloud): Uses Google Imagen 4.0 via GEMINI_API_KEY.

Prerequisites

Required

# Blender (any version ≥4.0)
apt-get install blender   # Linux
brew install blender      # macOS

# Verify
blender --version

For Image Generation (pick one)

# Mode A: ComfyUI Local — see comfyui skill
# Mode B: ComfyUI Cloud — export COMFY_CLOUD_API_KEY

# Mode C: API-Only (recommended for no-GPU)
export GEMINI_API_KEY="your-key-here"
# Or use any of: EVOLINK_API_KEY, OPENAI_API_KEY, BFL_API_KEY

Pipeline Stages

Stage 1: Image Generation (Three-View References)

Option A: From Prompt Generate three-view character concept images (front/side/back):

# Using Gemini/Imagen 4.0 (API-only mode)
curl -X POST "https://generativelanguage.googleapis.com/v1beta/models/imagen-4.0-generate-001:predict?key=$GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "instances": [{"prompt": "Skullpanda-style character, front view..."}],
    "parameters": {"sampleCount": 2, "aspectRatio": "1:1"}
  }'

Option B: Manual Upload User provides front/side/back view images directly.

Option C: User Confirmation Loop

  1. Generate → show images to user
  2. User says "OK" → proceed to Stage 2
  3. User says "adjust X" → modify prompt → regenerate
  4. User provides own reference images → skip generation

Stage 2: Blender Modeling

Based on the reference images, generate a Blender script that:

  1. Load references as background planes (front/side/top)
  2. Build base geometry:
    • Head: UV sphere → sculpt to Skullpanda proportions
    • Eye sockets: Boolean cutout (rounded triangular shape)
    • Eyes: Sclera + iris + pupil + highlight spheres
    • Cat ears: Spherical buttons (NOT pointed!)
    • Body: Short chunky cylinder (1:1 head:body ratio)
    • Arms/Legs: Short rounded cylinders
    • Tail: Curved thin tube
    • Base: Circular disc with raised rim
  3. Apply 3D printing modifiers:
    • Solidify (1.2mm wall thickness)
    • Subdivision Surface (Catmull-Clark, level 1-2)
  4. Color/Material:
    • Helmet: White (#F5F0EB), low roughness, slight subsurface
    • Eyeshadow: Dark charcoal (#19191E), matte
    • Eyes: Amber/brown iris with highlights
    • Bodysuit: Black (#1A1A1A), medium roughness
    • Base: Dark gray (#141414), matte
  5. Export:
    • STL for 3D printing (manifold, watertight)
    • .blend for further editing

Stage 3: 3D Print Preparation

# Solidify — wall thickness
solidify = obj.modifiers.new(name="Solidify", type='SOLIDIFY')
solidify.thickness = 0.12   # 1.2mm
solidify.offset = -1.0       # inward offset

# Subdivision — smooth surface
subsurf = obj.modifiers.new(name="SubSurf", type='SUBSURF')
subsurf.levels = 1
subsurf.subdivision_type = 'CATMULL_CLARK'

# Export
bpy.ops.export_mesh.stl(filepath="figure.stl", use_selection=True)

Configuration

Default Scale

1 Blender unit = 1 cm
Total figure height: ~10.5 cm (including base)

Key Proportions (Skullpanda standard)

Feature Ratio
Head:Total Height ~40%
Head:Body ~1:1
Eye Width:Head Width ~1:3
Ear Diameter:Head Width ~1:5
Body Width:Head Width ~0.7:1

Verifying with Skullpanda

The skill includes a complete Skullpanda build script at scripts/skullpanda_build.py.

blender --background --python scripts/skullpanda_build.py

Expected output:

  • skullpanda_base_mesh.stl (~1.6 MB, 16K verts) — 3D print ready
  • skullpanda_subdiv1.stl (~6.5 MB, 67K verts) — smooth version
  • skullpanda_figure.blend (~1.8 MB) — editable source

Color Palette Reference

Part Hex RGB Roughness Metallic
Helmet #F5F0EB (245,240,235) 0.35 0.0
Eyeshadow #19191E (25,25,30) 0.9 0.0
Iris #503C28 (80,60,40) 0.3 0.0
Bodysuit #1A1A1A (26,26,26) 0.6 0.05
Base #141414 (20,20,20) 0.8 0.0

Dependencies

Required (auto-installed by setup)

  • blender ≥ 4.0

Optional (for image generation)

Variable Provider Get Key
GEMINI_API_KEY Google AI https://aistudio.google.com
COMFY_CLOUD_API_KEY Comfy Cloud https://platform.comfy.org
EVOLINK_API_KEY EvoLink https://evolink.ai

Common Pitfalls

  1. Skullpanda ears are SPHERICAL, not pointed — this is the most common modeling mistake
  2. Boolean eye sockets — must be rounded triangular shape (point down)
  3. STL too large — use Decimate modifier (ratio 0.15) to reduce face count
  4. Memory limit on VPS — skip subdivision rendering; export base mesh STL instead
  5. Imagen 4.0 credits — Google AI Studio free tier has usage limits; check your quota
  6. Multi-view consistency — generate front view first, then describe for side/back views
安全使用建议
Install only if you are comfortable providing image-generation API keys and sending design prompts to the selected provider. Run the Blender script in a fresh/background Blender session, because it clears the active scene before creating output files in /tmp/skullpanda_output.
能力标签
requires-sensitive-credentials
能力评估
Purpose & Capability
The requested capabilities fit the stated purpose: image-reference generation, Blender procedural modeling, and STL/.blend export for a 3D-printable character figure.
Instruction Scope
The skill documents cloud/API modes, required API keys, and a user confirmation loop before modeling; it could be clearer that cloud image generation sends prompts to the chosen provider.
Install Mechanism
No hidden installer or package mutation is present; prerequisites are disclosed as Blender, curl, python3, and optional provider API keys.
Credentials
The Blender build script writes outputs under /tmp/skullpanda_output and clears the current Blender scene, which is normal for a procedural background build but should be run in a fresh/background Blender session.
Persistence & Privilege
No background worker, persistence mechanism, credential storage, profile/session access, or privilege escalation was found; API keys are expected to be supplied through environment variables.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install ipdesign-3dprint
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /ipdesign-3dprint 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
v1.0.0: Complete end-to-end IP character to 3D print pipeline. Three-mode image generation (ComfyUI local/cloud/API-only). Blender procedural modeling with Skullpanda design verified. Solidify+Subdiv+Color+STL export. See scripts/skullpanda_build.py for verified Skullpanda demo.
元数据
Slug ipdesign-3dprint
版本 1.0.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

IPdesign-3Dprint 是什么?

Convert text or reference images into Pop Mart-style 3D-printable IP character figurines with automated image generation and Blender modeling exportable as STL. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 58 次。

如何安装 IPdesign-3Dprint?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install ipdesign-3dprint」即可一键安装,无需额外配置。

IPdesign-3Dprint 是免费的吗?

是的,IPdesign-3Dprint 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

IPdesign-3Dprint 支持哪些平台?

IPdesign-3Dprint 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 IPdesign-3Dprint?

由 emergencescience(@emergencescience)开发并维护,当前版本 v1.0.0。

💬 留言讨论